You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
HENGCHENG/DSWeb/EDIFiles/CS-SYSINT-STD-IG-SI(报文格式).xsd

2309 lines
88 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSpy v2006 rel. 3 sp1 (http://www.altova.com) by OOCL (OOCL) -->
<!--Created with Liquid XML Studio 6.1.18.0 - FREE Community Edition (http://www.liquid-technologies.com)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<!--root element -->
<xs:element name="ShippingInstructions">
<xs:annotation>
<xs:documentation>ver. 10.0</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="InterchangeControlHeader" minOccurs="0">
<xs:annotation>
<xs:documentation>Note: This is only used for EDI Standard to XML Translation</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="ControlNumber">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SenderId">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReceiverId">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DateTime">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ControlVersion">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UsageIndicator">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MessageSessionId">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="6"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SIBillOfLading" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="GeneralInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="TransactionInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="BatchNumber">
<xs:simpleType>
<xs:restriction base="xs:long">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="99999999999999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MessageSender">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="15"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MessageRecipient">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MessageID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="15"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DateCreated" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="DateTime">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="FileName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DataSource" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="8"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Version">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="7"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ActionType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="3"/>
<xs:enumeration value="NEW"/>
<xs:enumeration value="UPD"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BLNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SIReferenceNumber">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="45"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SCAC">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OwnedBy">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BLReleaseOffice" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SIVersionNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BLDetails">
<xs:complexType>
<xs:sequence>
<xs:element name="BookingInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="BookingNumber" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UserReferences" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="References" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ReferenceNumber">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReferenceType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="5"/>
<xs:enumeration value="SO"/>
<xs:enumeration value="PO"/>
<xs:enumeration value="FN"/>
<xs:enumeration value="IK"/>
<xs:enumeration value="CT"/>
<xs:enumeration value="E8"/>
<xs:enumeration value="CR"/>
<xs:enumeration value="SI"/>
<xs:enumeration value="BM"/>
<xs:enumeration value="BN"/>
<xs:enumeration value="OL"/>
<xs:enumeration value="TS"/>
<xs:enumeration value="SCA"/>
<xs:enumeration value="QT"/>
<xs:enumeration value="FI"/>
<xs:enumeration value="RF"/>
<xs:enumeration value="Q1"/>
<xs:enumeration value="FCN"/>
<xs:enumeration value="CRA"/>
<xs:enumeration value="SR"/>
<xs:enumeration value="ZZ"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReferenceDescription" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CarrierRateReferences" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ReferenceNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReferenceType" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
<xs:enumeration value="SO"/>
<xs:enumeration value="PO"/>
<xs:enumeration value="FN"/>
<xs:enumeration value="IK"/>
<xs:enumeration value="CT"/>
<xs:enumeration value="E8"/>
<xs:enumeration value="CR"/>
<xs:enumeration value="SI"/>
<xs:enumeration value="BM"/>
<xs:enumeration value="BN"/>
<xs:enumeration value="OL"/>
<xs:enumeration value="TS"/>
<xs:enumeration value="SCA"/>
<xs:enumeration value="QT"/>
<xs:enumeration value="FI"/>
<xs:enumeration value="RF"/>
<xs:enumeration value="Q1"/>
<xs:enumeration value="FCN"/>
<xs:enumeration value="CRA"/>
<xs:enumeration value="SR"/>
<xs:enumeration value="ZZ"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ReferenceDescription" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LegalParties">
<xs:complexType>
<xs:sequence>
<xs:element name="Party" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="PartyType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="2"/>
<xs:enumeration value="CA"/>
<xs:enumeration value="SH"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="FW"/>
<xs:enumeration value="BR"/>
<xs:enumeration value="NP"/>
<xs:enumeration value="AP"/>
<xs:enumeration value="BP"/>
<xs:enumeration value="HI"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartyName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="70"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CompanyID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CarrierCustomerCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartyLocation" type="LocationDetails" minOccurs="0"/>
<xs:element name="ContactPerson" type="ContactDetails" minOccurs="0"/>
<xs:element name="PartyText" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="425"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FMCNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EORINumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="RouteInformation">
<xs:complexType>
<xs:sequence>
<xs:element name="VesselVoyageInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ServiceName" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="ServiceNameCode">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="VoyageNumberDirection" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="22"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VesselInformation" type="VesselInformationType" minOccurs="0"/>
<xs:element name="External" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="VesselCode" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="ExtVesselCode">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="VoyageNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="17"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PreCarriage" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="19"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VesselVoyageText">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="TrafficMode" type="TrafficMode"/>
<xs:element name="Haulage">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Location" minOccurs="2" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="FunctionCode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="5"/>
<xs:enumeration value="ORG"/>
<xs:enumeration value="POL"/>
<xs:enumeration value="POD"/>
<xs:enumeration value="FND"/>
<xs:enumeration value="POR"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LocationName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LocationDetails" type="LocationDetails" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EquipmentInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Containers" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="AssociatedBookingNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ContainerType" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ContainerNumber" minOccurs="0">
<xs:annotation>
<xs:documentation>Container Number</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="ContainerName">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="SealNumber" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="SealNumber">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Package" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="PackagingUnits">
<xs:minLength value="0"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Weight" minOccurs="0" maxOccurs="3">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight3">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Volume" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Volume">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Remarks" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Indicators" type="IndicatorsType" minOccurs="0"/>
<xs:element name="TrafficMode" type="TrafficMode" minOccurs="0"/>
<xs:element name="ReeferSettings" minOccurs="0">
<xs:annotation>
<xs:documentation>if reefer container</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Temperature" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Temperature">
<xs:fractionDigits value="2"/>
<xs:minInclusive value="-9999.99"/>
<xs:maxInclusive value="9999.99"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Ventilation" type="Ventilation" minOccurs="0"/>
<xs:element name="DehumidityPercentage" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SensitiveCargoDesc" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
<xs:element name="EmergencyContact" type="ContactDetails" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="AtmosphereType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="4"/>
<xs:enumeration value="CA"/>
<xs:enumeration value="MA"/>
<xs:enumeration value="AFAM"/>
<xs:enumeration value="NP"/>
<xs:enumeration value="MG"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="PreCooling">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="GenSetType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="2"/>
<xs:enumeration value="NR"/>
<xs:enumeration value="US"/>
<xs:enumeration value="CO"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="VentSettingCode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="6"/>
<xs:enumeration value="25OPN"/>
<xs:enumeration value="50OPN"/>
<xs:enumeration value="75OPN"/>
<xs:enumeration value="100OPN"/>
<xs:enumeration value="CLOSED"/>
<xs:enumeration value="10OPN"/>
<xs:enumeration value="OTHER"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="DehumidityInd" type="xs:int"/>
<xs:attribute name="CO2">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minExclusive value="0"/>
<xs:maxExclusive value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="O2">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minExclusive value="0"/>
<xs:maxExclusive value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="SensitiveCargoInd" type="xs:int"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CargoInformation">
<xs:complexType>
<xs:sequence>
<xs:element name="CargoItems" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="CargoNature" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:minLength value="0"/>
<xs:enumeration value="GC"/>
<xs:enumeration value="RF"/>
<xs:enumeration value="DG"/>
<xs:enumeration value="AW"/>
<xs:enumeration value="RD"/>
<xs:enumeration value="AD"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Package" minOccurs="0">
<xs:annotation>
<xs:documentation>X.12 can accept 7 digits, EDIFACT can accept 8 digits</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="PackagingUnits">
<xs:minLength value="0"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="PackageDescription" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PackageMaterial" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Weight" minOccurs="0" maxOccurs="2">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Volume" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Volume2">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CargoDescription">
<xs:complexType>
<xs:sequence>
<xs:element name="DescriptionLine" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MarksAndNumbers" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="MarksAndNumbersLine" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="HarmonizedTariffSchedule" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:maxInclusive value="999999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Remarks" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DangerousCargo" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="DangerousCargoInfo" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="HazardousMaterial">
<xs:complexType>
<xs:sequence>
<xs:element name="IMCOClass" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="IMCOPage" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="5"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DGRegulationString" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UNNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FlashPoint" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Temperature">
<xs:fractionDigits value="2"/>
<xs:minInclusive value="-999.99"/>
<xs:maxInclusive value="999.99"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="HazardousReference" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MFAGTableNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MFAGPageNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="25"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MaterialDescription" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MaterialClassification" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EmergencyScheduleReference" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EmergencyResponseCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EmergencySchedulePageNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="25"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ProperShippingName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="80"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="TechnicalShippingName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="180"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="hazardousClassificationCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DGElevationTemperature" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Temperature">
<xs:minInclusive value="-999.99"/>
<xs:maxInclusive value="999.99"/>
<xs:fractionDigits value="2"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Weight" minOccurs="0" maxOccurs="3">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight2">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Indicators" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ReportableQuantityIndicator" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="isEmptyUnclean" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="limitedQuantityDeclaration" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="25"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="marinePollutantInformation" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="25"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="isResidue" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="isInhalationHazardous" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="isShipsideDelivery" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Package" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="PackagingGroupCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="InnerPackage" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="PackagingUnits">
<xs:minLength value="0"/>
<xs:maxLength value="9"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OuterPackage" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="PackagingUnits">
<xs:minLength value="0"/>
<xs:maxLength value="9"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EmergencyContact" type="ContactDetails" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AwkwardCargo" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="AwkwardCargoInfo" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="AwkwardCargoDetails">
<xs:complexType>
<xs:sequence>
<xs:element name="Height">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="1"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Width">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="1"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Length">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="1"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EmergencyContact" type="ContactDetails" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CargoDetails" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="AssociatedBookingNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ContainerNumber" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="ContainerName">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Package">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="PackagingUnits">
<xs:minLength value="1"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Weight" minOccurs="0" maxOccurs="2">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight">
<xs:minLength value="0"/>
<xs:maxLength value="12"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Volume" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Volume2">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="MarksAndNumbers" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="MarksAndNumbersLine" minOccurs="0" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SummaryDetails">
<xs:complexType>
<xs:sequence>
<xs:element name="BLInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="BLNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OnBoardBLDate" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="BLDate">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="DraftInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ModeOfTransmission" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Recipient" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Recipient">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="FaxNumber" type="ContactNumber" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OriginalBL" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ModeOfTransmission" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OtherInformation" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PaymentStatus" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
<xs:enumeration value="PREPAID"/>
<xs:enumeration value="COLLECT"/>
<xs:enumeration value="Prepaid"/>
<xs:enumeration value="Collect"/>
<xs:enumeration value="prepaid"/>
<xs:enumeration value="collect"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BLCargoDescription" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
<xs:element name="SpecialInstructions" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="SpecialHandling" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="SpecialHandling">
<xs:minLength value="0"/>
<xs:maxLength value="500"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SIDistribution" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="SIBillOfLadingDistribution" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="PartyRole">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20"/>
<xs:minLength value="1"/>
<xs:enumeration value="SH"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="FW"/>
<xs:enumeration value="NP"/>
<xs:enumeration value="AP"/>
<xs:enumeration value="HI"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NumberOfCopies">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="DocType" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="FreightType" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="25"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="BLType" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="FreightType" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="25"/>
<xs:minLength value="1"/>
<xs:enumeration value="NonFreighted"/>
<xs:enumeration value="FreightedCollect"/>
<xs:enumeration value="FreightedPrepaid"/>
<xs:enumeration value="FreightedMixed"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="Certifications" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="CertificationClauseText" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="4"/>
<xs:enumeration value="01"/>
<xs:enumeration value="02"/>
<xs:enumeration value="03"/>
<xs:enumeration value="04"/>
<xs:enumeration value="11"/>
<xs:enumeration value="20"/>
<xs:enumeration value="22"/>
<xs:enumeration value="24"/>
<xs:enumeration value="25"/>
<xs:enumeration value="34"/>
<xs:enumeration value="CC"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Charges" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="PayableAt">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="11"/>
<xs:enumeration value="ORIGIN"/>
<xs:enumeration value="DESTINATION"/>
<xs:enumeration value="Origin"/>
<xs:enumeration value="Destination"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PaidBy" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="PartyType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="2"/>
<xs:enumeration value="CA"/>
<xs:enumeration value="SH"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="FW"/>
<xs:enumeration value="BR"/>
<xs:enumeration value="NP"/>
<xs:enumeration value="AP"/>
<xs:enumeration value="BP"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartyName">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="70"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CompanyID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CarrierCustomerCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PartyLocation" type="LocationDetails" minOccurs="0"/>
<xs:element name="ContactPerson" type="ContactDetails" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Category">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="SubCategory">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
<xs:enumeration value="PREPAID"/>
<xs:enumeration value="COLLECT"/>
<xs:enumeration value="Prepaid"/>
<xs:enumeration value="Collect"/>
<xs:enumeration value="prepaid"/>
<xs:enumeration value="collect"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="PaperWork" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="RequestedDocuments" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="NoOfCopies">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ModeOfTransmission" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FaxNumber" type="ContactNumber" minOccurs="0"/>
<xs:element name="OtherInformation" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="DocumentType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="FreightType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="25"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="DateTime">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="TimeZone">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="BLDate">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
<xs:enumeration value="OnBoardVessel"/>
<xs:enumeration value="OnBoardRail"/>
<xs:enumeration value="Shipment"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="LocationCode">
<xs:annotation>
<xs:documentation>can be referring to a port or city</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MutuallyDefinedCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UNLocationCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SchedKDCode" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="SchedKDCodeType">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SchedKDCodeType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="1"/>
<xs:minLength value="1"/>
<xs:enumeration value="K"/>
<xs:enumeration value="D"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ContactNumber">
<xs:sequence>
<xs:element name="CountryCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="AreaCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Number" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="22"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactDetails">
<xs:sequence>
<xs:element name="FirstName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="70"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LastName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Phone" type="ContactNumber" minOccurs="0"/>
<xs:element name="Fax" type="ContactNumber" minOccurs="0"/>
<xs:element name="Email" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Type" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="8"/>
<xs:enumeration value="InBound"/>
<xs:enumeration value="OutBound"/>
<xs:enumeration value="INBOUND"/>
<xs:enumeration value="OUTBOUND"/>
<xs:enumeration value="inbound"/>
<xs:enumeration value="outbound"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Weight">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Qualifier">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
<xs:enumeration value="GROSS"/>
<xs:enumeration value="NET"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
<xs:enumeration value="TON"/>
<xs:enumeration value="LBS"/>
<xs:enumeration value="KGS"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Weight2">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Qualifier">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="15"/>
<xs:enumeration value="GROSS"/>
<xs:enumeration value="NET"/>
<xs:enumeration value="Net Explosive"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
<xs:enumeration value="TON"/>
<xs:enumeration value="LBS"/>
<xs:enumeration value="KGS"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Weight3">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Qualifier">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="15"/>
<xs:enumeration value="GROSS"/>
<xs:enumeration value="NET"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
<xs:enumeration value="TON"/>
<xs:enumeration value="LBS"/>
<xs:enumeration value="KGS"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Measurement">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="6"/>
<xs:enumeration value="C"/>
<xs:enumeration value="F"/>
<xs:enumeration value="N"/>
<xs:enumeration value="M"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Volume">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="6"/>
<xs:enumeration value="CBF"/>
<xs:enumeration value="CBM"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Volume2">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="4"/>
<xs:enumeration value="CBF"/>
<xs:enumeration value="CBM"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Temperature">
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
<xs:enumeration value="C"/>
<xs:enumeration value="F"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Ventilation">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Units">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
<xs:enumeration value="degrees"/>
<xs:enumeration value="cbfPerMin"/>
<xs:enumeration value="cbmPerHour"/>
<xs:enumeration value="percentage"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="TrafficMode">
<xs:sequence>
<xs:element name="Description" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="7"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OutBound" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
<xs:enumeration value="LCL"/>
<xs:enumeration value="FCL"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="InBound" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
<xs:enumeration value="LCL"/>
<xs:enumeration value="FCL"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Remarks">
<xs:sequence>
<xs:element name="RemarksLines" minOccurs="0" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LocationDetails">
<xs:sequence>
<xs:element name="Address" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="AddressLines" minOccurs="0" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Street" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="100"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="City" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="County" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="StateProvinceCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="StateProvince" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CountryCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CountryName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LocationCode" type="LocationCode" minOccurs="0"/>
<xs:element name="PostalCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VesselInformationType">
<xs:sequence>
<xs:element name="VesselCode" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="LloydsCode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CallSign">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="VesselName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VesselRegistrationCountry" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="IndicatorsType">
<xs:sequence>
<xs:element name="SOCIndicator" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PerishableGoods" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DangerousGoods" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PersonalEffect" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Timber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Flammable" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Fumigation" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MultipleBL" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LoadEmptyStatus" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VesselCode">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="LloydsCode">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="CallSign">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ExtVesselCode">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
<xs:enumeration value="L"/>
<xs:enumeration value="C"/>
<xs:enumeration value="Z"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ServiceNameCode">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ContainerName">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="CheckDigit">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="SealNumber">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Name">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="PackagingUnits">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Recipient">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Type">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="SpecialHandling">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:schema>