<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="IMPOSTtax" type="IMPOSTtaxType">
    <xs:annotation>
      <xs:documentation>Version 002 - Release 001</xs:documentation>
    </xs:annotation>
  </xs:element>
  <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..100">
    <xs:restriction base="xs:string">
      <xs:maxLength value="100"/>
    </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..17">
    <xs:restriction base="xs:string">
      <xs:maxLength value="17"/>
    </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..20">
    <xs:restriction base="xs:string">
      <xs:maxLength value="20"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..21">
    <xs:restriction base="xs:string">
      <xs:maxLength value="21"/>
    </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..256">
    <xs:restriction base="xs:string">
      <xs:maxLength value="256"/>
    </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..30">
    <xs:restriction base="xs:string">
      <xs:maxLength value="30"/>
    </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..4000">
    <xs:restriction base="xs:string">
      <xs:maxLength value="4000"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..6">
    <xs:restriction base="xs:string">
      <xs:maxLength value="6"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..70">
    <xs:restriction base="xs:string">
      <xs:maxLength value="70"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ApplicationInternalDataAdditionalDetailsDataType">
    <xs:sequence>
      <xs:element name="Key" type="an..35" minOccurs="0"/>
      <xs:element name="Value" type="an..100" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ApplicationInternalDataAdditionalDetailsType">
    <xs:sequence>
      <xs:element name="Data" type="ApplicationInternalDataAdditionalDetailsDataType" minOccurs="0" maxOccurs="999"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ApplicationInternalDataType">
    <xs:sequence>
      <xs:element name="AdditionalDetails" type="ApplicationInternalDataAdditionalDetailsType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxCustomsDutiesHeaderType">
    <xs:sequence>
      <xs:element name="DefermentApprovalPaymentRequest" type="an..1" minOccurs="0"/>
      <xs:element name="SmallAmountsFlag" type="an..1" minOccurs="0"/>
      <xs:element name="CustomsDutyAmount" type="n11.2" minOccurs="0"/>
      <xs:element name="PaymentMethod" type="an..1" minOccurs="0"/>
      <xs:element name="MaturityDate" type="xs:date" minOccurs="0"/>
      <xs:element name="AccountPrefix" type="an..2" minOccurs="0"/>
      <xs:element name="AccountNumber" type="an..6" minOccurs="0"/>
      <xs:element name="DutyDefermentApplicantEORI" type="an..17" minOccurs="0"/>
      <xs:element name="DutyDefermentApplicantName" type="an..120" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxCustomsDutiesItemType">
    <xs:sequence>
      <xs:element name="PayableAmountByType" type="n11.2" minOccurs="0"/>
      <xs:element name="CustomsDutyRate" type="n12.5" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxCustomsTaxAssessmentHeaderType">
    <xs:sequence>
      <xs:element name="Result" type="an..4000" minOccurs="0"/>
      <xs:element name="TransportChargesCurrencyRateApplied" type="n18.9" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxCustomsTaxAssessmentItemType">
    <xs:sequence>
      <xs:element name="TransportChargesCurrencyRateApplied" type="n18.9" minOccurs="0"/>
      <xs:element name="ValueCurrencyRateApplied" type="n18.9" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxDeclarantType">
    <xs:sequence>
      <xs:element name="TIN" type="an..17" minOccurs="0"/>
      <xs:element name="SubsidiaryNumber" type="n4" minOccurs="0"/>
      <xs:element name="Name" type="an..70" minOccurs="0"/>
      <xs:element name="AddressLine" type="an..70" minOccurs="0"/>
      <xs:element name="Postcode" type="an..17" minOccurs="0"/>
      <xs:element name="City" type="an..35" minOccurs="0"/>
      <xs:element name="District" type="an..35" minOccurs="0"/>
      <xs:element name="Country" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxDeviativeFixingHeaderType">
    <xs:sequence>
      <xs:element name="FieldName" type="an..3" minOccurs="0"/>
      <xs:element name="Qualifier" type="an..3" minOccurs="0"/>
      <xs:element name="Content" type="an..4" minOccurs="0"/>
      <xs:element name="Type" type="an..1" minOccurs="0"/>
      <xs:element name="DeviationSetFrom" type="an..30" minOccurs="0"/>
      <xs:element name="DeviationSetTo" type="an..30" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxDeviativeFixingItemType">
    <xs:sequence>
      <xs:element name="FieldName" type="an..3" minOccurs="0"/>
      <xs:element name="Qualifier" type="an..3" minOccurs="0"/>
      <xs:element name="Content" type="an..4" minOccurs="0"/>
      <xs:element name="Type" type="an..1" minOccurs="0"/>
      <xs:element name="DeviationSetFrom" type="an..30" minOccurs="0"/>
      <xs:element name="DeviationSetTo" type="an..30" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxGoodsItemType">
    <xs:sequence>
      <xs:element name="SequenceNumber" type="n5" minOccurs="0"/>
      <xs:element name="CustomsTaxAssessmentItem" type="IMPOSTtaxCustomsTaxAssessmentItemType" minOccurs="0"/>
      <xs:element name="TaxValue" type="n11.2" minOccurs="0"/>
      <xs:element name="CustomsDutiesItem" type="IMPOSTtaxCustomsDutiesItemType" minOccurs="0"/>
      <xs:element name="DeviativeFixingItem" type="IMPOSTtaxDeviativeFixingItemType" minOccurs="0" maxOccurs="5"/>
      <xs:element name="ApplicationInternalData" type="ApplicationInternalDataType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxHeadCustomsOfficeType">
    <xs:sequence>
      <xs:element name="Name" type="an..120" minOccurs="0"/>
      <xs:element name="MailAddress" type="an..256" minOccurs="0"/>
      <xs:element name="DeMailAddress" type="an..256" minOccurs="0"/>
      <xs:element name="AddressLine" type="an..70" minOccurs="0"/>
      <xs:element name="AddressPostcode" type="an..17" minOccurs="0"/>
      <xs:element name="AddressCity" type="an..35" minOccurs="0"/>
      <xs:element name="AddressDistrict" type="an..35" minOccurs="0"/>
      <xs:element name="PostOfficeBoxNumber" type="an..20" minOccurs="0"/>
      <xs:element name="PostOfficeBoxPostcode" type="an..17" minOccurs="0"/>
      <xs:element name="PostOfficeBoxCity" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxHeaderType">
    <xs:sequence>
      <xs:element name="RegistrationNumber" type="an..21" minOccurs="0"/>
      <xs:element name="RegistrationDate" type="xs:date" minOccurs="0"/>
      <xs:element name="AcceptanceDate" type="xs:date" minOccurs="0"/>
      <xs:element name="IssuingDate" type="xs:date" minOccurs="0"/>
      <xs:element name="CommercialReferenceNumberHeader" type="an..35" minOccurs="0"/>
      <xs:element name="AcceptanceFlag" type="an..1" minOccurs="0"/>
      <xs:element name="TaxAssessmentCreationDate" type="xs:date" minOccurs="0"/>
      <xs:element name="AccountingInputDate" type="xs:date" minOccurs="0"/>
      <xs:element name="InputTaxDeductionFlag" type="an..1" minOccurs="0"/>
      <xs:element name="LegalRemedyFlag" type="an..1" minOccurs="0"/>
      <xs:element name="RepresentativeRelationshipFlag" type="an..1" minOccurs="0"/>
      <xs:element name="Importer" type="IMPOSTtaxImporterType" minOccurs="0"/>
      <xs:element name="Declarant" type="IMPOSTtaxDeclarantType" minOccurs="0"/>
      <xs:element name="Representative" type="IMPOSTtaxRepresentativeType" minOccurs="0"/>
      <xs:element name="IssuingCustomsOffice" type="IMPOSTtaxIssuingCustomsOfficeType" minOccurs="0"/>
      <xs:element name="HeadCustomsOffice" type="IMPOSTtaxHeadCustomsOfficeType" minOccurs="0"/>
      <xs:element name="OfficialInChargeName" type="an..30" minOccurs="0"/>
      <xs:element name="CustomsDutiesHeader" type="IMPOSTtaxCustomsDutiesHeaderType" minOccurs="0"/>
      <xs:element name="CustomsTaxAssessmentHeader" type="IMPOSTtaxCustomsTaxAssessmentHeaderType" minOccurs="0"/>
      <xs:element name="DeviativeFixingHeader" type="IMPOSTtaxDeviativeFixingHeaderType" minOccurs="0" maxOccurs="5"/>
      <xs:element name="ApplicationInternalData" type="ApplicationInternalDataType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxImporterType">
    <xs:sequence>
      <xs:element name="TIN" type="an..17" minOccurs="0"/>
      <xs:element name="SubsidiaryNumber" type="n4" minOccurs="0"/>
      <xs:element name="Name" type="an..70" minOccurs="0"/>
      <xs:element name="AddressLine" type="an..70" minOccurs="0"/>
      <xs:element name="Postcode" type="an..17" minOccurs="0"/>
      <xs:element name="City" type="an..35" minOccurs="0"/>
      <xs:element name="District" type="an..35" minOccurs="0"/>
      <xs:element name="Country" type="an..2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxIssuingCustomsOfficeType">
    <xs:sequence>
      <xs:element name="OfficeNumber" type="an..4" minOccurs="0"/>
      <xs:element name="OfficeName" type="an..120" minOccurs="0"/>
      <xs:element name="PhoneNumber" type="an..30" minOccurs="0"/>
      <xs:element name="AddressLine" type="an..70" minOccurs="0"/>
      <xs:element name="Postcode" type="an..17" minOccurs="0"/>
      <xs:element name="City" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxObjektIdentifizierungType">
    <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="IMPOSTtaxRepresentativeType">
    <xs:sequence>
      <xs:element name="TIN" type="an..17" minOccurs="0"/>
      <xs:element name="SubsidiaryNumber" type="n4" minOccurs="0"/>
      <xs:element name="Name" type="an..70" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxResponseDataType">
    <xs:sequence>
      <xs:element name="ObjektIdentifizierung" type="IMPOSTtaxObjektIdentifizierungType" minOccurs="0"/>
      <xs:element name="Header" type="IMPOSTtaxHeaderType" minOccurs="0"/>
      <xs:element name="GoodsItem" type="IMPOSTtaxGoodsItemType" minOccurs="0" maxOccurs="99999"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="IMPOSTtaxTransactionType">
    <xs:sequence>
      <xs:element name="IOPartner" type="an..100"/>
      <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="IMPOSTtaxType">
    <xs:sequence>
      <xs:element name="Transaktion" type="IMPOSTtaxTransactionType" minOccurs="0"/>
      <xs:element name="ResponseData" type="IMPOSTtaxResponseDataType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="n11.2">
    <xs:restriction base="xs:decimal">
      <xs:pattern value="\d{9}\.\d{2}"/>
      <xs:maxInclusive value="999999999.99"/>
      <xs:minInclusive value="0"/>
      <xs:totalDigits value="11"/>
      <xs:fractionDigits value="2"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n12.5">
    <xs:restriction base="xs:decimal">
      <xs:pattern value="\d{7}\.\d{5}"/>
      <xs:maxInclusive value="9999999.99999"/>
      <xs:minInclusive value="0"/>
      <xs:totalDigits value="12"/>
      <xs:fractionDigits value="5"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n18.9">
    <xs:restriction base="xs:decimal">
      <xs:pattern value="\d{9}\.\d{9}"/>
      <xs:maxInclusive value="999999999.999999999"/>
      <xs:minInclusive value="0"/>
      <xs:totalDigits value="18"/>
      <xs:fractionDigits value="9"/>
    </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="n4">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{4}"/>
      <xs:totalDigits value="4"/>
    </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:schema>
