68 lines
2.5 KiB
XML
68 lines
2.5 KiB
XML
<?xml version="1.0"?>
|
|
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 02.02.2016 -->
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
|
<xs:complexType name="import">
|
|
<xs:sequence>
|
|
<xs:element name="LastPort" type="lastport"/>
|
|
<xs:element name="PortOfCall" type="portofcallhazmat"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="export">
|
|
<xs:sequence>
|
|
<xs:element name="PortOfCall" type="portofcallhazmat"/>
|
|
<xs:element name="NextPort" type="nextporthazmat" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="transit">
|
|
<xs:sequence>
|
|
<xs:element name="LastPort" type="lastport"/>
|
|
<xs:element name="NextPort" type="nextporthazmat" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="lastport">
|
|
<xs:sequence>
|
|
<xs:element name="Locode" type="locode-type" default="ZZUKN"/>
|
|
<xs:element name="ETD" type="xs:dateTime" minOccurs="0"/>
|
|
</xs:sequence>
|
|
<xs:assert test="if (Locode eq 'ZZUKN') then empty(ETD) else ETD"/>
|
|
</xs:complexType>
|
|
<xs:complexType name="portofcallhazmat">
|
|
<xs:sequence>
|
|
<xs:element name="Locode" type="locode-type"/>
|
|
<xs:element name="ETA" type="xs:dateTime" />
|
|
<xs:element name="ETD" type="xs:dateTime" />
|
|
<xs:element name="ATA" type="xs:dateTime" minOccurs="0"/>
|
|
<xs:element name="ATD" type="xs:dateTime" minOccurs="0"/>
|
|
<xs:element name="CallPurposes" type="callpurposes" minOccurs="0"/>
|
|
<xs:choice minOccurs="0">
|
|
<xs:element name="Hafengebiet" type="string1-3-type"/>
|
|
<xs:element name="GISIS" type="string1-4-type"/>
|
|
</xs:choice>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="nextporthazmat">
|
|
<xs:sequence>
|
|
<xs:element name="Locode" type="locode-type" default="ZZUKN"/>
|
|
<xs:element name="ETA" type="xs:dateTime" minOccurs="0"/>
|
|
</xs:sequence>
|
|
<xs:assert test="if (Locode eq 'ZZUKN') then empty(ETA) else ETA"/>
|
|
</xs:complexType>
|
|
<xs:complexType name="callpurposes">
|
|
<xs:sequence>
|
|
<xs:element name="CallPurpose" type="callpurpose" maxOccurs="9" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="callpurpose">
|
|
<xs:sequence>
|
|
<xs:element name="CallPurposeCode" type="callpurposecode-type"/>
|
|
<xs:element name="CallPurposeDescription" type="string1-99-type" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<!-- ============ simple types ============ -->
|
|
<xs:simpleType name="callpurposecode-type">
|
|
<xs:restriction base="xs:integer">
|
|
<xs:minInclusive value="1"/>
|
|
<xs:maxExclusive value="1000"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:schema> |