git_bsmd/nsw/HIS-NORD/xsd.assert/noanod_reeder.xsd
Daniel Schick 3ce90d643a 3.0.8
Erweiterung Dakosy, HIS-Nord (erste Anfänge)
2016-04-03 09:10:35 +00:00

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 &apos;ZZUKN&apos;) 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 &apos;ZZUKN&apos;) 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>