<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="QuittungEingangsverarbeitung" type="QuittungEingangsverarbeitungBQTyp"/>
  <xs:simpleType name="an..10">
    <xs:restriction base="xs:string">
      <xs:maxLength value="10"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..100">
    <xs:restriction base="xs:string">
      <xs:maxLength value="100"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..35">
    <xs:restriction base="xs:string">
      <xs:maxLength value="35"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..500">
    <xs:restriction base="xs:string">
      <xs:maxLength value="500"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="DatenaustauschAllgemeinTyp">
    <xs:sequence>
      <xs:element name="Transaktion" type="TransaktionAllgemeinTyp"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EinzelQuittungTyp">
    <xs:sequence>
      <xs:element name="Transaktionsreferenz" type="an..35"/>
      <xs:element name="Quittungsobjekt" type="QuittungsObjektBQTyp"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="n3">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{3}"/>
      <xs:totalDigits value="3"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n6">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{6}"/>
      <xs:totalDigits value="6"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="QuittungEingangsverarbeitungBQTyp">
    <xs:complexContent>
      <xs:extension base="DatenaustauschAllgemeinTyp">
        <xs:sequence>
          <xs:element name="EinzelQuittung" type="EinzelQuittungTyp" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="QuittungFachBQTyp">
    <xs:sequence>
      <xs:element name="ObjektWdhFach" type="n6" minOccurs="0"/>
      <xs:element name="BezugsObjektFach" type="an..35" minOccurs="0"/>
      <xs:element name="GesamtErgebnis" type="an..10" minOccurs="0"/>
      <xs:element name="ErgebnisGrund" type="an..100" minOccurs="0"/>
      <xs:element name="AktionErfolg" type="an..10" minOccurs="0" maxOccurs="10"/>
      <xs:element name="AktionNdf" type="an..10" minOccurs="0" maxOccurs="10"/>
      <xs:element name="FehlerAnwendung" type="an..100" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="QuittungsObjektBQTyp">
    <xs:sequence>
      <xs:element name="QuittungTech" type="QuittungTechBQTyp" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="AbbruchGrund" type="an..100" minOccurs="0"/>
      <xs:element name="FehlerValidierung" type="an..500" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="QuittungFach" type="QuittungFachBQTyp" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="QuittungTechBQTyp">
    <xs:sequence>
      <xs:element name="ObjektWdhTech" type="n6" minOccurs="0"/>
      <xs:element name="BezugsObjekt" type="an..35" minOccurs="0"/>
      <xs:element name="ErgebnisTech" type="an..10" minOccurs="0"/>
      <xs:element name="FehlerTech" type="an..100" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="Korrekturen" type="an..100" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="TransaktionAllgemeinTyp">
    <xs:sequence>
      <xs:element name="IOPartner" type="an..10"/>
      <xs:element name="IODivision1" type="an..10" minOccurs="0"/>
      <xs:element name="IODivision2" type="an..10" minOccurs="0"/>
      <xs:element name="IODivision3" type="an..10" minOccurs="0"/>
      <xs:element name="IOReferenz" type="an..35"/>
      <xs:element name="IODatumZeit" type="xs:dateTime"/>
      <xs:element name="Version" type="n3" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>
