<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="PassarNCTSIncidents" type="PassarNCTSIncidentsType">
    <xs:annotation>
      <xs:documentation>Version 002 - Release 002</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..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..20">
    <xs:restriction base="xs:string">
      <xs:maxLength value="20"/>
    </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..35">
    <xs:restriction base="xs:string">
      <xs:maxLength value="35"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..36">
    <xs:restriction base="xs:string">
      <xs:maxLength value="36"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="an..512">
    <xs:restriction base="xs:string">
      <xs:maxLength value="512"/>
    </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: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:simpleType name="n1">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{1}"/>
      <xs:totalDigits value="1"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="n2">
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:pattern value="\d{2}"/>
      <xs:totalDigits 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="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:complexType name="PassarNCTSIncidentsAddressType">
    <xs:sequence>
      <xs:element name="City" type="an..35" minOccurs="0"/>
      <xs:element name="Postcode" type="an..17" minOccurs="0"/>
      <xs:element name="StreetAndNumber" type="an..70" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsEndorsementType">
    <xs:sequence>
      <xs:element name="Authority" type="an..35" minOccurs="0"/>
      <xs:element name="Country" type="an..2" minOccurs="0"/>
      <xs:element name="Date" type="xs:date" minOccurs="0"/>
      <xs:element name="Place" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsGNSSType">
    <xs:sequence>
      <xs:element name="Latitude" type="an..17" minOccurs="0"/>
      <xs:element name="Longitude" type="an..17" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsIncidentType">
    <xs:sequence>
      <xs:element name="Text" type="an..512" minOccurs="0"/>
      <xs:element name="Code" type="n1" minOccurs="0"/>
      <xs:element name="Endorsement" type="PassarNCTSIncidentsEndorsementType" minOccurs="0"/>
      <xs:element name="Country" type="an..2" minOccurs="0"/>
      <xs:element name="QualifierOfIdentification" type="an..1" minOccurs="0"/>
      <xs:element name="UNLocode" type="an..17" minOccurs="0"/>
      <xs:element name="GNSS" type="PassarNCTSIncidentsGNSSType" minOccurs="0"/>
      <xs:element name="Address" type="PassarNCTSIncidentsAddressType" minOccurs="0"/>
      <xs:element name="TransportEquipment" type="PassarNCTSIncidentsTransportEquipmentType" minOccurs="0" maxOccurs="9999"/>
      <xs:element name="Transhipment" type="PassarNCTSIncidentsTranshipmentType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsObjektIdentifizierungType">
    <xs:sequence>
      <xs:element name="ObjektName" type="an..22"/>
      <xs:element name="ObjektAlias" type="an..35" minOccurs="0" maxOccurs="10"/>
      <xs:element name="NachrichtenNummer" type="an..36" minOccurs="0"/>
      <xs:element name="ZeitpunktEingang" type="xs:dateTime" minOccurs="0"/>
      <xs:element name="ShipmentReferenz" type="an..35" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsOppositeInformationType">
    <xs:sequence>
      <xs:element name="Detail" type="an..256" minOccurs="0"/>
      <xs:element name="Text" type="an..35" minOccurs="0"/>
      <xs:element name="ReferenceNumber" type="an..36" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsResponseDataType">
    <xs:sequence>
      <xs:element name="ObjektIdentifizierung" type="PassarNCTSIncidentsObjektIdentifizierungType" minOccurs="0"/>
      <xs:element name="TransitOperation" type="PassarNCTSIncidentsTransitOperationType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsTransaktionType">
    <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="PassarNCTSIncidentsTranshipmentType">
    <xs:sequence>
      <xs:element name="ContainerIndicator" type="n1" minOccurs="0"/>
      <xs:element name="TransportMeans" type="PassarNCTSIncidentsTransportMeansType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsTransitOperationType">
    <xs:sequence>
      <xs:element name="OppositeInformation" type="PassarNCTSIncidentsOppositeInformationType" minOccurs="0"/>
      <xs:element name="IncidentNotificationDateAndTime" type="xs:dateTime" minOccurs="0"/>
      <xs:element name="MRN" type="an..18" minOccurs="0"/>
      <xs:element name="MRNVersion" type="n2" minOccurs="0"/>
      <xs:element name="CustomsOfficeOfDeparture" type="an..8" minOccurs="0"/>
      <xs:element name="CustomsOfficeOfIncidentRegistration" type="an..8" minOccurs="0"/>
      <xs:element name="Incident" type="PassarNCTSIncidentsIncidentType" minOccurs="0" maxOccurs="9"/>
      <xs:element name="ApplicationInternalData" type="ApplicationInternalDataType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsTransportEquipmentType">
    <xs:sequence>
      <xs:element name="ContainerIdentificationNumber" type="an..17" minOccurs="0"/>
      <xs:element name="NumberOfSeals" type="n4" minOccurs="0"/>
      <xs:element name="Seal" type="an..20" minOccurs="0" maxOccurs="99"/>
      <xs:element name="DeclarationGoodsItemNumber" type="n5" minOccurs="0" maxOccurs="9999"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsTransportMeansType">
    <xs:sequence>
      <xs:element name="Nationality" type="an..2" minOccurs="0"/>
      <xs:element name="IdentificationNumber" type="an..35" minOccurs="0"/>
      <xs:element name="TypeOfIdentification" type="n2" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PassarNCTSIncidentsType">
    <xs:sequence>
      <xs:element name="Transaktion" type="PassarNCTSIncidentsTransaktionType" minOccurs="0"/>
      <xs:element name="ResponseData" type="PassarNCTSIncidentsResponseDataType" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>
