<schema targetNamespace="http://www.api.org/pidXML" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pidx="http://www.api.org/pidXML" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.2">
<annotation>
<documentation>
<schemaName>Invoice</schemaName>
<copyright>American Petroleum Institute (API), Petroleum Industry Data Exchange (PIDX) 2006</copyright>
<schemaVersion>1.2</schemaVersion>
<description>Invoice element serves as the root node for PIDX transactions.</description>
</documentation>
</annotation>
<include schemaLocation="PIDXLib.xsd"/>
<element name="Invoice">
<complexType>
<sequence>
<element ref="pidx:InvoiceProperties"/>
<element ref="pidx:InvoiceDetails"/>
<element ref="pidx:InvoiceSummary"/>
</sequence>
<attribute ref="pidx:transactionPurposeIndicator" use="required"/>
<attribute ref="pidx:version" use="optional"/>
</complexType>
</element>
<element name="InvoiceDetails">
<complexType>
<sequence>
<element ref="pidx:InvoiceLineItem" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="InvoiceLineItem">
<complexType>
<sequence>
<element ref="pidx:LineItemNumber"/>
<element ref="pidx:InvoiceQuantity"/>
<element ref="pidx:LineItemInformation"/>
<element ref="pidx:PurchaseOrderLineItemNumber" minOccurs="0"/>
<element ref="pidx:FieldTicketLineItemNumber" minOccurs="0"/>
<element ref="pidx:FieldTicketInformation" minOccurs="0"/>
<element ref="pidx:PurchaseOrderInformation" minOccurs="0"/>
<element ref="pidx:CommodityCode" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:PartnerInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:JobLocationInformation" minOccurs="0"/>
<element ref="pidx:PersonnelInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Pricing" minOccurs="0"/>
<element ref="pidx:AllowanceOrCharge" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Tax" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:ShippingAmount" minOccurs="0"/>
<element ref="pidx:LineItemTotal" minOccurs="0"/>
<element ref="pidx:ServiceDateTime" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:CountryOfOrigin" minOccurs="0"/>
<element ref="pidx:CountryOfFinalDestination" minOccurs="0"/>
<element ref="pidx:TransportInformation" minOccurs="0"/>
<element ref="pidx:Intrastat" minOccurs="0"/>
<element ref="pidx:PaymentTerms" minOccurs="0"/>
<element ref="pidx:SpecialInstructions" minOccurs="0" maxOccurs="unbounded"/>
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="pidx:PackagingCharacteristicCode" minOccurs="0"/>
<element ref="pidx:PackagingCharacteristicDescription" minOccurs="0"/>
</sequence>
<element ref="pidx:ReferenceInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Attachment" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Comment" minOccurs="0"/>
<element ref="pidx:InvoiceSubLineItem" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="InvoiceProperties">
<complexType>
<sequence>
<element ref="pidx:InvoiceNumber"/>
<element ref="pidx:InvoiceDate"/>
<element ref="pidx:PartnerInformation" minOccurs="2" maxOccurs="unbounded"/>
<element ref="pidx:InvoiceTypeCode" minOccurs="0"/>
<element ref="pidx:RevisionNumber" minOccurs="0"/>
<element ref="pidx:PurchaseOrderInformation" minOccurs="0"/>
<element ref="pidx:FieldTicketInformation" minOccurs="0"/>
<element ref="pidx:PrimaryCurrency" minOccurs="0"/>
<element ref="pidx:SecondCurrency" minOccurs="0"/>
<element ref="pidx:LanguageCode" minOccurs="0"/>
<element ref="pidx:RateOfExchangeDetail" minOccurs="0"/>
<element ref="pidx:JobLocationInformation" minOccurs="0"/>
<element ref="pidx:ServiceDateTime" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:CountryOfOrigin" minOccurs="0"/>
<element ref="pidx:CountryOfFinalDestination" minOccurs="0"/>
<element ref="pidx:TransportInformation" minOccurs="0"/>
<element ref="pidx:Intrastat" minOccurs="0"/>
<element ref="pidx:PaymentTerms" minOccurs="0"/>
<element ref="pidx:SpecialInstructions" minOccurs="0"/>
<element ref="pidx:ReferenceInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Attachment" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Comment" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="InvoiceSubLineItem">
<complexType>
<sequence>
<element ref="pidx:SubLineItemNumber"/>
<element ref="pidx:LineItemInformation"/>
<element ref="pidx:InvoiceQuantity"/>
<element ref="pidx:PurchaseOrderSubLineItemNumber" minOccurs="0"/>
<element ref="pidx:FieldTicketSubLineItemNumber" minOccurs="0"/>
<element ref="pidx:PurchaseOrderInformation" minOccurs="0"/>
<element ref="pidx:FieldTicketInformation" minOccurs="0"/>
<element ref="pidx:CommodityCode" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:PartnerInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:JobLocationInformation" minOccurs="0"/>
<element ref="pidx:PersonnelInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Pricing" minOccurs="0"/>
<element ref="pidx:AllowanceOrCharge" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Tax" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:ShippingAmount" minOccurs="0"/>
<element ref="pidx:LineItemTotal" minOccurs="0"/>
<element ref="pidx:ServiceDateTime" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:CountryOfOrigin" minOccurs="0"/>
<element ref="pidx:CountryOfFinalDestination" minOccurs="0"/>
<element ref="pidx:TransportInformation" minOccurs="0"/>
<element ref="pidx:Intrastat" minOccurs="0"/>
<element ref="pidx:PaymentTerms" minOccurs="0"/>
<element ref="pidx:SpecialInstructions" minOccurs="0" maxOccurs="unbounded"/>
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="pidx:PackagingCharacteristicCode" minOccurs="0"/>
<element ref="pidx:PackagingCharacteristicDescription" minOccurs="0"/>
</sequence>
<element ref="pidx:ReferenceInformation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Attachment" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Comment" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="InvoiceSummary">
<complexType>
<sequence>
<element ref="pidx:TotalLineItems"/>
<element ref="pidx:InvoiceTotal"/>
<element ref="pidx:AllowanceOrCharge" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:ShippingAmount" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:Tax" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:SubTotalAmount" minOccurs="0" maxOccurs="unbounded"/>
<element ref="pidx:TermsDiscountAmount" minOccurs="0"/>
<element ref="pidx:DiscountedAmountDue" minOccurs="0"/>
</sequence>
</complexType>
</element>
</schema>
|