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.

1026 lines
37 KiB
XML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?xml version="1.0" encoding="utf-8"?>
<!-- Verssion 3.0 2015-02-09 -->
<!-- 2015-07-02
add aciCode attribute in CarrierName
-->
<xs:schema id="Manifest"
elementFormDefault="unqualified"
attributeFormDefault="unqualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="String4Type">
<xs:restriction base="xs:NMTOKEN">
<xs:length value="4" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String3Type">
<xs:restriction base="xs:NMTOKEN">
<xs:length value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String1Type">
<xs:restriction base="xs:NMTOKEN">
<xs:length value="1" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String2Type">
<xs:restriction base="xs:NMTOKEN">
<xs:length value="2" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String7Type">
<xs:restriction base="xs:NMTOKEN">
<xs:length value="7" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MONType">
<xs:restriction base="xs:NMTOKEN">
<xs:maxLength value="3" />
<xs:minLength value="2" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength4Type">
<xs:restriction base="xs:string">
<xs:maxLength value="4" />
<xs:minLength value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength7Type">
<xs:restriction base="xs:string">
<xs:maxLength value="7" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength8Type">
<xs:restriction base="xs:string">
<xs:maxLength value="8" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength10Type">
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength14Type">
<xs:restriction base="xs:string">
<xs:maxLength value="14" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength15Type">
<xs:restriction base="xs:string">
<xs:maxLength value="15" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength20Type">
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength25Type">
<xs:restriction base="xs:string">
<xs:maxLength value="25" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength31Type">
<xs:restriction base="xs:string">
<xs:maxLength value="31" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength35Type">
<xs:restriction base="xs:string">
<xs:maxLength value="35" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength40Type">
<xs:restriction base="xs:string">
<xs:maxLength value="40" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength50Type">
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength70Type">
<xs:restriction base="xs:string">
<xs:maxLength value="70" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MaxLength450Type">
<xs:restriction base="xs:string">
<xs:maxLength value="450" />
<xs:minLength value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNDGNumberType">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="HSNumberType">
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
<xs:minLength value="6" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ManifestTypeValues">
<xs:restriction base="xs:string">
<xs:enumeration value="AFR">
<xs:annotation>
<xs:documentation>
For Japan Customs Filing.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AMS">
<xs:annotation>
<xs:documentation>
For US Customs Filing.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ACI">
<xs:annotation>
<xs:documentation>
For Canada Customs Filing.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ISF">
<xs:annotation>
<xs:documentation>
For US Customs Filing.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ActionCodeValue">
<xs:annotation>
<xs:documentation>A: add ,AS : add and submit , R : amend ,RS : amend and submit , D : Delete, C: Data check only</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="A">
<xs:annotation>
<xs:documentation>发到www.gsf24.com网站,保存但不向海关发送</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AS">
<xs:annotation>
<xs:documentation>发到www.gsf24.com网站,保存但不向海关发送</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="D">
<xs:annotation>
<xs:documentation>删除指定MasterRefNo的主单</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="C">
<xs:annotation>
<xs:documentation>检查并校验数据,但不保存</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="R" />
<xs:enumeration value="RS" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNLocationCodeType">
<xs:annotation>
<xs:documentation xml:lang="en">Simple 5 Character UN Location Code (ISO 3661) Validation Pattern.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z]{5}" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CarrierType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="String4Type" use="required" />
<xs:attribute name="aciCode" type="String4Type" use="optional" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ConsignmentTypeValue">
<xs:annotation>
<xs:documentation>FCL or LCL</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="FCL" />
<xs:enumeration value="LCL" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PartyTypeValue">
<xs:annotation>
<xs:documentation>
CU - Customer (Include Shipper, Consignee,Notify Party), FD - Forwarder, CS - Consolidator, ST - Ship To TO - To Order MF - Manufacturer IM - Importer
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="CU">
<xs:annotation>
<xs:documentation>Customer (Include Shipper, Consignee,Notify Party)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FD">
<xs:annotation>
<xs:documentation>Forwarder</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="IM">
<xs:annotation>
<xs:documentation>Importer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MF">
<xs:annotation>
<xs:documentation>Manufacturer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CS">
<xs:annotation>
<xs:documentation>Consolidator</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LG">
<xs:annotation>
<xs:documentation>Container Stuffing</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ST">
<xs:annotation>
<xs:documentation>Ship To</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TO">
<xs:annotation>
<xs:documentation>TO Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<!--For old version-->
<xs:enumeration value="SH"/>
<xs:enumeration value="CN"/>
<xs:enumeration value="NF"/>
<xs:enumeration value="NP"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FilingTypeValue">
<xs:annotation>
<xs:documentation>
E - Export
I - Import
B - In-Bond / IT required Bonded Freight Forwarder
T - Tranship / IE
S - In-Transit / TandE Transportation and Exportation
F - Freight Remain on Board
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="E" />
<xs:enumeration value="I" />
<xs:enumeration value="B" />
<xs:enumeration value="T" />
<xs:enumeration value="S" />
<xs:enumeration value="F" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="OpTypeValue">
<xs:annotation>
<xs:documentation>OE: 海运出口; OI: 海运进口</xs:documentation>
</xs:annotation>
<xs:restriction base="String2Type">
<xs:enumeration value="OE" />
<xs:enumeration value="OI" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ACISNPTypeValue">
<xs:annotation>
<xs:documentation>Second Notify Party :BR-Broker,OC-Carrier,FD-Forwarder,WH-Warehouse</xs:documentation>
</xs:annotation>
<xs:restriction base="String2Type">
<xs:enumeration value="BR">
<xs:annotation>
<xs:documentation>Broker</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OC">
<xs:annotation>
<xs:documentation>Ocean Carrier</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FD">
<xs:annotation>
<xs:documentation>Forwarder</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="WH">
<xs:annotation>
<xs:documentation>Warehouse</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="classOwner">
<xs:annotation>
<xs:documentation>0 ==> E-Freight Standard; 1 ==> AMS Standard; 2 ==> AFR Standard;</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:int">
<xs:enumeration value="0" />
<xs:enumeration value="1" />
<xs:enumeration value="2" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VesselType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="IMO" type="MaxLength7Type" use="optional" />
<xs:attribute name="callSign" type="MaxLength8Type" use="optional" />
<xs:attribute name="voyage" type="MaxLength10Type" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="RequiredPortType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="UNLocationCodeType" use="required" />
<xs:attribute name="date" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ACISubMasterType">
<xs:simpleContent>
<xs:extension base="MaxLength25Type">
<xs:attribute name="code" type="String4Type" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="ACIRequiredPortType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="MaxLength4Type" use="required" />
<xs:attribute name="subcode" type="MaxLength4Type" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="NotRequiredPortType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="xs:string" use="optional" />
<xs:attribute name="date" type="xs:string" use="optional" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="PlaceType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="xs:string" use="optional" />
<xs:attribute name="date" type="xs:string" use="optional" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="EFTUnitType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="MONType" use="required">
<xs:annotation>
<xs:documentation>
simple 3 character E-Freight unit type
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="classOwner" type="classOwner" use="optional" default="0"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="CountryType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="String2Type" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="ContainerTypeValues">
<xs:restriction base="xs:string">
<xs:enumeration value="12G0">
<xs:annotation>
<xs:documentation xml:lang="en">
10 Standard Dry
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22B0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Dry Bulk
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22P1">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Flat Rack
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22U6">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Hard Top
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="25G0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22H0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Insulated
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22U0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Open Top
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="29P0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Platform
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22P3">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Platform (collapsible)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22R1">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Reefer
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22R9">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Reefer (non food)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="25R1">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Reefer High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22G0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Standard Dry
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22T6">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Tank (dangerous - 6 bar)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22T0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Tank (non-dangerous)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="20T5">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Tank 8.0' (dangerous - 4 bar)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22T5">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Tank 8.5' (dangerous - 4 bar)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22T6">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Tank (dangerous - 6 bar)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="22V0">
<xs:annotation>
<xs:documentation xml:lang="en">
20 Ventilated
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42P1">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Flat Rack
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42U6">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Hard Top
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="45G0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="45U6">
<xs:annotation>
<xs:documentation xml:lang="en">
40 High Cube Hard Top
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42H0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Insulated
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42U0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Open Top
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="49P0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Platform
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42P3">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Platform (collapsible)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="45P3">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Platform High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42R1">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Reefer
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42R9">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Reefer (non food)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="45R1">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Reefer High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="45R9">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Reefer High Cube (non food)
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42G0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Standard Dry
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42T0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Tank
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="42V0">
<xs:annotation>
<xs:documentation xml:lang="en">
40 Ventilated
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="L5G0">
<xs:annotation>
<xs:documentation xml:lang="en">
45 High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="L5R1">
<xs:annotation>
<xs:documentation xml:lang="en">
45 Reefer High Cube
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="M2G0">
<xs:annotation>
<xs:documentation xml:lang="en">
48 Ft
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="P2G0">
<xs:annotation>
<xs:documentation xml:lang="en">
53 Ft
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="P5G0">
<xs:annotation>
<xs:documentation xml:lang="en">
53 Ft HQ
</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:element name="Manifest">
<xs:annotation>
<xs:documentation>Root level node</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Header" type="HeaderType"></xs:element>
<xs:element name="Master" type="Master"></xs:element>
<xs:element name="ShippingParties" type="ShippingPartysType"></xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="HeaderType">
<xs:sequence>
<xs:element name="MessageID" type="xs:string">
<xs:annotation>
<xs:documentation>Message Id is required</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ActionCode" type="ActionCodeValue">
<xs:annotation>
<xs:documentation>
A: 发到GSF24网站 ,AS : 发送到GSF24网站并提交海关 , R : amend ,RS : amend and submit , D : 删除指定主单, C: data check only
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SenderCode" type="xs:string">
<xs:annotation>
<xs:documentation>
报文发送方编码为E-Freight提供的PartnerCode
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ManifestType" type="ManifestTypeValues">
<xs:annotation>
<xs:documentation>
提单类型取值: ACI ,AMS,AFR, ISF
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CompanyCode" type="MaxLength8Type">
<xs:annotation>
<xs:documentation>
报文数据所有者为E-Freight提供的GroupCode
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SubmitterID" type="xs:string" minOccurs="0" >
<xs:annotation>
<xs:documentation>
以FTP上传Xml时若Xml文件解析数据校验发生错误将通过Email通知错误信息。Email地址以分号(;)分隔
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SubmitterPassword" type="xs:string" minOccurs="0" >
<xs:annotation>
<xs:documentation>
未使用
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BranchCode" type="xs:string">
<xs:annotation>
<xs:documentation>
提交报文的的公司(站点,各地分站编码)
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SendDateTime" type="xs:string"></xs:element>
<xs:element name="Version" type="xs:string">
<xs:annotation>
<xs:documentation>
版本号:3.0; T==> For 发送测试报文; C==> 仅对报文进行校验
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ShippingPartysType">
<xs:sequence>
<xs:element name="ShippingParty" type="ShippingPartyType" minOccurs="2" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ShippingPartyType">
<xs:sequence>
<xs:element name="PartyCode" type="MaxLength40Type" />
<xs:element name="PartyType" type="PartyTypeValue" />
<xs:element name="PartyName" type="MaxLength70Type" />
<xs:element name="GroupCode" type="MaxLength8Type" minOccurs="0" nillable="true" />
<xs:element name="TaxId" type="MaxLength20Type" minOccurs="0" nillable="true" />
<xs:element name="PartyLocation" type="PartyLocationType" />
<xs:element name="PartyRemark" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="ContactPersons" type="ContactPersonsType" minOccurs="0" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="PartyLocationType">
<xs:sequence>
<xs:element name="Address" type="AddressLineType" />
<xs:element name="City" type="MaxLength25Type" minOccurs="0" nillable="true"/>
<xs:element name="SubDivisionCode" type="String2Type" minOccurs="0" nillable="true"/>
<xs:element name="Region" type="MaxLength20Type" minOccurs="0" nillable="true"/>
<xs:element name="PostalCode" type="MaxLength10Type" minOccurs="0" nillable="true"/>
<xs:element name="Country" type="CountryType" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactPersonsType">
<xs:sequence>
<xs:element name="Person" type="ContactPersonType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactPersonType">
<xs:sequence>
<xs:element name="ContactName" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="ContactMail" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="PhoneArea" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="Phone" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="FaxArea" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="Fax" type="xs:string" minOccurs="0" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AddressLineType">
<xs:sequence>
<xs:element name="AddressLine" type="MaxLength50Type" minOccurs="1" maxOccurs="2" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Master">
<xs:sequence>
<xs:element name="MasterBillNo" type="MaxLength20Type" />
<xs:element name="ACISubMasterBillNo" type="ACISubMasterType" minOccurs="0" nillable="true"/>
<xs:element name="OPType" type="OpTypeValue" />
<xs:element name="OriginAgentCode" type="MaxLength4Type" >
<xs:annotation>
<xs:documentation>在GSF24网站设定后方可使用</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DestinationAgentCode" type="xs:string" minOccurs="0" >
<xs:annotation>
<xs:documentation>
在GSF24网站设定后方可使用
仅如下两种可能情况下需提供1、进口代理需要登录GSF24查看数据 2、进口代理需要从GSF24下载数据
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CarrierName" type="CarrierType" />
<xs:element name="ConsignmentType" type="ConsignmentTypeValue" />
<xs:element name="HouseCount" type="xs:int" minOccurs="0" nillable="true"/>
<xs:element name="FilingType" type="FilingTypeValue" />
<xs:element name="ConsolidatorRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="ConsoPlaceRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="RouteInformation" type="RouteInformationType" />
<xs:element name="MasterRefNo" type="MaxLength20Type" />
<xs:element name="MasterContainers" type="MasterContainersType" />
<xs:element name="Houses" type="HousesType" />
<xs:element name="MasterRemark" type="xs:string" minOccurs="0" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SecondNotifyPartyType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="type" type="ACISNPTypeValue" use="required" />
<xs:attribute name="code" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="RouteInformationType">
<xs:sequence>
<xs:element name="DepartureVessel" type="VesselType" minOccurs="0" nillable="true"/>
<xs:element name="ArrivalVessel" type="VesselType" />
<xs:element name="LoadingPort" type="RequiredPortType" />
<xs:element name="TranshipPort" type="NotRequiredPortType" minOccurs="0" nillable="true"/>
<xs:element name="FirstArrivePort" type="NotRequiredPortType" minOccurs="0" nillable="true"/>
<xs:element name="LastForeignPort" type="NotRequiredPortType" minOccurs="0" nillable="true"/>
<xs:element name="DischargePort" type="RequiredPortType" />
<xs:element name="ACIDischargePort" type="ACIRequiredPortType" minOccurs="0" />
<xs:element name="DestinationPort" type="RequiredPortType" minOccurs="0" />
<xs:element name="ACIDestinationPort" type="ACIRequiredPortType" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="MasterContainersType">
<xs:sequence>
<xs:element name="Container" type="MasterContainerType" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="HousesType">
<xs:sequence>
<xs:element name="House" type="HouseType" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="MasterContainerType">
<xs:sequence>
<xs:element name="ContianerNo" type="MaxLength14Type" />
<xs:element name="ContainerType" type="ContainerTypeValues" />
<xs:element name="SealNo" type="MaxLength15Type" />
<xs:element name="SecondSealNo" type="MaxLength15Type" minOccurs="0" />
<xs:element name="ServiceCode" type="String2Type" minOccurs="0" nillable="true" default="CY"/>
<xs:element name="ShipperOwned" type="xs:string" minOccurs="0" default="2"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="HouseType">
<xs:sequence>
<xs:element name="LastHBLIndicator" type="xs:boolean" minOccurs="0" default="false" />
<xs:element name="HouseNo" type="MaxLength20Type" />
<xs:element name="ShipperRefCode" type="MaxLength40Type" />
<xs:element name="ConsigneeRefCode" type="MaxLength40Type" />
<xs:element name="NotifyRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="SecondNotifyParty" type="SecondNotifyPartyType" minOccurs="0" default="false" />
<xs:element name="ImporterRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="PlaceReceipt" type="PlaceType" minOccurs="0" nillable="true"/>
<xs:element name="PlaceDelivery" type="PlaceType" minOccurs="0" nillable="true"/>
<xs:element name="TotalWeightKg" type="xs:decimal" minOccurs="0" nillable="true"/>
<xs:element name="TotalVolumnCBM" type="xs:decimal" minOccurs="0" nillable="true"/>
<xs:element name="HouseRefNo" type="MaxLength25Type" minOccurs="0" nillable="true"/>
<xs:element name="HouseContainers" type="HouseConainersType" nillable="true"/>
<xs:element name="DeliveryToRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="ColoadInSelfFilingIndicator" type="xs:boolean" minOccurs="0" default="false" />
<xs:element name="ColoadInShipperRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="ColoadInConsigneeRefCode" type="MaxLength40Type" minOccurs="0" nillable="true"/>
<xs:element name="ContainerLoadingPlaces" type="ContainerLoadingPlacesType" minOccurs="0" nillable="true"/>
<xs:element name="Manufacturers" type="ManufacturersType" minOccurs="0" nillable="true"/>
<xs:element name="HouseHSNumbers" type="HouseHSNumbersType" minOccurs="0" nillable="true"/>
<xs:element name="HouseRemark" type="xs:string" minOccurs="0" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContainerLoadingPlacesType">
<xs:sequence>
<xs:element name="ContainerLoadingPlaceRefCode" type="MaxLength40Type" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ManufacturersType">
<xs:sequence>
<xs:element name="ManufacturerRefCode" type="MaxLength40Type" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="HouseConainersType">
<xs:sequence>
<xs:element name="Container" type="HouseConainerType" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="HouseConainerType">
<xs:sequence>
<xs:element name="ContianerRefNo" type="xs:NMTOKEN" />
<xs:element name="Package" type="xs:int" />
<xs:element name="Unit" type="EFTUnitType" />
<xs:element name="CountryOrigin" type="CountryType" minOccurs="0" nillable="true"/>
<xs:element name="GrossWeight" type="xs:string" minOccurs="0" nillable="true"/>
<xs:element name="CBM" type="xs:string" minOccurs="0" nillable="true" />
<xs:element name="Marking" type="MaxLength450Type" />
<xs:element name="Description" type="MaxLength450Type" />
<xs:element name="HSNumber" type="HSNumberType" minOccurs="0" nillable="true" />
<xs:element name="HazardousDetails" type="HazardousDetailsType" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="IMOCodeValues">
<xs:restriction base="xs:string">
<xs:enumeration value="" />
<xs:enumeration value="1.1" />
<xs:enumeration value="1.2" />
<xs:enumeration value="1.3" />
<xs:enumeration value="1.4" />
<xs:enumeration value="1.5" />
<xs:enumeration value="1.6" />
<xs:enumeration value="2.1" />
<xs:enumeration value="2.2" />
<xs:enumeration value="2.3" />
<xs:enumeration value="3" />
<xs:enumeration value="3.1" />
<xs:enumeration value="3.2" />
<xs:enumeration value="3.3" />
<xs:enumeration value="4.1" />
<xs:enumeration value="4.2" />
<xs:enumeration value="4.3" />
<xs:enumeration value="5.1" />
<xs:enumeration value="5.2" />
<xs:enumeration value="6.1" />
<xs:enumeration value="8" />
<xs:enumeration value="9" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TemperatureUOMValues">
<xs:annotation>
<xs:documentation xml:lang="en">Set of Units of Measure for Temperature.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="CEL" />
<xs:enumeration value="FAH" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TemperatureType">
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="UOM" type="TemperatureUOMValues" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:simpleType name="PackingGroupCodeValues">
<xs:restriction base="xs:string">
<xs:enumeration value="" />
<xs:enumeration value="GreatDanger" />
<xs:enumeration value="MediumDanger" />
<xs:enumeration value="MinorDanger" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="HazardousDetailsType">
<xs:all>
<xs:element name="PackingGroupCode" type="PackingGroupCodeValues" minOccurs="0" nillable="true"/>
<xs:element name="IMOClassCode" type="IMOCodeValues" minOccurs="0" nillable="true"/>
<xs:element name="UNDGNumber" type="UNDGNumberType" minOccurs="0" nillable="true"/>
<xs:element name="FlashpointTemperature" type="TemperatureType" minOccurs="0" nillable="true"/>
<xs:element name="ContactName" type="MaxLength35Type" minOccurs="0" nillable="true"/>
<xs:element name="ContactPhone" type="MaxLength35Type" minOccurs="0" nillable="true"/>
<xs:element name="HazardousGoodsComments" type="MaxLength450Type" minOccurs="0" nillable="true"/>
</xs:all>
</xs:complexType>
<xs:complexType name="HouseHSNumbersType">
<xs:sequence>
<xs:element name="HSNumber" type="HSNumberType" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>