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.
DS7/DSWeb/EDIFiles/CS-SYSINT-STD-IG-BR(报文格式).xsd

1612 lines
55 KiB
XML

3 years ago
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<!--root-->
<xs:element name="Booking">
<xs:annotation>
<xs:documentation>ver. 5.10</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="InterchangeControlHeader" type="InterchangeControlHeaderType" minOccurs="0">
<xs:annotation>
<xs:documentation>Note: This is only used for EDI Standard to XML Translation</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Request" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="GeneralInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="TransactionInfo" type="TransactionInfoType"/>
<xs:element name="ActionType">
<xs:annotation>
<xs:documentation>Reference number in UserReferences/References with type 'CR' is the unique number to identify each booking request </xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
<xs:minLength value="1"/>
<xs:enumeration value="NEW"/>
<xs:enumeration value="UPD"/>
<xs:enumeration value="CAN"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CSReferenceNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="12"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BookingNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="35"/>
<xs:minLength value="0"/>
</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="Offices" type="OfficesType" minOccurs="0"/>
<xs:element name="Amended" type="Requested" minOccurs="0"/>
<xs:element name="Requested" type="Requested" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ShipmentDetails">
<xs:complexType>
<xs:sequence>
<xs:element name="UserReferences">
<xs:complexType>
<xs:sequence>
<xs:element name="References" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Type 'CR' is for unique number to identify each booking request. It's required</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<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="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="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="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="AP"/>
<xs:enumeration value="NP"/>
<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="CustomerUserID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20"/>
<xs:minLength value="0"/>
</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="14"/>
</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="SalesOfficeCode" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</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="IntendedDates" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="From" 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="To" 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="Range" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
<xs:enumeration value="S"/>
<xs:enumeration value="A"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Location" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>use Location in Intermodal group</xs:documentation>
</xs:annotation>
<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="FND"/>
<xs:enumeration value="POR"/>
<xs:enumeration value=""/>
</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="35"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LocationDetails" type="LocationDetails" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Intermodal" minOccurs="0" maxOccurs="unbounded">
<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" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="VesselCode" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="VesselCode">
<xs:minLength value="0"/>
<xs:maxLength value="5"/>
</xs:restriction>
</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:element>
<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="8"/>
</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:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Location" minOccurs="0" 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="POL"/>
<xs:enumeration value="POD"/>
</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="35"/>
</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:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EquipmentInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Containers" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ContainerType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Quantity" 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="Weight" minOccurs="0" maxOccurs="3">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="SOCIndicator" type="xs:int" minOccurs="0"/>
<xs:element name="OutBound" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="EmptyPickupDate" 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="FullReturnDate" 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="Appointment" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Quantity">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Company">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="70"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Location" type="LocationDetails" minOccurs="0"/>
<xs:element name="ContactPerson" type="ContactDetails" minOccurs="0"/>
<xs:element name="AppointmentDate">
<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:sequence>
</xs:complexType>
</xs:element>
<xs:element name="isMerchantHaulage" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="InBound" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="EmptyReturnDate" 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="DestinationDateTime" 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="isMerchantHaulage" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CargoInformation" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="CargoDetails" type="CargoDetailsType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SummaryDetails" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Remarks" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Type" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Content" type="Remarks" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SpecialHandling" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SpecialInstructions" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="30"/>
<xs:minLength value="0"/>
</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>
<!--declaration of complex types-->
<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="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">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="60"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="County" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="35"/>
<xs:minLength value="1"/>
</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="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CountryName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="35"/>
<xs:minLength value="0"/>
</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="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="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="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="1"/>
<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="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="6"/>
<xs:enumeration value="CFM"/>
<xs:enumeration value="CMH"/>
<xs:enumeration value="PCT"/>
<xs:enumeration value="PER"/>
</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="Requested">
<xs:sequence>
<xs:element name="NotificationEmailID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="By" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Date">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="DateTime">
<xs:minLength value="1"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactDetails">
<xs:sequence>
<xs:element name="FirstName">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</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="OutBound"/>
<xs:enumeration value="InBound"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="InterchangeControlHeaderType">
<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:complexType name="TransactionInfoType">
<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="Version">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="7"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="IndicatorsType">
<xs:sequence>
<xs:element name="IsReportableQuantity" 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="IsLimitedQuantity" 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="IsMarinePollutant" 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:sequence>
</xs:complexType>
<xs:complexType name="PackageType">
<xs:sequence>
<xs:element name="PackagingGroupCode" 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="InnerPackaging" 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="OuterPackaging" 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:complexType name="PackagingUnits">
<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="40"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="PackagingType">
<xs:sequence>
<xs:element name="PackageType" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="3"/>
<xs:minLength value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Quantity" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:long">
<xs:maxInclusive value="999999999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Material" 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="CargoDetailsType">
<xs:sequence>
<xs:element name="CargoNature">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="2"/>
<xs:maxLength value="2"/>
<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="CargoDescription" 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="Commodity" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="CommdityGroup">
<xs:minLength value="0"/>
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Packaging" type="PackagingType" minOccurs="0"/>
<xs:element name="Weight" minOccurs="0" maxOccurs="2">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
<xs:element name="TrafficMode">
<xs:complexType>
<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="7"/>
<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="7"/>
<xs:enumeration value="LCL"/>
<xs:enumeration value="FCL"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ReeferSettings" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Temperature">
<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" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Ventilation">
<xs:minLength value="0"/>
<xs:maxLength value="3"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="DehumidityPercentage" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minExclusive value="0"/>
<xs:maxExclusive 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:maxLength value="4"/>
<xs:minLength value="0"/>
<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:maxLength value="2"/>
<xs:minLength value="0"/>
<xs:enumeration value="NR"/>
<xs:enumeration value="US"/>
<xs:enumeration value="CO"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="DehumidityInd">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<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">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</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" minOccurs="0">
<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="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:minInclusive value="-999.99"/>
<xs:maxInclusive value="999.99"/>
<xs:fractionDigits value="2"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</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="MaterialDescription" 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="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="EMSNumber" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="0"/>
<xs:maxLength value="6"/>
</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="DGElevationTemperature" 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="Weight" minOccurs="0" maxOccurs="3">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Weight">
<xs:minLength value="0"/>
<xs:maxLength value="14"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Indicators" type="IndicatorsType" minOccurs="0"/>
<xs:element name="Package" type="PackageType" minOccurs="0"/>
<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" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Height" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="0"/>
<xs:maxLength value="9"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Width" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="0"/>
<xs:maxLength value="9"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Length" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:restriction base="Measurement">
<xs:minLength value="0"/>
<xs:maxLength value="9"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Remarks" type="Remarks" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="OfficesType">
<xs:sequence>
<xs:element name="BookingRegion" 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="BookingOffice" 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="BookingOfficeName" 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="BLIssuingOffice" 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="CargoOrigin" 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="SchedKDCodeType">
<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="K"/>
<xs:enumeration value="D"/>
</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="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="CommdityGroup">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Group">
<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:schema>