<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="BestaetigungAusfuhr" type="BestaetigungAusfuhrENTyp"/>
  <xs:simpleType name="an..1">
    <xs:restriction base="xs:string">
      <xs:maxLength value="1"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..10">
    <xs:restriction base="xs:string">
      <xs:maxLength value="10"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..120">
    <xs:restriction base="xs:string">
      <xs:maxLength value="120"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..140">
    <xs:restriction base="xs:string">
      <xs:maxLength value="140"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..17">
    <xs:restriction base="xs:string">
      <xs:maxLength value="17"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..18">
    <xs:restriction base="xs:string">
      <xs:maxLength value="18"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..2">
    <xs:restriction base="xs:string">
      <xs:maxLength value="2"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..22">
    <xs:restriction base="xs:string">
      <xs:maxLength value="22"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..280">
    <xs:restriction base="xs:string">
      <xs:maxLength value="280"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..3">
    <xs:restriction base="xs:string">
      <xs:maxLength value="3"/>
    </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..4">
    <xs:restriction base="xs:string">
      <xs:maxLength value="4"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..42">
    <xs:restriction base="xs:string">
      <xs:maxLength value="42"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..70">
    <xs:restriction base="xs:string">
      <xs:maxLength value="70"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..8">
    <xs:restriction base="xs:string">
      <xs:maxLength value="8"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..80">
    <xs:restriction base="xs:string">
      <xs:maxLength value="80"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..9">
    <xs:restriction base="xs:string">
      <xs:maxLength value="9"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="AnmelderENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="AusfuehrerENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="Identifikationsart" type="an..1" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="BestaetigungAusfuhrENTyp">
    <xs:complexContent>
      <xs:extension base="DatenaustauschExportTyp">
        <xs:sequence>
          <xs:element name="EinzelBestaetigung" type="EinzelBestaetigungAusfuhrTyp" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DatenaustauschExportTyp">
    <xs:sequence>
      <xs:element name="Transaktion" type="TransaktionExportTyp"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EinzelBestaetigungAusfuhrTyp">
    <xs:sequence>
      <xs:element name="ObjektIdentifizierung" type="ObjektIdentifizierungENTyp"/>
      <xs:element name="KopfDaten" type="KopfDatenBestaetigungAusfuhrTyp" minOccurs="0"/>
      <xs:element name="WarenPosition" type="PositionBestaetigungAusfuhrTyp" minOccurs="0" maxOccurs="999"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EmpfaengerENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="Identifikationsart" type="an..1" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EmpfaengerPositionENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="Identifikationsart" type="an..1" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="KopfDatenBestaetigungAusfuhrTyp">
    <xs:sequence>
      <xs:element name="AnmeldeArtAusfuhrCode" type="an..2" minOccurs="0"/>
      <xs:element name="AnmeldeArtVerfahrenCode" type="an..2" minOccurs="0"/>
      <xs:element name="AnmeldeArtUeberfuehrungCode" type="an..1" minOccurs="0"/>
      <xs:element name="MovementReferenceNumber" type="an..18" minOccurs="0"/>
      <xs:element name="BestimmungslandCode" type="an..2" minOccurs="0"/>
      <xs:element name="AusfuhrlandCode" type="an..2" minOccurs="0"/>
      <xs:element name="AusgangDatumZeit" type="xs:dateTime" minOccurs="0"/>
      <xs:element name="UeberlassungDatumZeit" type="xs:dateTime" minOccurs="0"/>
      <xs:element name="AlternativerNachweis" type="an..1" minOccurs="0"/>
      <xs:element name="MinderMengeIndikator" type="an..1" minOccurs="0"/>
      <xs:element name="BeteiligtenKonstellation" type="an..4" minOccurs="0"/>
      <xs:element name="GesamtRohMasse" type="n14.3" minOccurs="0"/>
      <xs:element name="RegistrierNummerFremdSystem" type="an..70" minOccurs="0"/>
      <xs:element name="KennnummerSendung" type="an..70" minOccurs="0"/>
      <xs:element name="AnzahlPackStuecke" type="n7" minOccurs="0"/>
      <xs:element name="AnzahlPositionen" type="n3" minOccurs="0"/>
      <xs:element name="Wasserzeichen" type="an..2" minOccurs="0"/>
      <xs:element name="AusfuhrZollstelleID" type="an..8" minOccurs="0"/>
      <xs:element name="AusgangZollstelleID" type="an..8" minOccurs="0"/>
      <xs:element name="GeschaeftArtCode" type="an..2" minOccurs="0"/>
      <xs:element name="Rechnungspreis" type="n17.2" minOccurs="0"/>
      <xs:element name="Rechnungswaehrung" type="an..3" minOccurs="0"/>
      <xs:element name="VerfahrensinhaberPV" type="VerfahrensinhaberPVENTyp" minOccurs="0"/>
      <xs:element name="Ausfuehrer" type="AusfuehrerENTyp" minOccurs="0"/>
      <xs:element name="Empfaenger" type="EmpfaengerENTyp" minOccurs="0"/>
      <xs:element name="Anmelder" type="AnmelderENTyp" minOccurs="0"/>
      <xs:element name="VertreterAnmelder" type="VertreterAnmelderENTyp" minOccurs="0"/>
      <xs:element name="SubUnternehmer" type="SubUnternehmerENTyp" minOccurs="0"/>
      <xs:element name="Lieferbedingung" type="LieferbedingungENTyp" minOccurs="0"/>
      <xs:element name="DateinameAusgangsvermerk" type="an..80" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="LieferbedingungENTyp">
    <xs:sequence>
      <xs:element name="IncotermCode" type="an..3" minOccurs="0"/>
      <xs:element name="IncotermText" type="an..140" minOccurs="0"/>
      <xs:element name="IncotermOrt" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="n..4">
    <xs:restriction base="xs:string">
      <xs:maxLength value="100"/>
      <xs:pattern value="( *)(0*)\d{0,4}([.,](0*))?( *)"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n14.3">
    <xs:restriction base="xs:decimal">
      <xs:pattern value="\d{11}\.\d{3}"/>
      <xs:maxInclusive value="99999999999.999"/>
      <xs:minInclusive value="0"/>
      <xs:totalDigits value="14"/>
      <xs:fractionDigits value="3"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n17.2">
    <xs:restriction base="xs:decimal">
      <xs:pattern value="\d{15}\.\d{2}"/>
      <xs:maxInclusive value="999999999999999.99"/>
      <xs:minInclusive value="0"/>
      <xs:totalDigits value="17"/>
      <xs:fractionDigits value="2"/>
    </xs:restriction>
  </xs:simpleType>
  <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="n5">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{5}"/>
      <xs:totalDigits value="5"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n7">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{7}"/>
      <xs:totalDigits value="7"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ObjektIdentifizierungENTyp">
    <xs:sequence>
      <xs:element name="ObjektName" type="an..22"/>
      <xs:element name="EDIFACTNachrichtenNr" type="an..35"/>
      <xs:element name="ZeitpunktEingang" type="xs:dateTime"/>
      <xs:element name="ShipmentReferenz" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PackstueckENTyp">
    <xs:sequence>
      <xs:element name="Anzahl" type="n5" minOccurs="0"/>
      <xs:element name="VerpackungsartCode" type="an..3" minOccurs="0"/>
      <xs:element name="Kennzeichnung" type="an..42" minOccurs="0"/>
      <xs:element name="PositionHauptpack" type="n3" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PositionBestaetigungAusfuhrTyp">
    <xs:sequence>
      <xs:element name="Positionsnummer" type="n3" minOccurs="0"/>
      <xs:element name="WarenNummerKN8" type="an..8" minOccurs="0"/>
      <xs:element name="WarenNummerTARIC" type="an..2" minOccurs="0"/>
      <xs:element name="WarenNummerZusatz1" type="an..4" minOccurs="0"/>
      <xs:element name="WarenNummerZusatz2" type="an..4" minOccurs="0"/>
      <xs:element name="WarenNummerNational" type="an..4" minOccurs="0"/>
      <xs:element name="WarenBezeichnung" type="an..280" minOccurs="0"/>
      <xs:element name="RegistrierNummerFremdSystem" type="an..70" minOccurs="0"/>
      <xs:element name="KennnummerSendung" type="an..70" minOccurs="0"/>
      <xs:element name="Eigenmasse" type="n14.3" minOccurs="0"/>
      <xs:element name="Rohmasse" type="n14.3" minOccurs="0"/>
      <xs:element name="Wasserzeichen" type="an..1" minOccurs="0"/>
      <xs:element name="Verfahren" type="VerfahrenENTyp" minOccurs="0"/>
      <xs:element name="AusfuhrerstattungVerfahrensCode" type="an..3" minOccurs="0"/>
      <xs:element name="Packstueck" type="PackstueckENTyp" maxOccurs="99"/>
      <xs:element name="Empfaenger" type="EmpfaengerPositionENTyp" minOccurs="0"/>
      <xs:element name="IncotermCode" type="an..3" minOccurs="0"/>
      <xs:element name="IncotermText" type="an..140" minOccurs="0"/>
      <xs:element name="IncotermOrt" type="an..35" minOccurs="0"/>
      <xs:element name="GeschaeftArtCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SubUnternehmerENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="TransaktionExportTyp">
    <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:complexType name="VerfahrenENTyp">
    <xs:sequence>
      <xs:element name="VerfahrenAngemeldetCode" type="an..2" minOccurs="0"/>
      <xs:element name="VerfahrenVorangegangenCode" type="an..2" minOccurs="0"/>
      <xs:element name="VerfahrenNationalCode" type="an..3" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="VerfahrensinhaberPVENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="VertreterAnmelderENTyp">
    <xs:sequence>
      <xs:element name="TeilnehmerEORI" type="an..17" minOccurs="0"/>
      <xs:element name="TeilnehmerNLNR" type="n..4" minOccurs="0"/>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="Strasse" type="an..70" minOccurs="0"/>
      <xs:element name="Ort" type="an..35" minOccurs="0"/>
      <xs:element name="PLZ" type="an..9" minOccurs="0"/>
      <xs:element name="LandCode" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>
