<!-- Nov 05, 2002. Modified element definitions to be consistent with GCA Contract XML V1R1 where relevant, and, Corrected technical issues reported during testing of the XML
= Element AdditionalInformation type set to xs:string from ComplexType
= Elements AddressInformation and ContactDetails made optional where referenced
= Currency units and Price units elements used in different structures normalized to two types of enumerations, viz.
currencyUnit and priceUnits for price elements where price is in Contract price units
futuresCurrencyUnit and futuresPriceUnits for price elements where price is in Futures price untis
Accordingly, elements FuturesUnitOfMeasure and PriceUnitOfMeasure replaced with reference to futuresPriceUnits and priceUnits resp.
= Element futuresExchangeCode made global, and, enumeration added to be consistent with futuresMarket list in GCA Contract XML V1R1
= Element futuresMonthName type set to xs:string from ComplexType
= Element futuresMonthCode made global and enumeration added to be consistent with futuresMonth list in GCA Contract XML V1R1
= Element futuresYear enumeration added to be consistent with futuresMonth list in GCA Contract XML V1R1
= Element GrossAmount renamed to NetAmount to be consistent with NCA terminology
= Element description under AdjustmentItem type set to xs:string from ComplexType
= Element PreviousInvoiceAmount restructured to allow for multiple Previous Invoices to be listed, if desired
= Element PaymentReceived added to meet user requirements
= Element SampleWeights added to meet user requirements
= Elements quantityValue and quantityUnits under ContainerUnits changed to reference global elements instead of local definitions
= Element InvoiceNumber made global to enable consistent definition and reference for current Invoice and Past Invoice numbers
= Element invoiceType type set to xs:string from ComplexType
= Element DeliveryLocation made optional and definition simplified to accomodate different cases where delivery does not happen at a warehouse
= Element paymentTermsDescription type set to xs:string from ComplexType
= Element codeReferenceType type set to xs:string from ComplexType
= Element productDescriptionText type set to xs:string from ComplexType
= Redundant Element estimatedDateOfArrivalAtDestination definition under Voyage removed. ETA under RoutingSummary is used for the same purpose
= Element LocationOfStock made optional
= Element currencyUnit enumeration added to be consistent with list of ISO currency codes in GCA Contract XML V1R1
= Element contractType enumeration value Ex-Dock changed to Ex-Docks to be consistent with GCA Contract XML V1R1
= Element packagingType enumeration modified to be consistent with list in GCA Contract XML V1R1
= Element positionOfSale enumeration value Shipment changed to Ship to be consistent with GCA Contract XML V1R1
= Element weighingMethodCode enumeration modified to be consistent with list in GCA Contract XML V1R1
<xs:documentation>Remarks or other information relating to the Delivery Order. This is free form text and can be used to convey any other information not covered by any of the defined XML elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AddressInformation">
<xs:annotation>
<xs:documentation>Address of a person or organisation. This may be the postal address of a building or address of a department within a building. Where structured address elements can be provided these should be filled in the designated elements for ease of processing by the receiver of this document. Alternatively, address may be provided as free form text formatted into multiple lines.</xs:documentation>
<xs:documentation>Free form representation of the address provided as 1 or more lines of text, formatted in the way it is to be presented.</xs:documentation>
<xs:documentation>Body of the document containing all the required details.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="GeneralInformation"/>
<xs:element ref="Parties"/>
<xs:element ref="RoutingSummary"/>
<xs:element ref="Consignment"/>
<xs:element name="InvoiceDetails">
<xs:annotation>
<xs:documentation>Details of weights, price and other charges or reductions applied to calculate this invoice amount </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="InvoiceWeightInformtion">
<xs:annotation>
<xs:documentation>Weight Information used in Invoice for calculating the Net amount</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="GrossWeight" minOccurs="0"/>
<xs:element ref="NetWeight"/>
<xs:element name="TareWeight" minOccurs="0">
<xs:annotation>
<xs:documentation>Weight of the Package, e.g. - 2.0 lbs per 69 kg bag</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="value"/>
<xs:element ref="weightUnitCode"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SampleWeights" minOccurs="0">
<xs:annotation>
<xs:documentation>Weight of Samples</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="value"/>
<xs:element ref="weightUnitCode"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="InvoicePriceInformation">
<xs:annotation>
<xs:documentation>Information regarding the various price related information that is applied in the invoice - differential, fixed price, unit price, etc. </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="UnitPrice">
<xs:annotation>
<xs:documentation>Unit price for the consignment as per contract terms. Contains one of the two elements depending on the price type of the contract.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="UnitPriceFixedForDifferential">
<xs:annotation>
<xs:documentation>Details of price components used to compute unit price for Differential Priced contracts.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Differential">
<xs:annotation>
<xs:documentation>Plus or Minus decimal number applied to Futures Price i nContract Equivalent UNits to determine outright price, e.g. - - 4.55 </xs:documentation>
<xs:documentation>Lots remaining to be fixed, computed as Lots required to be fixed as per contract for the consignment LESS lots fixed. If fully fixed, this value will be 0. If non-zero, the assumedFuturesPrice element should be present.</xs:documentation>
<xs:documentation>Net Price calculated by adding or subtracting the differential from fixed futures price, e.g. - 66.23 - 4.55 = 61.88</xs:documentation>
<xs:documentation>Any adjustments that need to be added or subtracted form the invoice amount, e.g. Freight Charges on Buyers behalf</xs:documentation>
<xs:documentation>Net Amount Due from Buyer after taking into account additional charges, percentage payable and past invoices/payments</xs:documentation>
<xs:documentation>Exchange ID No issued by the Exchange / Warehouse after Grading the stock</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ContractIdentifier">
<xs:annotation>
<xs:documentation>Common Contract Identifier for the Contract. If the contract is issued by a 3rd party system, such as a B2B system, the system is identified in the documentCreatorIdentifier child element</xs:documentation>
<xs:documentation>Identifier or code to identify the sub-contract or contract extension or shipment number to which this document pertains, if the contract is fixed in parts</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CountryOfDestination">
<xs:annotation>
<xs:documentation>Country of the Delivery Location</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="locationCode" minOccurs="0"/>
<xs:element name="countryName" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CountryOfOrigin">
<xs:annotation>
<xs:documentation>Country of the original port from which the shipment takes place.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="locationCode" minOccurs="0"/>
<xs:element ref="locationName"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Invoice">
<xs:complexType>
<xs:sequence>
<xs:element ref="Header"/>
<xs:element ref="Body"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GeneralInformation">
<xs:annotation>
<xs:documentation>References and other general information pertaining to the contract and this document.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="dateOfIssue" type="xs:date">
<xs:annotation>
<xs:documentation>Date of Issue of Invoice in ISO format, i.e. - YYYY-MM-DD</xs:documentation>
<xs:documentation>Date of Delivery</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="WeighingMethod"/>
<xs:element ref="responsibilityOfWeighing"/>
<xs:element name="PaymentTerms" minOccurs="0">
<xs:annotation>
<xs:documentation>Payment terms agreed upon in the contract, consists of a code (optional) and a common business description of the payment terms. For example, LC - Letter Of Credit.</xs:documentation>
<xs:documentation>Harmonised code for common payment terms. Use OTHER for a term not in the list and provide full description of the payment terms in paymentTermsDescription.</xs:documentation>
<xs:documentation>Payment Instructions to the buyer for remitting the net amount due, e.g. - remit by telegraphic transfer to our Citibank account xxxx</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MoveOrDeliverPeriod">
<xs:annotation>
<xs:documentation>Period specified in the contract - shipment, delivery, etc as specified by position of sale element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="startDate"/>
<xs:element ref="endDate"/>
<xs:element ref="positionOfSale"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="NetWeight">
<xs:annotation>
<xs:documentation>Net weight of the Shipment/Consignment as indicated in the Invoice</xs:documentation>
<xs:documentation>Warehouse Store #</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PlaceOfDischarge">
<xs:annotation>
<xs:documentation>Port of Discharge or Port of Destination for Sea Transportation, or, Place where coffee is discharged for Rail/Road.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="locationCode" minOccurs="0"/>
<xs:element ref="locationName"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PlaceOfLoading">
<xs:annotation>
<xs:documentation>Port of Loading for Sea Transportation or Place where coffee is loaded for Rail/Road</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="locationCode" minOccurs="0"/>
<xs:element ref="locationName"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ProductDescription">
<xs:annotation>
<xs:documentation>Technical Reference to a description for the coffee, e.g - Santos 2/3 </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="productDescriptionText">
<xs:annotation>
<xs:documentation>Technical description for the Coffee, e.g. Santos 2/3</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ProductQuality">
<xs:annotation>
<xs:documentation>Group element collecting the different elements that are used to uniquely describe the Coffee and quality</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="product"/>
<xs:element ref="CountryOfOrigin" minOccurs="0"/>
<xs:element ref="cropYear" minOccurs="0"/>
<xs:element name="ProductDescription">
<xs:annotation>
<xs:documentation>Technical Reference to a description for the coffee, e.g - Santos 2/3 </xs:documentation>
<xs:documentation>Unique code reference to the technical description of the coffee like material codes. Can have multiple occurrences to list the buyer's code, seller's code, TLM code, etc.</xs:documentation>
<xs:documentation>Technical description for the Coffee, e.g. Santos 2/3</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Quantity">
<xs:annotation>
<xs:documentation>Quantity being shipped expressed as a weight or as a number of bags of certain weight, typically in the same units as the unit used to specify the quantity in the contract.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="quantityValue"/>
<xs:element ref="quantityUnits"/>
<xs:element ref="packagingType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="RoutingSummary">
<xs:annotation>
<xs:documentation>Details of the means of transportation, and associated references, describing how this shipment is transported</xs:documentation>
<xs:documentation>Identification information pertaining to the means of transport. </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="SeaTransportIdentification">
<xs:annotation>
<xs:documentation>Identification of the vessel and voyage if the shipment is made via sea/ocean transport.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Voyage" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Details of the Vessel and voyage. Can have multiple entries to provide details of Feeder and Main Vessel segments.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="Vessel"/>
<xs:element ref="voyageNumber" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="RailTransportIdentification">
<xs:annotation>
<xs:documentation>Identification of the rail car if the shipment is transported by rail</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="carrier" type="xs:string">
<xs:annotation>
<xs:documentation>Name of the carrier / Railroad organisation, e.g. Norfolk Southern</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="locomotiveNumber"/>
<xs:element ref="railCarNumber"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="RoadTransportIdentification">
<xs:annotation>
<xs:documentation>Identification of the truck or other vehicle, if this shipment is transported overland via road.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="carrier" type="xs:string">
<xs:annotation>
<xs:documentation>Name of the carrier / trucking organisation, e.g. Allied Van Lines</xs:documentation>
<xs:documentation>Carrier Name. e.g. - APL </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="vesselFunction" minOccurs="0">
<xs:annotation>
<xs:documentation>Feeder or Main Vessel</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Feeder"/>
<xs:enumeration value="Main"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="WeighingMethod">
<xs:annotation>
<xs:documentation>Weighing method agreed upon in the contract. For example, NSW 0.5 (Net Shipped Weights 0.5% franchise). Consists of a code and description.</xs:documentation>
<xs:documentation>Seller's Contract Reference Number. Alphanumeric Contract Number issued by the Company or System</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="startDate" type="xs:date">
<xs:annotation>
<xs:documentation>Start date of the period</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status">
<xs:annotation>
<xs:documentation>Status of this document. Possible values are Draft, Final or Amended. Amended is to be used if this document is an amended version of an earlier Final document.</xs:documentation>