<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gs="http://gruposolides.com/" targetNamespace="http://gruposolides.com/" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="http://gruposolides.com/addenda32D-gs.xsd"/>
 <!-- Definición del tipo de dato restringido -->
    <xs:simpleType name="booleanTrueFalse">
        <xs:restriction base="xs:string">
            <xs:enumeration value="True"/>
            <xs:enumeration value="False"/>
        </xs:restriction>
    </xs:simpleType>    
<xs:element name="Addenda32D-gs">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Encabezado">
                    <xs:complexType>
                        <xs:sequence></xs:sequence>
                        <xs:attribute name="urlEnlace" type="xs:string" default="https://siat.sat.gob.mx/app/qr/faces/pages/mobile/validadorqr.jsf?D1=1&amp;D2=1&amp;D3="/>
                    </xs:complexType>
                </xs:element>
                <xs:element name="Datos">
                    <xs:complexType>
                        <xs:sequence></xs:sequence>
			<xs:attribute name="RFC_Emisor" type="xs:string" use="required"/>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="^[A-Z]{3,4}[0-9]{6}[A-Z0-9]{3}$"/>
					</xs:restriction>
				</xs:simpleType>
                        <xs:attribute name="Folio_32D" type="xs:string" use="required"/>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="^[A-Z0-9]{11}$"/>
					</xs:restriction>
				</xs:simpleType>
                        <xs:attribute name="Fecha32D" type="xs:string" use="required"/>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="^[0-9]{2}-[0-10-9]{2}-[0-9]{2}$"/>
					</xs:restriction>
				</xs:simpleType>
		     	<xs:attribute name="No_Contrato" type="xs:string" use="required"/>                        <xs:attribute name="No_DePedido" type="xs:string" use="required"/>
			<xs:attribute name="Folio_Autorizado" type="xs:string" use="required"/>
			<xs:attribute name="No_DeControl" use="optional">
				<xs:simpleType><xs:restriction base="xs:string">
						<xs:pattern value="^[0-1][0-9]{2}[0-1][0-9][0-9]{2}[2-9][0-9]{2}[0-9]{5}$"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<!-- Atributos de Validación No Deben Ser Seteados Por El Emisor -->
                        <xs:attribute name="Sentido32D" type="booleanTrueFalse"/>
			<xs:attribute name="RFC_Receptor_Correcto" type="booleanTrueFalse"/>
                        <xs:attribute name="CFDI_MdP_PPD" type="booleanTrueFalse"/>
                        <xs:attribute name="Regimen_Fiscal" type="booleanTrueFalse"/>
                        <xs:attribute name="Validez_CFDI_A20" type="booleanTrueFalse"/>
                        <xs:attribute name="Verificacion_SAT" type="booleanTrueFalse"/>
                        <xs:attribute name="Estatus_CFDI_SinCancelar" type="booleanTrueFalse"/>
                        <xs:attribute name="CFDI_Susceptible_aPago" type="booleanTrueFalse"/>
                        <xs:attribute name="CFDI_Pagado" type="booleanTrueFalse"/>
                    </xs:complexType>
                </xs:element>
		<!-- Nodo y Atributos Opcionales Cuando Estos Estan en el Comprobante. Nodo y Atributos Requeridos Cuando No Estan en el Comprobante (Necesariamente Setearlos) -->
		<xs:element name="SerieFolioCFDI">
		    <xs:complexType>
			<xs:sequence/>
			<xs:attribute name="RFC_Emisor" type="xs:string" use="optional"/>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="^[A-Z]{3,4}[0-9]{6}[A-Z0-9]{3}$"/>
					</xs:restriction>
				</xs:simpleType>
			<xs:attribute name="Serie" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="^[A-Z]{3,4}[RMOP]{2}[IEP][A-Z0-9]{2}$"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="Folio" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:integer">
						<xs:minInclusive value="100000"/>
						<xs:maxInclusive value="999999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		   </xs:complexType>
	      </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>