HyperNIEM 5

Disclaimer: This tool was developed by Tom Carlson Consulting LLC. It was created from the official distribution of the data model. Tom Carlson Consulting LLC makes neither claim nor warranty that this tool provides an accurate representation of the NIEM data model. For official and authoritative representations, please visit the official NIEM release website.


<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://release.niem.gov/niem/domains/internationalTrade/5.0/" version="1" xml:lang="en-US" xsi:schemaLocation="http://release.niem.gov/niem/appinfo/5.0/ ../utility/appinfo.xsd http://release.niem.gov/niem/conformanceTargets/3.0/ ../utility/conformanceTargets.xsd" ct:conformanceTargets="http://reference.niem.gov/niem/specification/naming-and-design-rules/5.0/#ReferenceSchemaDocument"
  xmlns:appinfo="http://release.niem.gov/niem/appinfo/5.0/"
  xmlns:cbrn="http://release.niem.gov/niem/domains/cbrn/5.0/"
  xmlns:ct="http://release.niem.gov/niem/conformanceTargets/3.0/"
  xmlns:iso_3166="http://release.niem.gov/niem/codes/iso_3166-1/5.0/"
  xmlns:iso_4217="http://release.niem.gov/niem/codes/iso_4217/5.0/"
  xmlns:it="http://release.niem.gov/niem/domains/internationalTrade/5.0/"
  xmlns:itcodes="http://release.niem.gov/niem/codes/it_codes/5.0/"
  xmlns:j="http://release.niem.gov/niem/domains/jxdm/7.0/"
  xmlns:nc="http://release.niem.gov/niem/niem-core/5.0/"
  xmlns:niem-xs="http://release.niem.gov/niem/proxy/niem-xs/5.0/"
  xmlns:scr="http://release.niem.gov/niem/domains/screening/5.0/"
  xmlns:structures="http://release.niem.gov/niem/structures/5.0/"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <xs:annotation>
    <xs:documentation>International Trade</xs:documentation>
    <xs:appinfo>
      <appinfo:LocalTerm term="ChA1" literal="HMRC Charity application form"/>
      <appinfo:LocalTerm term="CHAI" literal="HMRC Charity application form"/>
      <appinfo:LocalTerm term="Deconsolidator" definition="A receiving party of a consolidated shipment, who divides the latter into its original single consignments and undertakes to make them available to be delivered."/>
      <appinfo:LocalTerm term="EMS" literal="Emergency Medical Service"/>
      <appinfo:LocalTerm term="FTZ" literal="Foreign Trade Zone"/>
      <appinfo:LocalTerm term="HTS" literal="Harmonized Tariff Schedule"/>
      <appinfo:LocalTerm term="IATA" literal="International Air Transport Association"/>
      <appinfo:LocalTerm term="IMO" literal="International Maritime Organization"/>
      <appinfo:LocalTerm term="INCOTERMS" literal="International Commercial Terms"/>
      <appinfo:LocalTerm term="ISO" literal="International Organization for Standardization"/>
      <appinfo:LocalTerm term="ISO6346" definition="ISO 6346 is an international standard covering the coding, identification and marking of intermodal (shipping) containers used within containerized intermodal freight transport."/>
      <appinfo:LocalTerm term="MFA" literal="Multi Fibre Arrangement"/>
      <appinfo:LocalTerm term="NTN" literal="National Training Numbers"/>
      <appinfo:LocalTerm term="SCAC" literal="Standard Carrier Alpha Code"/>
      <appinfo:LocalTerm term="Transhipment" definition="The shipment of goods or containers to an intermediate destination, then to another destination."/>
      <appinfo:LocalTerm term="UCR" literal="Unique Customs Reference"/>
      <appinfo:LocalTerm term="UNDG" literal="United Nations Development Group"/>
      <appinfo:LocalTerm term="VIR" literal="Vehicle Inspection Report"/>
      <appinfo:LocalTerm term="WCO" literal="World Customs Organization"/>
    </xs:appinfo>
  </xs:annotation>
  <xs:import namespace="http://release.niem.gov/niem/codes/iso_3166-1/5.0/" schemaLocation="../codes/iso_3166.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/codes/iso_4217/5.0/" schemaLocation="../codes/iso_4217.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/codes/it_codes/5.0/" schemaLocation="../codes/it_codes.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/domains/cbrn/5.0/" schemaLocation="cbrn.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/domains/jxdm/7.0/" schemaLocation="jxdm.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/domains/screening/5.0/" schemaLocation="screening.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/niem-core/5.0/" schemaLocation="../niem-core.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/proxy/niem-xs/5.0/" schemaLocation="../adapters/niem-xs.xsd"/>
  <xs:import namespace="http://release.niem.gov/niem/structures/5.0/" schemaLocation="../utility/structures.xsd"/>
  <xs:complexType name="AdditionalDocumentType">
    <xs:annotation>
      <xs:documentation>A data type for an applied augmentation for type nc:DocumentType</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:AdditionalDocumentName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AdditionalDocumentRefNumberID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Address" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AdditionalDocumentCategoryAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AdditionalDocumentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="AdditionalInformationType">
    <xs:annotation>
      <xs:documentation>A data type for an applied augmentation for type nc:DocumentType</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:AdditionalStatementDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AdditionalStatementCategoryCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InspectionRequestDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CertificateContentText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:StateName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="scr:StateCategoryAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AdditionalInformationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="AgentType">
    <xs:annotation>
      <xs:documentation>A data type for a party authorized to act on behalf of another person, organization or thing.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:AgentIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AgentQualityAssuranceIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AgentStatusCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AgentStatusText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AgentAuthorizationIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AgentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ArrivalType">
    <xs:annotation>
      <xs:documentation>A data type for the arrival activity of a vessel, person, conveyance etc..</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ActivityType">
        <xs:sequence>
          <xs:element ref="it:EstimatedArrivalDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ActualArrivalDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ArrivalAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="BorderTransportMeansType">
    <xs:annotation>
      <xs:documentation>A data type for a means of transport used in crossing a border.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="it:TransportMeansType">
        <xs:sequence>
          <xs:element ref="it:BorderTransportMeansNationalityText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Itinerary" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportEquipment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansActualFirstDepartureDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansActualFirstArrivalDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Master" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CrewMember" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NonVesselOperatingCarrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Carrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsortiumCarrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansStayIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansConsignmentUnloadingDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansCrewQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansGrossWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansNetWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansPassengerQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansCallPurposeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansContainerQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansDepartureDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansArrivalDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansVesselHeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansVesselLengthMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BorderTransportMeansAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="BrokerType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of a party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:BrokerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BrokerIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BrokerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="BuyerType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of a party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:BuyerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BuyerIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BuyerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CarrierType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:CarrierCodeAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CommodityType">
    <xs:annotation>
      <xs:documentation>A data type for a description of the nature of a goods item sufficient to identify it for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ItemType">
        <xs:sequence>
          <xs:element ref="it:CommodityCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityGoodsDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityUNDGIdentificationText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsGeneticModificationIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsIngredientsDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsModelNumberText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsBrandNameText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsTariffCodeExtensionsText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsGradingClassificationText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityHTSCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CommunicatorAddressType">
    <xs:annotation>
      <xs:documentation>A data type for a type of communication address</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:AddressType">
        <xs:sequence>
          <xs:element ref="it:CommunicatorAddressCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommunicatorAddressAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsigneeType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of party to which goods are consigned.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ConsigneeIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsigneeIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsigneeAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsignmentContainerAssociationType">
    <xs:annotation>
      <xs:documentation>A data type for an association between the consignment and the container in which it is transported.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:AssociationType">
        <xs:sequence>
          <xs:element ref="it:Consignment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentContainerAssociationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsignmentItemType">
    <xs:annotation>
      <xs:documentation>A data type for a description of the nature of an item sufficient to identify it for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ItemType">
        <xs:sequence>
          <xs:element ref="it:ConsignmentItemMaterialText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemShapeDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:EquipmentIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Document" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsProcedure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CountryOfOrigin" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Commodity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemPackaging" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DepartureTransportMeans" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SequenceNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentValue" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemVolumeMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:HazardousMaterialData" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemShapeAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExaminationPlaceAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItemAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsignmentType">
    <xs:annotation>
      <xs:documentation>A data type for the specific shipment sent by a consignor to a named consignee.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ActivityType">
        <xs:sequence>
          <xs:element ref="it:ConsignmentRoutingCountryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierSplitConsignmentIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TraderDeclarationReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerTransportIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SequenceNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ArrivalTransportMeans" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DepartureTransportMeans" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TranshipmentLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BorderTransportMeans" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UnloadingLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomsDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportContractDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:AssociatedTransportDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransitCustomsOffice" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsConsignedPlaceName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsReceivedPlaceName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransitDestination" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:FreightPaymentCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:HandlingInstructionsText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentPackaging" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransitControlText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentItem" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportEquipment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateCarrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateConsignee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Carrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignor" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UNDGContact" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsignorType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of the party consigning goods as stipulated in the transport contract by the party ordering transport.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ConsignorIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignorIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsignorAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsolidatorType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of the freight forwarder combining individual smaller consignments into a single larger shipment so called consolidated shipment) that is sent to a counterpart who mirrors the consolidator's activity by dividing the consolidated consignment into its original components.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ConsolidatorIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsolidatorIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsolidatorAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ConsortiumCarrierType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of the consortium carrier.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ConsortiumCarrierIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsortiumCarrierIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ConsortiumCarrierAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ContainerTerminalOperatorType">
    <xs:annotation>
      <xs:documentation>A data type representing the Container Terminal Operator</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ContainerTerminalOperatorIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerTerminalOperatorIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerTerminalOperatorAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CurrencyExchangeType">
    <xs:annotation>
      <xs:documentation>A data type for an exchange of currency for a specified country</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:RateOfExchangePercent" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="iso_4217:CurrencyCode" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CurrencyExchangeAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CustomsDocumentType">
    <xs:annotation>
      <xs:documentation>A data type for a document category that facilitates implementation of a system of tolls, tariffs, taxes, and regulation of international trade.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:CustomsDocumentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CustomsGoodsItemType">
    <xs:annotation>
      <xs:documentation>A data type for a value declared for purposes of those goods in a consignment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="it:GoodsItemType">
        <xs:sequence>
          <xs:element ref="it:Commodity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsCustomsAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ValuationAdjustment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsProcedure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomsDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SequenceNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsGoodsItemAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CustomsProcedureType">
    <xs:annotation>
      <xs:documentation>A data type for a specific activity required for Customs</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ActivityType">
        <xs:sequence>
          <xs:element ref="it:GoodsProcedureCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsPreviousProcedureCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsProcedureOverrideCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityGoodsDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsProcedureAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="CustomsValuationType">
    <xs:annotation>
      <xs:documentation>A data type for a cost incurred by the shipper in moving goods.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:FreightCostAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Charges" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ValuationMethodCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ApportionmentQualifierText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyRelationshipIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:OtherChargesDeductionsAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsValuationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DeclarationPackagingType">
    <xs:annotation>
      <xs:documentation>A data type that provides the details description of the packaging.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TotalNumberOfPackagesNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingMarksText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackagesCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationPackagingAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DeclarationType">
    <xs:annotation>
      <xs:documentation>A data type that describes a formal statement made for use in International Trade office mostly for customs purpose.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:DeclarationTotalGrossWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationTotalInvoiceAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Document" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationIssueDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationAcceptanceDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationIssuePlace" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationDocumentNameCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationDocumentReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationGoodsDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationTotalItemsQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsOfficeDutyTaxPaymentText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DocumentMessageFunctionCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RepresentativePerson" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Agent" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Importer" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Exporter" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Broker" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Stevedore" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Carrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:BorderTransportMeans" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UnloadingLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationPackaging" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ObligationGuarantee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:StuffingEstablishment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UCR" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsShipment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExitCustomsOfficeLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CurrencyExchange" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerTerminalOperator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DocumentFunctionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DocumentAuthenticationText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationCustomsOfficeLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsDeclarationCustomsIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationTraderAssignedIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeclarationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DeconsolidatorType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of the receiving party of a consolidated shipment, who divides the latter into its original single consignments and undertakes to make them available to be delivered.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:DeconsolidatorIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeconsolidatorIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeconsolidatorAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DepartureType">
    <xs:annotation>
      <xs:documentation>A data type for a departure from a crossing or other location for a means of transport</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ActivityType">
        <xs:sequence>
          <xs:element ref="it:EstimatedDepartureDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ActualDepartureDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DepartureAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DocumentAugmentationType">
    <xs:annotation>
      <xs:documentation>A data type for additional information about a document.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:AugmentationType">
        <xs:sequence>
          <xs:element ref="it:DocumentIssueLocationIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DocumentFreeText" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="DutyTaxFeeType">
    <xs:annotation>
      <xs:documentation>A data type for a fee associated with a customs duty tax or tariff.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ObligationType">
        <xs:sequence>
          <xs:element ref="it:DutyTaxFeeAssessmentBasisQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeAssessmentBasisAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeAssessmentAmountOwedAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeRegimeCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeReductionAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeReductionQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Obligation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxFeeAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="EquipmentAugmentationType">
    <xs:annotation>
      <xs:documentation>A data type for additional information about equipment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:AugmentationType">
        <xs:sequence>
          <xs:element ref="it:EquipmentCharacteristicText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:EquipmentLegalStatusIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:EquipmentLoadedStatusText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:EquipmentSealIdentification" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ExporterType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of party who makes - or on whose behalf - the export declaration - is made - and who is the owner of the goods or has similar right of disposal over them at the time when the declaration is accepted.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ExporterIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExporterIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExporterAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GoodsItemType">
    <xs:annotation>
      <xs:documentation>A data type for a specific Item sent for sale, storage, or shipment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ItemType">
        <xs:sequence>
          <xs:element ref="it:GoodsMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CountryOfOrigin" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Document" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Manufacturer" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ProcessingEstablishment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingProofParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsItemStatisticalValueAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsValuation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsStatus" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExaminationPlaceAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsItemAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GoodsLocationType">
    <xs:annotation>
      <xs:documentation>A data type for a name of the place where goods are located.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:LocationType">
        <xs:sequence>
          <xs:element ref="it:GoodsLocationCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GoodsMeasureType">
    <xs:annotation>
      <xs:documentation>A data type for a weight measurement characteristic.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:MeasureType">
        <xs:sequence>
          <xs:element ref="it:GoodsItemLevelWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsNetWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsTariffQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodVolumeMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsMeasureAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GoodsOriginType">
    <xs:annotation>
      <xs:documentation>A data type to identify the place of origin for the goods manufactured or produced.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:LocationType">
        <xs:sequence>
          <xs:element ref="it:GoodsManufacturedCountryOriginAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsManufacturedRegionOriginAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsOriginAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GoodsShipmentType">
    <xs:annotation>
      <xs:documentation>A data type for a shipment of goods</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ActivityType">
        <xs:sequence>
          <xs:element ref="it:GoodsNatureClassificationText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Buyer" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Seller" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Warehouse" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsValuation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TradeTerm" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Invoice" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:EntryCustomsOfficeLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UCR" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CustomsGoodsItem" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignment" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignor" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consignee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DeliveryDestination" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExitCustomsOfficeLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Exporter" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Importer" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Broker" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Declaration" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ForeignTradeZone" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SequenceNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ExitDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsCountryExportAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:GoodsShipmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="HazardousMaterialDataType">
    <xs:annotation>
      <xs:documentation>A data type providing details of a hazardous material; i.e., a Substance Type that may cause harm.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:SubstanceType">
        <xs:sequence>
          <xs:element ref="it:PackageGroupCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UNDGCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IMOClassCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IMOSubsidiaryClassCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:MFACodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:EMSCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PrimaryPlacardCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SecondaryPlacardCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:MarinePollutantIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LimitedQuantityIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ResidueIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ReportableQuantityIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:FlashPointMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ProperShippingName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TechnicalName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NetExplosiveContentText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:HazardousMaterialContactInfo" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:HazardousMaterialDataAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ImporterType">
    <xs:annotation>
      <xs:documentation>A data type providing the name [and address] of party who makes-or on whose behalf a Customs clearing agent or other authorized person makes- an import declaration. This may include a person who has possession of the goods or to whom the goods are consigned.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ImporterIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ImporterIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ImporterAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="IntermediateCarrierType">
    <xs:annotation>
      <xs:documentation>A data type representing a transit (in-bond) movement, the identity of the carrier's which transport the goods from consignor to exporting carrier and from importing carrier to consignee. A party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:IntermediateCarrierIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateCarrierIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateCarrierAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="IntermediateConsigneeType">
    <xs:annotation>
      <xs:documentation>A data type representing the transit (in-bond) movement, the identity of the intermediate consignee who may take possession of the goods from consignor to exporting carrier and from importing carrier to consignee.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:IntermediateConsigneeIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateConsigneeIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:IntermediateConsigneeAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="InvoiceLineType">
    <xs:annotation>
      <xs:documentation>A data type for an invoice line item.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:LineCommodity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceLineNumberID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItemAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceLineAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="InvoiceType">
    <xs:annotation>
      <xs:documentation>A data type for a non-negotiable commercial instrument issued by a seller to a buyer</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:InvoiceCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceSequenceNumeric" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceLine" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:InvoiceAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ItineraryType">
    <xs:annotation>
      <xs:documentation>A data type to provide additional information describing a place of departure and arrival and associated dates during a trip by a conveyance.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:ItineraryLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryArrivalPlannedDateTime" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryDeparturePlannedDateTime" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryArrivalActualDateTime" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryDepartureActualDateTime" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryStartIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryEndIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryArrivalDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryDepartureDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryLocationCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryLocationKindAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ItineraryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="LoadingLocationType">
    <xs:annotation>
      <xs:documentation>A data type for a name of a seaport, airport, freight terminal, rail station or other place at which goods are loaded onto the transport means used for their carriage.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:LocationType">
        <xs:sequence>
          <xs:element ref="it:LoadingLocationIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingLocationCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingLocationDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LoadingLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="LocationFunctionType">
    <xs:annotation>
      <xs:documentation>A data type for a location categorized on the function that it performs</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:LocationFunctionDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LocationFunction" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LocationFunctionAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ManifestAugmentationType">
    <xs:annotation>
      <xs:documentation>A data type for additional information about a manifest.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:AugmentationType">
        <xs:sequence>
          <xs:element ref="it:Carrier" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CarrierName" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ManufacturerType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of party which manufactures goods.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ManufacturerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ManufacturerIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ManufacturerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="MasterType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name of the Master of a means of transport such as a vessel.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:OrganizationType">
        <xs:sequence>
          <xs:element ref="it:MasterIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:MasterIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:MasterNationalityText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:MasterAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="MaterialHandlingEquipmentType">
    <xs:annotation>
      <xs:documentation>A data type for an item of equipment used to move goods and materials between places of resting or use and conveyances that transport the goods and materials.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="it:TransportEquipmentType">
        <xs:sequence>
          <xs:element ref="it:MaterialHandlingEquipmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="NonVesselOperatingCarrierType">
    <xs:annotation>
      <xs:documentation>A data type representing a common carrier that does not operate the vessels.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:NonVesselOperatingCarrierIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NonVesselOperatingCarrierIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NonVesselOperatingCarrierAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="NotifyPartyType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of party to be notified.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:NotifyPartyIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyPartyIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyPartyAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ObligationAugmentationType">
    <xs:annotation>
      <xs:documentation>A data type for additional information about an obligation.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:AugmentationType">
        <xs:sequence>
          <xs:element ref="it:PaymentMethodCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ObligationGuarantee" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DutyTaxPaymentMethodAbstract" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ObligationGuaranteeType">
    <xs:annotation>
      <xs:documentation>A data type for a set of details of how the obligation will be fulfilled</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:GuaranteeReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SecurityDetailsCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ObligationGuaranteeAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PackageType">
    <xs:annotation>
      <xs:documentation>A data type for an item packaged for containment, preservation, promotion, and/or protection of an article.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:ItemType">
        <xs:sequence>
          <xs:element ref="it:PackageCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackageItemQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackageShippingMarksDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackageTotalQuantity" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackageItemCategoryAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PackageAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PartyContactAssociationType">
    <xs:annotation>
      <xs:documentation>A data type for an association between a party and its contact information.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:AssociationType">
        <xs:sequence>
          <xs:element ref="it:Party" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:ContactInformation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyContactAssociationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PartyIDCategoryType">
    <xs:annotation>
      <xs:documentation>A data type for a category of Party ID</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:RoleOfPartyCategoryDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfPartyCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyIDCategoryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PartyIDType">
    <xs:annotation>
      <xs:documentation>A data type for the unique identity associated with an Organization, Person or Thing</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:PartyIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyIDCodeDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyIDAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PartyType">
    <xs:annotation>
      <xs:documentation>A data type for a Organization, Person or Thing associated with processing a Cargo entry.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:PartyID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Organization" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:Person" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PartyAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PersonAugmentationType">
    <xs:annotation>
      <xs:documentation>A data type for additional information about a person.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:AugmentationType">
        <xs:sequence>
          <xs:element ref="it:PersonFunctionText" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="PreviousCustomsDocumentType">
    <xs:annotation>
      <xs:documentation>A data type for a customs document that has been superseded by a more recent document.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:PreviousCustomsDocumentDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomsDocumentNumberID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomsDocumentCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:PreviousCustomsDocumentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ProcessingEstablishmentType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of slaughtering, freezing, or other processing establishment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:OrganizationType">
        <xs:sequence>
          <xs:element ref="it:ProcessingEstablishmentIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ProcessingEstablishmentIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ProcessingEstablishmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="RepresentativePersonType">
    <xs:annotation>
      <xs:documentation>A data type for a name [and address] of a person representing an organization</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:PersonType">
        <xs:sequence>
          <xs:element ref="it:RepresentativePersonFunctionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RepresentativePersonAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="RoleOfOrganizationCategoryType">
    <xs:annotation>
      <xs:documentation>A data type for the role played by the Party/Organization in the given context of a transaction</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:RoleOfOrganizationCategoryDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfOrganizationCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfOrganizationCategoryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="SealType">
    <xs:annotation>
      <xs:documentation>A data type for information regarding a seal.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:SealID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SealIssuerName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SealIntactStatusAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SealVerificationStatusAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TradeParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:RemarkText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SealAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="SellerType">
    <xs:annotation>
      <xs:documentation>A data type for a Name [and address] of a party selling merchandise or services to a buyer</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:SellerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SellerIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SellerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ShippingContainerIdentificationType">
    <xs:annotation>
      <xs:documentation>A data type for a shipping container identification number.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ContainerID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:IDAcquisitionMethodAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerIdentificationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ShippingContainerLastLocationType">
    <xs:annotation>
      <xs:documentation>A data type for the last known location of a shipping container.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:LastLocationDateTime" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SectorID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:SectorPosition" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerLastLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ShippingContainerReferenceIDType">
    <xs:annotation>
      <xs:documentation>A data type for an identifier referenced to a shipping container.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ContainerBookingID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerBillOfLadingID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerShipmentID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerReferenceIDAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ShippingContainerType">
    <xs:annotation>
      <xs:documentation>A data type for a reusable container for transporting goods and materials.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="it:TransportEquipmentType">
        <xs:sequence>
          <xs:element ref="it:ShippingContainerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerSizeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ContainerEmptyWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerLoadedWeightMeasure" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerLastLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:VIRNumberText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Seal" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportActivityLocationInfo" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CommodityInfo" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerCargoItem" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerLoadedText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerLegalStatusIndicator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerISO6346Abstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerKindAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:ConveyanceColorPrimaryCode" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:ConveyanceColorSecondaryCode" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:RemarkText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ShippingContainerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="StevedoreType">
    <xs:annotation>
      <xs:documentation>A data type representing a party loading or unloading the cargo of (a ship) or vessel</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:StevedoreIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:StevedoreIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:StevedoreAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="StuffingEstablishmentType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of the location where the goods are loaded into the transport equipment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:StuffingEstablishmentIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:StuffingEstablishmentIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:StuffingEstablishmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TradePartyType">
    <xs:annotation>
      <xs:documentation>A data type for information about a trading party.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:CarrierSCACText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NTNPassportNumberID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:InternationalTelephoneNumber" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressDeliveryPointText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressCityName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CHAINumberText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WarehouseLicenseNumberText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CollectorateText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:OrganizationName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressCountry" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressState" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:RemarkText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TradePartyAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TradeTermType">
    <xs:annotation>
      <xs:documentation>A data type for a trade terms name of the point or port of departure, shipment or destination, as required under the applicable terms of delivery, e.g. Incoterm.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:INCOTERMSPlace" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:INCOTERMSPlaceCategoryCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:INCOTERMSDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:INCOTERMSCategoryCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CountryRelationshipCategoryCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TradeTermAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TranshipmentLocationType">
    <xs:annotation>
      <xs:documentation>A data type for a general description of the cargo commodities.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:LocationType">
        <xs:sequence>
          <xs:element ref="it:TranshipmentPlaceName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TranshipmentPlaceCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TranshipmentLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransitPrincipalType">
    <xs:annotation>
      <xs:documentation>A data type for a party accepting liability for goods held or moving under a Customs authorization and - when applicable - a guarantee.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TransitPrincipalName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransitPrincipalIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransitPrincipalAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportActivityLocationType">
    <xs:annotation>
      <xs:documentation>A data type to provide information regarding locations at which activities associated with a container are known to have occurred.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TransportActivityLocation" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:LocationName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:LocationActivityAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressCountry" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:AddressState" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportActivityLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportContractDocumentType">
    <xs:annotation>
      <xs:documentation>A data type for a contract between multiple parties pertaining to cargo shipments e.g. export shipment with a carrier i.e. bill of lading(s) or manifest.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:TransportContractDocumentReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportContractDocumentCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportDocumentIssuePlace" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Consolidator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Deconsolidator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportContractDocumentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportEquipmentType">
    <xs:annotation>
      <xs:documentation>A data type representing the equipment used in Means of Transport</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:EquipmentType">
        <xs:sequence>
          <xs:element ref="it:TransportEquipmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportMeansOperatorType">
    <xs:annotation>
      <xs:documentation>A data type representing the registered operator of means of transport.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TransportMeansOperatorIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Party" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="j:DriverLicenseEndorsementText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="nc:PersonPassportIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansOperatorAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportMeansOwnerType">
    <xs:annotation>
      <xs:documentation>A data type representing the registered owner of means of transport.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TransportMeansOwnerIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:Party" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansOwnerAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="TransportMeansType">
    <xs:annotation>
      <xs:documentation>A data type to identify the means of transport used.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:TransportMeansName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansConveyanceReferenceIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansFirstArrival" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansBorderCrossingIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansBorderCrossingName" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansOperator" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansOwner" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportContractDocument" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansArrival" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansConveyance" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansDeparture" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansItinerary" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansModeOfTransportationAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="cbrn:RemarkText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:TransportMeansAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="UCRType">
    <xs:annotation>
      <xs:documentation>A data type for an UCR (Unique Customs Reference)</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:DocumentType">
        <xs:sequence>
          <xs:element ref="it:TraderDeclarationReferenceID" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UCRAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="UNDGContactType">
    <xs:annotation>
      <xs:documentation>A data type representing the Name [and address] of dangerous goods contact person or party who can provide detailed information concerning the dangerous goods shipment</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:UNDGContactIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UNDGContactIDCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:RoleOfParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UNDGContactAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="UNDGNumberCodeTextType">
    <xs:annotation>
      <xs:documentation>A data type for a textual description occurring with the UNDG code for a hazardous material type.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="nc:TextType"/>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name="UnloadingLocationType">
    <xs:annotation>
      <xs:documentation>A data type for a location where freight cargo (containers, equipment) is unloaded from a conveyance.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:LocationType">
        <xs:sequence>
          <xs:element ref="it:UnloadingLocationDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CargoWarehouseDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:CargoWarehouseIdentification" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:NotifyParty" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UnloadingLocationCategoryAbstract" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:UnloadingLocationAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="ValuationAdjustmentType">
    <xs:annotation>
      <xs:documentation>A data type for an adjustment to the valuation amounts.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:ValuationAdjustmentPercent" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ValuationAdditionsCode" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ValuationAdjustmentAmount" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:ValuationAdjustmentAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="WarehouseType">
    <xs:annotation>
      <xs:documentation>A data type for a warehouse</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="nc:FacilityType">
        <xs:sequence>
          <xs:element ref="it:WarehouseCategoryCodeText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WarehouseDate" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WarehouseAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="WCODocumentCategoryType">
    <xs:annotation>
      <xs:documentation>A data type for a category of a document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:WCODocumentCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WCODocumentCategoryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="WCODocumentFunctionCategoryType">
    <xs:annotation>
      <xs:documentation>A data type for the codes that categorized the documents based on the functionality addressed by the document.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:DocumentFunctionCategoryDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WCODocumentFunctionCategory" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WCODocumentFunctionCategoryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="WCODocumentNameCategoryType">
    <xs:annotation>
      <xs:documentation>A data type for the codes that categorized the documents based on the functionality addressed by the document.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="structures:ObjectType">
        <xs:sequence>
          <xs:element ref="it:DocumentNameCategoryDescriptionText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:DocumentNameCategoryText" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="it:WCODocumentNameCategoryAugmentationPoint" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="ActualArrivalDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date (actual date) on which a shipment arrives</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ActualDepartureDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>An actual date and time of departure of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocument" type="it:AdditionalDocumentType" substitutionGroup="nc:Document" nillable="true">
    <xs:annotation>
      <xs:documentation>An applied augmentation for type nc:DocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocumentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for AdditionalDocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocumentCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code specifying the category of AdditionalDocument</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocumentCategoryCode" type="itcodes:DocumentCategoryCodeType" substitutionGroup="it:AdditionalDocumentCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A Code specifying the category of AdditionalDocument</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocumentName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name for the Additional Document</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalDocumentRefNumberID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier for the Additional Document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalInformation" type="it:AdditionalInformationType" substitutionGroup="nc:Document" nillable="true">
    <xs:annotation>
      <xs:documentation>An applied augmentation for type nc:DocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalInformationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for AdditionalInformationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalStatementCategoryCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Code specifying the category of statement description.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AdditionalStatementDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the Additional statement</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Agent" type="it:AgentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type for additional information about a party authorized to act on behalf of another person, organization or thing.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for AgentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentAuthorizationIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code categorizing the identification of a party to act on behalf of another party.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification for a representation of an identity.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentQualityAssuranceIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if Agent Quality Assurance Level should be used; false otherwise/if the Agent Quality Assurance Level should not used.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentStatusCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the capacity in which agent is acting</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AgentStatusText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A capacity in which the agent is acting.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ApportionmentQualifierText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A method of the proportional allocation of freight charges for each consignment in a multi consignment declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Arrival" type="nc:ActivityType" nillable="true">
    <xs:annotation>
      <xs:documentation>An Activity where a person, conveyance, or other objects comes to a specified location from another location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ArrivalAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ArrivalType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ArrivalTransportMeans" type="it:TransportMeansType" nillable="true">
    <xs:annotation>
      <xs:documentation>A means of transport used in the arrival.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="AssociatedTransportDocument" type="nc:DocumentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A type of associated transport document in a secondary cargo report</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BorderTransportMeans" type="it:BorderTransportMeansType" nillable="true">
    <xs:annotation>
      <xs:documentation>A means of transport used in crossing a border.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BorderTransportMeansAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for BorderTransportMeansType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BorderTransportMeansNationalityText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A nationality of the active means of transport used in crossing the border.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Broker" type="it:BrokerType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type describing the name [and address] of a party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BrokerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for BrokerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BrokerIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code which identified a party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BrokerIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Broker</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Buyer" type="it:BuyerType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BuyerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for BuyerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BuyerIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code which identified a party to which merchandise or services are sold.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="BuyerIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Buyer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CargoWarehouseDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of arrival of the cargo at the unloading Cargo Warehouse.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CargoWarehouseIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification for a Cargo Warehouse.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Carrier" type="it:CarrierType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CarrierType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierCodeAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for containing the code assigned to an organization recognized as an authorized conveyance owner</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierCodeText" type="nc:TextType" substitutionGroup="it:CarrierCodeAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the code assigned to an organization recognized as an authorized conveyance owner</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierCodeTextIATACarrierCodeText" type="nc:TextType" substitutionGroup="it:CarrierCodeAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code assigned to an IATA organization recognized as an authorized conveyance owner</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code for the Identifier to identify a party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a organization recognized as an authorized conveyance owner</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the carrier providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierSCACText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Standard Carrier Alpha Code if the trade party organization is a Carrier.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CarrierSplitConsignmentIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the Carrier has split the load of a consignment; false otherwise/if the consignment load has not been split.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CertificateContentText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the content of official certification, legislation or stamp, etc.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CHAINumberText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier used on customs forms in Pakistan.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Charges" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An aggregate cost of freight, insurance and all other costs and expenses from the foreign exit location to the entry location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CollectorateText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Customs Collectorate Identifier used on customs forms in a host country.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Commodity" type="it:CommodityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A sufficient identification of the nature of a goods item for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CommodityType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of goods for Customs, transport, statistical or other regulatory purposes (generic term).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityGoodsDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the nature of a goods item sufficient to identify it for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityHTSCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A harmonized Code Text for the commodity.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityInfo" type="it:CommodityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of information regarding commodities in a container as stated in the container's documentation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommodityUNDGIdentificationText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An United Nations Dangerous Goods Identifier (UNDG) is the unique serial number assigned within the United Nations to substances and articles contained in a list of the dangerous goods most commonly carried.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommunicatorAddress" type="it:CommunicatorAddressType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type identifying a type of communication address</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommunicatorAddressAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CommunicatorAddressType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CommunicatorAddressCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of or type of communication address.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Consignee" type="it:ConsigneeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party to which goods are consigned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsigneeAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsigneeType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsigneeIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An Identifier Category to identify a party to which goods are consigned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsigneeIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Consignee</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Consignment" type="it:ConsignmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of goods shipped or delivered under a consignment sale agreement.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsignmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentContainerAssociation" type="it:ConsignmentContainerAssociationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An association between the consignment and the container in which it is transported.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentContainerAssociationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsignmentContainerAssociationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique number identification assigned to goods, both for import and export.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItem" type="it:ConsignmentItemType" nillable="true">
    <xs:annotation>
      <xs:documentation>A sufficient identification of the nature of an item for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsignmentItemType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification information of a consignment Item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemMaterialText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of the material that comprises a Consignment Item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemPackaging" type="it:PackageType" nillable="true">
    <xs:annotation>
      <xs:documentation>An individual consignment item's packaging information.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemShapeAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a shape of a consignment Item. If shape is Other, then a description should be provided in it:ConsignmentItemShapeDescriptionText.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemShapeCode" type="itcodes:ShapeCodeType" substitutionGroup="it:ConsignmentItemShapeAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A shape of a consignment Item. If shape is Other, then a description should be provided in it:ConsignmentItemShapeDescriptionText.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemShapeDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the shape of a consignment item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentItemVolumeMeasure" type="nc:VolumeMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A volumetric measure of a consignment item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentPackaging" type="it:PackageType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Consignment's packaging information.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentRoutingCountryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A country through which goods or passengers are routed between the country of original departure and final destination.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignmentValue" type="nc:ItemValueType" nillable="true">
    <xs:annotation>
      <xs:documentation>A taxable value of the Consignment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Consignor" type="it:ConsignorType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party consigning goods as stipulated in the transport contract by the party ordering transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignorAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsignorType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignorIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify the party consigning goods as stipulated in the transport contract by the party ordering transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsignorIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Consignor</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Consolidator" type="it:ConsolidatorType" nillable="true">
    <xs:annotation>
      <xs:documentation>A freight forwarder combining individual smaller consignments into a single larger shipment so called consolidated shipment) that is sent to a counterpart who mirrors the consolidator's activity by dividing the consolidated consignment into its original components.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsolidatorAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsolidatorType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsolidatorIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the freight forwarder combining individual smaller consignments into a single larger shipment (so called consolidated shipment) hat is sent to a counterpart who mirrors the consolidator's activity by dividing the consolidated consignment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsolidatorIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Consolidator</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsortiumCarrier" type="it:ConsortiumCarrierType" nillable="true">
    <xs:annotation>
      <xs:documentation>A consortium carrier.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsortiumCarrierAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ConsortiumCarrierType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsortiumCarrierIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An assigned code for a consortium carrier.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ConsortiumCarrierIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Consortium Carrier</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerBillOfLadingID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a bill of lading that includes a container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerBookingID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a Booking that includes a container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerEmptyWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight of a container when empty.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a Container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerShipmentID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a Shipment that includes a container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerSizeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of a container size.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerTerminalOperator" type="it:ContainerTerminalOperatorType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Container Terminal Operator</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerTerminalOperatorAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ContainerTerminalOperatorType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerTerminalOperatorIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of the party operating a container terminal or similar facility.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerTerminalOperatorIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Container Terminal Operator</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ContainerTransportIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if goods are transported within a container; false otherwise/if goods are not transported in a container</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CountryOfOrigin" type="it:GoodsOriginType" nillable="true">
    <xs:annotation>
      <xs:documentation>A country of origin of goods shall be defined as the country where the goods were manufactured wholly (Article 31) or subjected to sufficient processing (Article 32) in accordance with the criteria laid down by this Customs Code or in accordance with ...</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CountryRelationshipCategoryCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An indication whether the place specified for the performance of a (contractual) obligation is located in the country where the declaration is made, in another member country of the same economic or Customs union, or in a third country.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CrewMember" type="nc:PersonType" nillable="true">
    <xs:annotation>
      <xs:documentation>A crew member.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CurrencyExchange" type="it:CurrencyExchangeType" nillable="true">
    <xs:annotation>
      <xs:documentation>An exchange of currency for a specified country</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CurrencyExchangeAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CurrencyExchangeType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsDocument" type="it:CustomsDocumentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A document category that facilitates implementation of a system of tolls, tariffs, taxes, and regulation of international trade.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsDocumentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for it:CustomsDocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsGoodsItem" type="it:CustomsGoodsItemType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type that describes the value declared for purposes of those goods in a consignment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsGoodsItemAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CustomsGoodsItemType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsItemIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A sequence number identification differentiating a specific goods item within a consignment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsOfficeDutyTaxPaymentText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify a location at which a subsequent declaration is lodged.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsProcedure" type="it:CustomsProcedureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of an Activity required for Customs.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsProcedureAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CustomsProcedureType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsStatus" type="nc:StatusType" nillable="true">
    <xs:annotation>
      <xs:documentation>A status of the item for Customs purposes at a particular point in time.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsValuation" type="it:CustomsValuationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A monetary representation of costs incurred by the shipper in moving goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="CustomsValuationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for CustomsValuationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Declaration" type="it:DeclarationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A formal statement made for use in International Trade office mostly for customs purpose.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationAcceptanceDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a declaration has been or will be accepted by Customs</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for DeclarationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationCustomsOfficeLocation" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a location at which a declaration is lodged.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationDocumentNameCategory" type="it:WCODocumentNameCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the category name of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationDocumentReferenceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>A reference identifier for a specific document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationGoodsDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a Goods declaration has been or will be accepted by Customs in accordance with Customs legislation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationIssueDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a declaration was issued and when appropriate, signed or otherwise authenticated.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationIssuePlace" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location at which a declaration was issued and when appropriate, signed or otherwise authenticated.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationPackaging" type="it:DeclarationPackagingType" nillable="true">
    <xs:annotation>
      <xs:documentation>A declaration of the type of packaging that the consignment is transported.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationPackagingAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for DeclarationPackagingType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationTotalGrossWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight (mass) of goods including packaging but excluding the carriers equipment for a declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationTotalInvoiceAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A total of all invoice amounts declared in a single declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationTotalItemsQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A count of the total number of goods items within a declaration</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeclarationTraderAssignedIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A reference identification assigned by a trader to a declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Deconsolidator" type="it:DeconsolidatorType" nillable="true">
    <xs:annotation>
      <xs:documentation>A receiving party of a consolidated shipment, who divides the latter into its original single consignments and undertakes to make them available to be delivered.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeconsolidatorAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for DeconsolidatorType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeconsolidatorIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code identification of the receiving party of a consolidated shipment, who divides the latter into its original single consignments and undertakes to make them available to be delivered.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeconsolidatorIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Deconsolidator</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DeliveryDestination" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location to which goods are to be delivered. Address, region and/or country as required by national legislation or according to national requirements.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Departure" type="nc:ActivityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Departure from a crossing or other location for a means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DepartureAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for DepartureType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DepartureTransportMeans" type="it:TransportMeansType" nillable="true">
    <xs:annotation>
      <xs:documentation>A means of transport used in the departure.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentAugmentation" type="it:DocumentAugmentationType" substitutionGroup="nc:DocumentAugmentationPoint" nillable="true">
    <xs:annotation>
      <xs:documentation>Additional information about a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentAuthenticationText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An indication or proof that a document has been authenticated indicating where appropriate the authentication party.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentFreeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A free text field available to the message sender for information.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentFunctionCategoryDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of the function of the document that is presented to the Customs.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentFunctionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A function of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentIssueLocationIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a place at which an additional document was issued and when appropriate, signed or otherwise authenticated.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentMessageFunctionCategory" type="it:WCODocumentFunctionCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code indicating the function of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentNameCategoryDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of the category name of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DocumentNameCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of or category name of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFee" type="it:DutyTaxFeeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A fee associated with a customs duty tax or tariff.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A rate of duty or tax or fee applicable to commodities or of tax applicable to services.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeAssessmentAmountOwedAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An amount on which a duty or tax or fee is owed or obligated</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeAssessmentBasisAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A basis amount on which a duty or tax or fee will be assessed.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeAssessmentBasisQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A basis count on which a duty or tax or fee will be assessed.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for DutyTaxFeeType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of duty or tax applicable to commodities or a type of tax or fee applicable to services.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeReductionAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A reduced amount of duty/tax/fee (includes all types of charges and duties) due and amount of reduction (if applicable).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeReductionQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A reduction count on which the reduced amount of duty/tax/fee (includes all types of charges and duties) due and amount of reduction (if applicable).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeReferenceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of the reference number for a payment of a duty or tax.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxFeeRegimeCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of duty regime.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxPaymentMethodAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code identifying the method of payment for the Duty Tax.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="DutyTaxPaymentMethodCode" type="itcodes:DutyTaxPaymentMethodCodeType" substitutionGroup="it:DutyTaxPaymentMethodAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code identifying the method of payment for the Duty Tax.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EMSCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An EMS identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EntryCustomsOfficeLocation" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location type where Entry Customs Office is located.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EquipmentAugmentation" type="it:EquipmentAugmentationType" substitutionGroup="nc:EquipmentAugmentationPoint" nillable="true">
    <xs:annotation>
      <xs:documentation>Additional information about equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EquipmentCharacteristicText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A characteristic of a piece of transport equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EquipmentLegalStatusIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the equipment status is legal; false otherwise/if the equipment does not have legal status.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EquipmentLoadedStatusText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An indication of how full a piece of transport equipment is.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EquipmentSealIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification number of a seal affixed to a piece of equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EstimatedArrivalDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a shipment is estimated to be arriving</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="EstimatedDepartureDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date which is estimated to be the date and time of departure of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExaminationPlaceAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for an identification of a place where goods are to be examined if this place is different from the place where the goods are located</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExaminationPlaceCode" type="itcodes:ExaminationPlaceCategoryCodeType" substitutionGroup="it:ExaminationPlaceAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a place where goods are to be examined if this place is different from the place where the goods are located</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExitCustomsOfficeLocation" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location of the customs office at which the goods leave or are intended to leave the customs territory of dispatch.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExitDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date when the goods departs from last port, airport, or border post of customs territory whence consigned (country of export).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Exporter" type="it:ExporterType" nillable="true">
    <xs:annotation>
      <xs:documentation>A person who makes an export declaration or on whose behalf the export declaration is made. This is the owner of the goods or has similar right of disposal over them at the time when the declaration is accepted.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExporterAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ExporterType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExporterIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code for identification of party who makes, or on whose behalf the export declaration is made, and who is the owner of the goods or has similar rights of disposal over them at the time when the declaration is accepted.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ExporterIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Exporter</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="FlashPointMeasure" type="nc:TemperatureMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A temperature value of a hazardous material where there is a risk of explosion or ignition.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ForeignTradeZone" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a foreign trade zone or FTZ where particular goods shipment has been moved.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="FreightCostAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An amount of costs incurred by the shipper in moving goods, by whatever means, from one place to another under the terms of the contract of carriage. In addition to transport costs, this may include such elements as packing, documentation, loading, unloading, and ...</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="FreightPaymentCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the method of payment for Transport charges</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsBrandNameText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A brand name or distinct identifying name or term assigned by the seller for the goods to distinguish it from those of the other sellers.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsChargeableWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of the gross weight of goods on which a charge is to be based.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsConsignedPlaceName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the place in country from which the goods were initially dispatched to the importing country</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsCountryExportAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code used to identify the original exporting country for goods; without any commercial transaction in intermediate countries.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsCountryExportCode" type="iso_3166:CountryAlpha2CodeType" substitutionGroup="it:GoodsCountryExportAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code used to identify the original exporting country for goods; without any commercial transaction in intermediate countries.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsCustomsAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A monetary worth of goods for Customs Tariff purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsDeclarationCustomsIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification assigned or accepted by Customs, to identify a goods declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsDiameterMeasure" type="nc:LengthMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of the diameter of the Goods Item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsDrainedWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight (mass) value of the drained goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsGeneticModificationIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if there is whole or partially genetic modification of goods; false otherwise/if not whole or partially genetic modification of goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsGradingClassificationText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A plain text name or classification of the category, class, rating, or quality of goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsGrossVolumeMeasure" type="nc:VolumeMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A gross volume of the goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsGrossWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A gross weight (mass) of the goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsIngredientsDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the Components comprising the mixture or compound of the goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItem" type="it:GoodsItemType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of a specific Item sent for sale, storage, or shipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItemAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for GoodsItemType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItemLevelWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight of a line item including packaging but excluding the transport equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItemPackaging" type="it:PackageType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of packaging information on an individual Goods Item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItemShapeCode" type="itcodes:ShapeCodeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the geometric shape or appearance of an item sent for sale, storage, or shipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsItemStatisticalValueAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>A value declared for statistical purposes of those goods in a consignment which have the same statistical heading.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsLocation" type="it:GoodsLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of a place where goods are located in relation to a geographic or other referent.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for GoodsLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsLocationCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of place where goods are located.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsManufacturedCountryOriginAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code to identify the country in which the goods have been produced or manufactured, according to criteria laid down for the application of the Customs tariff or quantitative restrictions, or any measure related to trade.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsManufacturedCountryOriginCode" type="iso_3166:CountryAlpha2CodeType" substitutionGroup="it:GoodsManufacturedCountryOriginAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify the country in which the goods have been produced or manufactured, according to criteria laid down for the application of the Customs tariff or quantitative restrictions, or any measure related to trade.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsManufacturedRegionOriginAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a region in which the goods have been produced or manufactured, according to criteria laid down for the purposes of application of the Customs tariff, or quantitative restrictions, or of any other measure related to trade.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsManufacturedRegionOriginCode" type="iso_3166:CountryAlpha2CodeType" substitutionGroup="it:GoodsManufacturedRegionOriginAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A region in which the goods have been produced or manufactured, according to criteria laid down for the purposes of application of the Customs tariff, or quantitative restrictions, or of any other measure related to trade.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsMeasure" type="it:GoodsMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight measurement characteristics</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsMeasureAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for GoodsMeasureType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsModelNumberText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the reference assigned by a manufacturer to designate grouping of products within the same structural design.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsNatureClassificationText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the nature of a transaction associated with a shipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsNetVolumeMeasure" type="nc:VolumeMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A net Volume of goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsNetWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight (mass) value of the goods themselves without any packing.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsOriginAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for GoodsOriginType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsPreviousProcedureCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the Customs procedure, if any, which has been applied to the goods prior to the application of a different Customs procedure.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsProcedureCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying a procedure performed by Customs on goods which are subject to Customs control.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsProcedureOverrideCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying a request to override automatic processing procedures.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsReceivedPlaceName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the place at which the goods have been or are to be received by the consignee</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsShipment" type="it:GoodsShipmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the goods being shipped</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsShipmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for GoodsShipmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsTareWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of weight (mass) of the transport means for GoodsItem including the permanent equipment but excluding goods and loose accessories.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsTariffCodeExtensionsText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the additional tariff codes specification for types of goods for customs, transport, statistical or other regulatory purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsTariffCodeNumberCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of goods for purposes of customs, transport, statistics or regulations</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsTariffQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A count of the goods in the unit as required by Customs for tariff, statistical or fiscal purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsVolumeMeasure" type="nc:VolumeMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of metrics used to document the volume of the goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodsWeightMeasureSystemText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of measuring system used to document the weight of a goods item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GoodVolumeMeasure" type="nc:VolumeMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of the volume of goods themselves without any packing</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="GuaranteeReferenceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identifier for the obligation guarantee</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HandlingInstructionsText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of directions for handling a shipment and or delivery instructions for a shipment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HazardousMaterialContactInfo" type="nc:ContactInformationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A contact for obtaining more information on a hazardous material.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HazardousMaterialData" type="it:HazardousMaterialDataType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type providing details of a hazardous material.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HazardousMaterialDataAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for HazardousMaterialDataType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HazmatCommonName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A common name used for a hazardous material.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="HazmatShippingName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name used for a hazardous material on shipping documents.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IMOClassCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A IMO Classification identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IMOSubsidiaryClassCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A IMO Subsidiary classification identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Importer" type="it:ImporterType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party which makes - or on whose behalf a Customs clearing agent or other authorized person makes - an import declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ImporterAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ImporterType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ImporterIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code for Identifier of party who makes - or on whose behalf a Customs clearing agent or other authorized person makes - an import declaration. This may include a person who has possession of the goods or to whom the goods are consigned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ImporterIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Importer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="INCOTERMSCategoryCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the delivery or transport terms.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="INCOTERMSDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of delivery or transport terms.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="INCOTERMSPlace" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the point or port of departure, shipment or destination, as required under the applicable terms of delivery, e.g. Incoterm.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="INCOTERMSPlaceCategoryCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of the point or port of departure, shipment or destination, as required under the applicable delivery term.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InspectionRequestDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of physical examination by administration on applicants request.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateCarrier" type="it:IntermediateCarrierType" nillable="true">
    <xs:annotation>
      <xs:documentation>A transit (in-bond) movement, the identity of the carrier's which transport the goods from consignor to exporting carrier and from importing carrier to consignee. A party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateCarrierAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for IntermediateCarrierType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateCarrierIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A coded ID for a transit (in-bond) movement, the identity of the carrier's which transport the goods from consignor to exporting carrier and from importing carrier to consignee. A party providing the transport of goods between named points.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateCarrierIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Intermediate Carrier</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateConsignee" type="it:IntermediateConsigneeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A transit (in-bond) movement, the identity of the intermediate consignee who may take possession of the goods from consignor to exporting carrier and from importing carrier to consignee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateConsigneeAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for IntermediateConsigneeType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateConsigneeIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A coded ID for a transit (in-bond) movement, the identity of the intermediate consignee who may take possession of the goods from consignor to exporting carrier and from importing carrier to consignee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="IntermediateConsigneeIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Intermediate Consignee</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Invoice" type="it:InvoiceType" nillable="true">
    <xs:annotation>
      <xs:documentation>A non-negotiable commercial instrument issued by a seller to a buyer.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for InvoiceType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of or type of Invoice.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of issue of an invoice.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>A reference identifier for an invoice.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceLine" type="it:InvoiceLineType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a line of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceLineAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for InvoiceLineType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceLineNumberID" type="nc:NumericType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier to identify a line of an invoice document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="InvoiceSequenceNumeric" type="nc:NumericType" nillable="true">
    <xs:annotation>
      <xs:documentation>A number indicating the position in a sequence.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItemAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An amount value recorded on the line item</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Itinerary" type="it:ItineraryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A detailed plan for a journey including dates, times, location and modes of departure and arrival.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryArrivalActualDateTime" type="niem-xs:dateTime" nillable="true">
    <xs:annotation>
      <xs:documentation>An actual dateTime conveyance arrived at itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryArrivalDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a vessel arrives at itinerary port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryArrivalPlannedDateTime" type="niem-xs:dateTime" nillable="true">
    <xs:annotation>
      <xs:documentation>A planned dateTime conveyance arrived at itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ItineraryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryDepartureActualDateTime" type="niem-xs:dateTime" nillable="true">
    <xs:annotation>
      <xs:documentation>An actual dateTime conveyance departed from itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryDepartureDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which a vessel departs at itinerary port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryDeparturePlannedDateTime" type="niem-xs:dateTime" nillable="true">
    <xs:annotation>
      <xs:documentation>A planned dateTime conveyance departs from itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryEndIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the itinerary item is the ending point for a trip, voyage, flight, etc.; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the name of a single port of call or other location of the itinerary of a means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryLocation" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location of a place of arrival/departure by a conveyance during a trip.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryLocationCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of "port of call" or other location of the itinerary of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryLocationKindAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a kind of itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryLocationKindCode" type="itcodes:LocationKindCodeType" substitutionGroup="it:ItineraryLocationKindAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of itinerary location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of a single port of call or other location of the itinerary of a means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ItineraryStartIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the itinerary item is the starting point for a trip, voyage, flight, etc.; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LastLocationDateTime" type="niem-xs:dateTime" nillable="true">
    <xs:annotation>
      <xs:documentation>A DateTime of the last location of a container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LimitedQuantityIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the quantity of a hazardous material meets the standard for classification as a limited quantity; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LineCommodity" type="it:CommodityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A type of commodity</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingLocation" type="it:LoadingLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A seaport, airport, freight terminal, rail station or other place at which goods are loaded onto the means of transport being used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for LoadingLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingLocationCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of seaport, airport, freight terminal, rail station or other place at which goods are loaded onto the transport means used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingLocationDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date / scheduled date on which the goods depart the place of loading.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingLocationIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a seaport, airport, freight terminal, rail station or other place at which goods are loaded onto the transport means used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LoadingProofParty" type="it:PartyType" nillable="true">
    <xs:annotation>
      <xs:documentation>An Organization, Person or Thing associated with processing a Cargo entry.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationActivityAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for an activity name.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationActivityCode" type="itcodes:LocationActivityCodeType" substitutionGroup="it:LocationActivityAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>An activity name.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationCategoryCodeText" type="nc:TextType" substitutionGroup="nc:LocationCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of operation performed at a given Location</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationFunction" type="it:LocationFunctionType" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of location in the context of the activity under consideration(ex. Export port, import port..)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationFunctionAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a Location Categorized on the Function that it performs</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationFunctionAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for LocationFunctionType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationFunctionCode" type="itcodes:LocationFunctionCodeType" substitutionGroup="it:LocationFunctionAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A location categorized on the function that it performs</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="LocationFunctionDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the function (as per WCO definition) that is conducted at the location.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ManifestAugmentation" type="it:ManifestAugmentationType" substitutionGroup="nc:ManifestAugmentationPoint" nillable="true">
    <xs:annotation>
      <xs:documentation>Additional information about a manifest.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Manufacturer" type="it:ManufacturerType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party which manufactures goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ManufacturerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ManufacturerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ManufacturerIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of party which manufactures goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ManufacturerIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Manufacturer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MarinePollutantIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if a material is a marine pollutant; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Master" type="it:MasterType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the Master of a means of transport such as a vessel.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MasterAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for MasterType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MasterIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the Master of a means of transport such as a vessel.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MasterIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Master</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MasterNationalityText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A nationality of the master/operator of the vessel or other means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MaterialHandlingEquipment" type="it:MaterialHandlingEquipmentType" substitutionGroup="it:TransportEquipment" nillable="true">
    <xs:annotation>
      <xs:documentation>A reusable container for transporting goods and materials.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MaterialHandlingEquipmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for MaterialHandlingEquipmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="MFACodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A MFA identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NetExplosiveContentText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of the net explosive content of a hazardous material.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NonVesselOperatingCarrier" type="it:NonVesselOperatingCarrierType" nillable="true">
    <xs:annotation>
      <xs:documentation>A common carrier that does not operate the vessels.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NonVesselOperatingCarrierAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for NonVesselOperatingCarrierType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NonVesselOperatingCarrierIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A coded identification of a common carrier that does not operate the vessels.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NonVesselOperatingCarrierIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Non Vessel Operating Carrier</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NotifyParty" type="it:NotifyPartyType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party to be notified.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NotifyPartyAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for NotifyPartyType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NotifyPartyIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A coded identification of the identification of a party to be notified.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NotifyPartyIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Notify Party</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NTNPassportNumberID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier for a NTN Passport Number.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ObligationAugmentation" type="it:ObligationAugmentationType" substitutionGroup="nc:ObligationAugmentationPoint" nillable="true">
    <xs:annotation>
      <xs:documentation>Additional information about an obligation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ObligationGuarantee" type="it:ObligationGuaranteeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of details of how the obligation will be fulfilled</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ObligationGuaranteeAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ObligationGuaranteeType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="OperatingOrganizationName" type="nc:ProperNameTextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the organization that operates a site.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="OtherChargesDeductionsAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An amount added or subtracted from the total invoice price not previously taken into account when determining the Customs value.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Package" type="it:PackageType" nillable="true">
    <xs:annotation>
      <xs:documentation>An explanation of the packaging information</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PackageType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of package of an item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageGroupCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A textual description of the package group code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageItemCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code specifying the type of package of an item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageItemCategoryCode" type="itcodes:UNECECategoryCodeType" substitutionGroup="it:PackageItemCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying the type of package of an item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageItemQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A number of individual items packaged in such a way that they cannot be divided without first undoing the packaging.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackagesCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of or type of package of an item.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageShippingMarksDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the marks and numbers on a transport unit or package.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PackageTotalQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A count of the total number of packages of the entire declaration/ consignment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ParentOrganizationName" type="nc:ProperNameTextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the organization that is the parent of the organization that operates a site.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Party" type="it:PartyType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type identifying the Organization, Person or Thing associated with processing a Cargo entry.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PartyType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyContactAssociationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PartyContactAssociationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyContactInformationAssociation" type="it:PartyContactAssociationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A relationship between a Party and its Contact Information.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identity identifier associated with an Organization, Person or Thing</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyIDAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PartyIDType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyIDCategoryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PartyIDCategoryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyIDCodeDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the unique code assigned to an organization, person or thing.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification for a Organization, person or thing.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of an Organization, Person or Thing associated with the manufacture, storage, or movement of a GoodsItem.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PartyRelationshipIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if there is any relationship between two parties; false otherwise/if no relationship exists.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PaymentMethodCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of payment method.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PersonAugmentation" type="it:PersonAugmentationType" substitutionGroup="nc:PersonAugmentationPoint" nillable="true">
    <xs:annotation>
      <xs:documentation>Additional information about a person.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PersonFunctionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A capacity in which the representative person acts on behalf of the party responsible for the declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomDocument" type="it:PreviousCustomsDocumentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A customs document that has been superseded by a more recent document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomsDocument" type="it:PreviousCustomsDocumentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A document used for declaration previously presented on Customs territory.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomsDocumentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for PreviousCustomsDocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomsDocumentCategory" type="it:WCODocumentCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A type description of document used for declaration previously presented on Customs territory, coded.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomsDocumentDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of the previous Customs document (007) in accordance with national legislation, coded.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PreviousCustomsDocumentNumberID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a previous Customs document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="PrimaryPlacardCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A primary placard identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ProcessingEstablishment" type="it:ProcessingEstablishmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of a slaughtering, freezing, or other processing establishment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ProcessingEstablishmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ProcessingEstablishmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ProcessingEstablishmentIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A identification code specifying the slaughtering, freezing, or other processing establishment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ProcessingEstablishmentIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Processing Establishment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ProperShippingName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name used for a hazardous material on shipping documents.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RateOfExchangePercent" type="nc:PercentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A rate at which one specified currency is expressed in another specified currency</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ReportableQuantityIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if the quantity of a hazardous material meets the standard that requires reporting; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RepresentativePerson" type="it:RepresentativePersonType" nillable="true">
    <xs:annotation>
      <xs:documentation>A representative of the party making the declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RepresentativePersonAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for RepresentativePersonType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RepresentativePersonFunctionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A capacity in which the representative person acts on behalf of the party responsible for the declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ResidueIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if a hazardous material is a residue; false otherwise.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfOrganizationCategory" type="it:RoleOfOrganizationCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Category of the role played by an organization in the given context of the transaction(Ex. Clearing house, Brokerage house...)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfOrganizationCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a role played by the Party/Organization in the given context of a transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfOrganizationCategoryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for RoleOfOrganizationCategoryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfOrganizationCategoryCode" type="itcodes:RoleOfPartyCategoryCodeType" substitutionGroup="it:RoleOfOrganizationCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A role played by the Party/Organization in the given context of a transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfOrganizationCategoryDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A text description of the role played by the party/organization in a given transaction.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfParty" type="it:PartyType" nillable="true">
    <xs:annotation>
      <xs:documentation>A role of the Organization, Person or Thing associated with processing a Cargo entry.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfPartyCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data type identifying the role of the Organization, Person or Thing associated with processing a Cargo entry.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfPartyCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a role played by the Party/Organization in the given context of a transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfPartyCategoryCode" type="itcodes:RoleOfPartyCategoryCodeType" substitutionGroup="it:RoleOfPartyCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A role played by the Party/Organization in the given context of a transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="RoleOfPartyCategoryDescriptionText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the role of the Party in a given context/transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Seal" type="it:SealType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of information regarding a container's seal(s).</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for SealType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealIntactStatusAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a condition status of a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealIntactStatusCode" type="itcodes:SealIntactStatusCodeType" substitutionGroup="it:SealIntactStatusAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of the condition status of a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealIssuerName" type="nc:ProperNameTextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the organization that issued a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealVerificationStatusAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a seal verification state.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SealVerificationStatusCode" type="itcodes:SealVerificationStatusCodeType" substitutionGroup="it:SealVerificationStatusAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A seal verification state.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SecondaryPlacardCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A secondary placard identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SectorID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of a sector in which a container is located.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SectorPosition" type="cbrn:RelativeLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A physical location of a container at a container facility.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SecurityDetailsCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying details regarding undertaking given in cash, bond or as a written guarantee to ensure an obligation will be fulfilled</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Seller" type="it:SellerType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party selling merchandise or services to a buyer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SellerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for SellerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SellerIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification code specifying the Identifier of the party selling merchandise or services to a buyer.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SellerIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Seller</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="SequenceNumeric" type="niem-xs:nonNegativeInteger" nillable="true">
    <xs:annotation>
      <xs:documentation>A number indicating the position in a sequence.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainer" type="it:ShippingContainerType" substitutionGroup="it:TransportEquipment" nillable="true">
    <xs:annotation>
      <xs:documentation>A reusable container for transporting goods and materials.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ShippingContainerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerCargoItem" type="it:ConsignmentItemType" nillable="true">
    <xs:annotation>
      <xs:documentation>A cargo item in a shipping container sufficient to identify it for customs, statistical or transport purposes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerEmptyWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight of a shipping container when empty.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerIdentification" type="it:ShippingContainerIdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A data set that holds Shipping Container identification information.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerIdentificationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ShippingContainerIdentificationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerISO6346Abstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a container ISO6346 code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerISO6346Code" type="itcodes:ContainerISO6346CodeType" substitutionGroup="it:ShippingContainerISO6346Abstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A container's ISO6346 code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerKindAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a description of a kind of container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerKindCode" type="itcodes:ContainerKindCodeType" substitutionGroup="it:ShippingContainerKindAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A description of a kind of container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerLastLocation" type="it:ShippingContainerLastLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A last known location of a shipping container in a container holding facility.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerLastLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ShippingContainerLastLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerLegalStatusIndicator" type="niem-xs:boolean" nillable="true">
    <xs:annotation>
      <xs:documentation>True if a container must meet the legal requirements of the Container Convention; false if it does not.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerLoadedText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A text description of how fully loaded a shipping container is.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerLoadedWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A weight of a shipping container including its current contents.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerReferenceID" type="it:ShippingContainerReferenceIDType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier referenced/related to a shipping container.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingContainerReferenceIDAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ShippingContainerReferenceIDType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ShippingMarksText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A free form description of the marks and numbers on a transport unit or package.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StateIdentification" type="nc:IdentificationType" substitutionGroup="nc:StateRepresentation" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a country subdivision.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Stevedore" type="it:StevedoreType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party loading or unloading the cargo of (a ship) or vessel</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StevedoreAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for StevedoreType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StevedoreIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification code specifying the identity of a stevedoring company.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StevedoreIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Stevedore</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StuffingEstablishment" type="it:StuffingEstablishmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location where the goods are loaded into the transport equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StuffingEstablishmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for StuffingEstablishmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StuffingEstablishmentIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify the location where the goods are loaded into the transport equipment.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="StuffingEstablishmentIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of Stuffing Establishment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TechnicalName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A technical name for a hazardous material.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TotalNumberOfPackagesNumeric" type="nc:NumericType" nillable="true">
    <xs:annotation>
      <xs:documentation>A count of the total number of packages of the entire declaration.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradeParty" type="it:TradePartyType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of information about a trading party.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradePartyAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a role of an organization that issues a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradePartyAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TradePartyType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradePartyCode" type="itcodes:RoleOfPartyCategoryCodeType" substitutionGroup="it:TradePartyAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A role of an organization that issues a seal.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TraderDeclarationReferenceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier of the reference assigned by a Trader to a declaration</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradeTerm" type="it:TradeTermType" nillable="true">
    <xs:annotation>
      <xs:documentation>A trade terms name of the point or port of departure, shipment or destination, as required under the applicable terms of delivery, e.g. Incoterm.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TradeTermAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TradeTermType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TranshipmentLocation" type="it:TranshipmentLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A general description of the cargo commodities.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TranshipmentLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TranshipmentLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TranshipmentPlaceCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify a warehouse where a particular goods shipment has been stored.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TranshipmentPlaceName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the place where goods are to be transferred from one means of transport to another during the course of one transport operation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitControlText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A result of the controls carried out by the consignor prior to departure</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitCustomsOffice" type="nc:OrganizationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A customs office which is responsible for transit formalities en route</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitDestination" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name of the place at which the goods are destined under customs control of transit procedure</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitPrincipal" type="nc:OrganizationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A party accepting liability for goods held or moving under a Customs authorization and - when applicable - a guarantee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitPrincipalAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransitPrincipalType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitPrincipalIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a party accepting liability for goods held or moving under a Customs authorization and - when applicable - a guarantee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransitPrincipalName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name [and address] of party accepting liability for goods held or moving under a Customs authorization and - when applicable - a guarantee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportActivityLocation" type="it:TransportActivityLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A reference attribute to enable a TransportActivityLocation instance to be referenced elsewhere.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportActivityLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportActivityLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportActivityLocationInfo" type="it:TransportActivityLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location at which the transport activity has occurred</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportContractDocument" type="it:TransportContractDocumentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A contract between multiple parties pertaining to cargo shipments e.g. export shipment with a carrier i.e. bill of lading(s) or manifest.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportContractDocumentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportContractDocumentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportContractDocumentCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify the type of a document evidencing a transport contract.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportContractDocumentReferenceID" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identifier of a Transport Contract Document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportDocumentIssuePlace" type="nc:LocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A location at which a transport document was issued and when appropriate, signed or otherwise authenticated.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportEquipment" type="it:TransportEquipmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A specific equipment used in Means of Transport</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportEquipmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportEquipmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeans" type="it:TransportMeansType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the means of transport used.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansActualFirstArrivalDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>An actual first date / scheduled date of arrival of means of transport at (for air) first airport, (land) arrival at first border post and (sea) arrival at first port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansActualFirstDepartureDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>An actual first date of departure of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansArrival" type="it:ArrivalType" nillable="true">
    <xs:annotation>
      <xs:documentation>An arrival of means of transport at (for air) airport, (land) arrival at border post, or (sea) arrival at port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansArrivalDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date / scheduled date of arrival of means of transport at (for air) first airport, (land) arrival at first border post and (sea) arrival at first port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportMeansType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansBorderCrossingIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the means of transport used in crossing the border.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansBorderCrossingName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name to identify the means of transport used in crossing the border.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansCallPurposeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A purpose of the conveyance call.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansCategoryText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of means/mode of transport used for the carriage of the goods.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansConsignmentUnloadingDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date on which the cargo was outturned.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansContainerQuantity" type="nc:QuantityType" nillable="true">
    <xs:annotation>
      <xs:documentation>A number of the total freight containers or similar unit load devices.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansConveyance" type="it:TransportMeansType" nillable="true">
    <xs:annotation>
      <xs:documentation>A means of Transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansConveyanceReferenceIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a journey of a means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansCrewQuantity" type="niem-xs:nonNegativeInteger" nillable="true">
    <xs:annotation>
      <xs:documentation>A number of the total members of the crew, including the captain/master, of a means of a transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansDeparture" type="it:DepartureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A Departure from a crossing or other location for a means of transport</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansDepartureDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of departure of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansFirstArrival" type="it:ArrivalType" nillable="true">
    <xs:annotation>
      <xs:documentation>An arrival of means of transport at (for air) first airport, (land) arrival at first border post, or (sea) arrival at first port.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansGrossWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of the overall size of a ship determined in accordance with the provisions of the International Convention on Tonnage Measurement of Ships, 1969.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansItinerary" type="it:ItineraryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An itinerary of the of the Transport Means</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansModeOfTransportationAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a mode of means of transport like air, sea, land.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansModeOfTransportationCode" type="itcodes:TransportMeansCodeType" substitutionGroup="it:TransportMeansModeOfTransportationAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A mode of means of transport like air, sea, land.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansName" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A name to identify the means of transport used.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansNetWeightMeasure" type="nc:WeightMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>A measure of the useful capacity of a ship determined in accordance with the provisions of International Convention on Tonnage Measurements of Ships, 1969</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOperator" type="it:TransportMeansOperatorType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the registered operator of means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOperatorAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportMeansOperatorType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOperatorIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying identification of the registered operator of means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOperatorIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of TransportMeansOperator</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOwner" type="it:TransportMeansOwnerType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the registered owner of means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOwnerAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for TransportMeansOwnerType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOwnerIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code specifying identification of the registered owner of means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansOwnerIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of TransportMeansOwner</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansPassengerQuantity" type="niem-xs:nonNegativeInteger" nillable="true">
    <xs:annotation>
      <xs:documentation>A number of the total passengers on board a means of transport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansStayIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of the stay of a means of transport in a port or airport.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansVesselHeightMeasure" type="nc:LengthMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>An expression in meters of the forward/after draft level.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TransportMeansVesselLengthMeasure" type="nc:LengthMeasureType" nillable="true">
    <xs:annotation>
      <xs:documentation>An expression in meters of the length of a single vehicle.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UCR" type="it:UCRType" nillable="true">
    <xs:annotation>
      <xs:documentation>A UCR (Unique Customs Reference) Identifier</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UCRAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for UCRType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UNDGCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An UN Dangerous Goods identifier code.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UNDGContact" type="it:UNDGContactType" nillable="true">
    <xs:annotation>
      <xs:documentation>A dangerous goods contact person or party who can provide detailed information concerning the dangerous goods shipment</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UNDGContactAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for UNDGContactType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UNDGContactIDCategory" type="it:PartyIDCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identifier category to identify a dangerous goods person or party</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UNDGContactIdentification" type="nc:IdentificationType" nillable="true">
    <xs:annotation>
      <xs:documentation>A unique identification of UNDG Contact</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UnloadingLocation" type="it:UnloadingLocationType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a seaport, airport, freight terminal, rail station or other place at which goods are unloaded from the means of transport having been used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UnloadingLocationAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for UnloadingLocationType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UnloadingLocationCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code to identify a seaport, airport, freight terminal, rail station or other place at which goods are unloaded from the transport means used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UnloadingLocationCategoryCode" type="itcodes:LocationFunctionCodeType" substitutionGroup="it:UnloadingLocationCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code to identify a seaport, airport, freight terminal, rail station or other place at which goods are unloaded from the transport means used for their carriage.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="UnloadingLocationDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of arrival at port or airport with intent to unload.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationAdditionsCode" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A kind of adjustment to valuation amounts.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationAdjustment" type="it:ValuationAdjustmentType" nillable="true">
    <xs:annotation>
      <xs:documentation>An adjustment to the valuation amounts.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationAdjustmentAmount" type="nc:AmountType" nillable="true">
    <xs:annotation>
      <xs:documentation>An amount of adjustment made to the valuation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationAdjustmentAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for ValuationAdjustmentType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationAdjustmentPercent" type="nc:PercentType" nillable="true">
    <xs:annotation>
      <xs:documentation>A percentage adjustment made to the valuation.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="ValuationMethodCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A code that indicates the method on which the Customs value is determined.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="VIRNumberText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>A VIR number.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Warehouse" type="it:WarehouseType" nillable="true">
    <xs:annotation>
      <xs:documentation>A set of information about a warehouse.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WarehouseAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for WarehouseType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WarehouseCategoryCodeText" type="nc:TextType" nillable="true">
    <xs:annotation>
      <xs:documentation>An identification of a warehouse where a particular goods shipment has been stored.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WarehouseDate" type="nc:DateType" nillable="true">
    <xs:annotation>
      <xs:documentation>A date of arrival at location of goods Date when declared goods was/will be carried into designated warehouse.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WarehouseLicenseNumberText" type="niem-xs:string" nillable="true">
    <xs:annotation>
      <xs:documentation>A warehouse license number.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentCategory" type="it:WCODocumentCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of the document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a category of the document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentCategoryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for WCODocumentCategoryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentCategoryCode" type="itcodes:DocumentCategoryCodeType" substitutionGroup="it:WCODocumentCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of the document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentFunctionCategory" type="it:WCODocumentFunctionCategoryType" nillable="true">
    <xs:annotation>
      <xs:documentation>A category of the document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentFunctionCategoryAbstract" abstract="true">
    <xs:annotation>
      <xs:documentation>A data concept for a code indicating the function of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentFunctionCategoryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for WCODocumentFunctionCategoryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentFunctionCategoryCode" type="itcodes:DocumentCategoryCodeType" substitutionGroup="it:WCODocumentFunctionCategoryAbstract" nillable="true">
    <xs:annotation>
      <xs:documentation>A code indicating the function of a document.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentNameCategoryAugmentationPoint" abstract="true">
    <xs:annotation>
      <xs:documentation>An augmentation point for WCODocumentNameCategoryType.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="WCODocumentNameCategoryCode" type="itcodes:DocumentCategoryCodeType" nillable="true">
    <xs:annotation>
      <xs:documentation>A category code of the document(ex. Whether it is a invoice, bill of lading..)</xs:documentation>
    </xs:annotation>
  </xs:element>
</xs:schema>