<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://intermediacion.redsara.es/scsp/esquemas/datosespecificos" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://intermediacion.redsara.es/scsp/esquemas/datosespecificos" elementFormDefault="qualified">
	<xs:element name="DatosEspecificos" type="DatosEspecificos"/>
	<xs:complexType name="DatosEspecificos">
		<xs:choice>
			<xs:element ref="Consulta">
				<xs:annotation>
					<xs:documentation>Solo en el mensaje PETICION</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="Retorno">
				<xs:annotation>
					<xs:documentation>Solo en el mensaje RESPUESTA</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:choice>
		<xs:attribute name="Id" type="xs:string" use="optional"/>
	</xs:complexType>
	<xs:element name="Consulta">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="TituloFamiliaNumerosa"/>
				<xs:element ref="DatosAdicionalesTitular" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Retorno">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="Estado"/>
				<xs:element ref="TituloFamiliaNumerosaRetorno" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Obligatorio si Estado no es un ERROR</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element ref="ListaBeneficiariosRetorno" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:simpleType name="Fecha">
		<xs:annotation>
			<xs:documentation>Formato: DD/MM/AAAA</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:pattern value="((((0[1-9]|1[0-9]|2[0-8])/(0[1-9]|1[012]))|((29|30|31)/(0[13578]|1[02]))|((29|30)/(0[469]|11)))/(19|[2-9][0-9])\d\d)|(29/02/(19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:element name="TipoDocumentacion">
		<xs:annotation>
			<xs:documentation>Valores posibles: NIF, DNI o NIE</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="NIF"/>
				<xs:enumeration value="DNI"/>
				<xs:enumeration value="Pasaporte"/>
				<xs:enumeration value="NIE"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="CodigoError" type="xs:string"/>
	<xs:element name="DescripcionError" type="xs:string"/>
	<xs:element name="TituloVigente">
		<xs:annotation>
			<xs:documentation>Valores posibles: S o N</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="S"/>
				<xs:enumeration value="N"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="NumeroTitulo">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:minLength value="1"/>
				<xs:maxLength value="30"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="FechaConsulta" type="Fecha">
		<xs:annotation>
			<xs:documentation>Formato: DD/MM/AAAA</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="FechaExpedicion" type="Fecha">
		<xs:annotation>
			<xs:documentation>Formato: DD/MM/AAAA</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="FechaCaducidad" type="Fecha">
		<xs:annotation>
			<xs:documentation>Formato: DD/MM/AAAA</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="FechaNacimiento" type="Fecha">
		<xs:annotation>
			<xs:documentation>Formato: DD/MM/AAAA</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="Documentacion">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="14"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="CodigoComunidadAutonoma">
		<xs:annotation>
			<xs:documentation>Utilizar los 2 dígitos del código INE.		
· 01 - ANDALUCÍA
· 02 - ARAGÓN
· 03 - PRINCIPADO DE ASTURIAS
· 04 - ISLAS BALEARES
· 05 - CANARIAS
· 06 - CANTABRIA
· 07 - CASTILLA y LEÓN
· 08 - CASTILLA-LA MANCHA
· 09 - CATALUÑA
· 10 - COMUNIDAD VALENCIANA
· 11 - EXTREMADURA
· 12 - GALICIA
· 13 - MADRID
· 14 - REGIÓN DE MURCIA
· 15 - NAVARRA
· 16 - PAÍS VASCO
· 17 - LA RIOJA
· 18 - CIUDAD DE CEUTA
· 19 - CIUDAD DE MELILLA			
			</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="01"/>
				<xs:enumeration value="02"/>
				<xs:enumeration value="03"/>
				<xs:enumeration value="04"/>
				<xs:enumeration value="05"/>
				<xs:enumeration value="06"/>
				<xs:enumeration value="07"/>
				<xs:enumeration value="08"/>
				<xs:enumeration value="09"/>
				<xs:enumeration value="10"/>
				<xs:enumeration value="11"/>
				<xs:enumeration value="12"/>
				<xs:enumeration value="13"/>
				<xs:enumeration value="14"/>
				<xs:enumeration value="15"/>
				<xs:enumeration value="16"/>
				<xs:enumeration value="17"/>
				<xs:enumeration value="18"/>
				<xs:enumeration value="19"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Categoria">
		<xs:annotation>
			<xs:documentation>Valores posibles: G (GENERAL) o E (ESPECIAL). Para tiulos anteriores a 2003 sin equivalencia: P(Primera), S(Segunda) o H (De honor)</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="G"/>
				<xs:enumeration value="E"/>
				<xs:enumeration value="P"/>
				<xs:enumeration value="S"/>
				<xs:enumeration value="H"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="DatosAdicionalesTitular" type="DatosAdicionalesTitular"/>
	<xs:complexType name="DatosAdicionalesTitular">
		<xs:sequence>
			<xs:element ref="FechaNacimiento"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="BeneficiarioRetorno">
		<xs:sequence>
			<xs:element ref="TipoDocumentacion" minOccurs="0"/>
			<xs:element ref="Documentacion" minOccurs="0"/>
			<xs:element ref="FechaNacimiento" minOccurs="0"/>
			<xs:element ref="Nombre" minOccurs="0"/>
			<xs:element ref="Apellido1" minOccurs="0"/>
			<xs:element ref="Apellido2" minOccurs="0"/>
			<xs:element ref="Titular" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="TituloFamiliaNumerosa">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="CodigoComunidadAutonoma"/>
				<xs:element ref="NumeroTitulo" minOccurs="0"/>
				<xs:element ref="FechaConsulta" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="TituloFamiliaNumerosaRetorno">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="CodigoComunidadAutonoma"/>
				<xs:element ref="NumeroTitulo"/>
				<xs:element ref="Categoria"/>
				<xs:element ref="TituloVigente" minOccurs="0"/>
				<xs:element ref="FechaExpedicion" minOccurs="0"/>
				<xs:element ref="FechaCaducidad" minOccurs="0"/>
				<xs:element ref="NumeroHijos"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="ListaBeneficiariosRetorno">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="BeneficiarioRetorno" type="BeneficiarioRetorno" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="NumeroHijos">
		<xs:simpleType>
			<xs:restriction base="xs:integer">
				<xs:minInclusive value="1"/>
				<xs:maxInclusive value="30"/>
				<xs:pattern value="\d{1,2}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Nombre">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="40"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Apellido1">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="40"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Apellido2">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="40"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Titular">
		<xs:annotation>
			<xs:documentation>Valores posibles: S o N</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="S"/>
				<xs:enumeration value="N"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="Estado">
		<xs:complexType>
			<xs:all>
				<xs:element ref="CodigoEstado"/>
				<xs:element ref="CodigoEstadoSecundario" minOccurs="0"/>
				<xs:element ref="LiteralError"/>
			</xs:all>
		</xs:complexType>
	</xs:element>
	<xs:element name="CodigoEstado">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="4"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="CodigoEstadoSecundario">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="16"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="LiteralError">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="255"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
</xs:schema>
