blob: 8d83d22b2ce527d23facfa0f5ad49d4ca3aead80 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--W3C Schema generated by XML Spy v4.4 U (http://www.xmlspy.com)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="Accounting">
<xs:complexType>
<xs:choice>
<xs:element name="Segment" ref="Segment" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="AccountingSegment" ref="AccountingSegment" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="AccountingSegment">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="Description" ref="Description"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Address">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="PostalAddress" ref="PostalAddress" minOccurs="0" maxOccurs="1"/>
<xs:element name="Email" ref="Email" minOccurs="0" maxOccurs="1"/>
<xs:element name="Phone" ref="Phone" minOccurs="0" maxOccurs="1"/>
<xs:element name="Fax" ref="Fax" minOccurs="0" maxOccurs="1"/>
<xs:element name="URL" ref="URL" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="isoCountryCode" type="xs:string"/>
<xs:attribute name="addressID" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="AreaOrCityCode" type="xs:string"/>
<xs:element name="Attachment">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BillTo">
<xs:complexType>
<xs:sequence>
<xs:element name="Address" ref="Address"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BrowserFormPost">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BuyerCookie">
<xs:complexType mixed="true"/>
</xs:element>
<xs:element name="CIFContent" type="xs:string"/>
<xs:element name="Changetime" type="xs:string"/>
<xs:element name="Charge">
<xs:complexType>
<xs:sequence>
<xs:element name="Money" ref="Money"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="City" type="xs:string"/>
<xs:element name="Classification">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="domain" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Comments">
<xs:complexType mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Attachment" ref="Attachment"/>
</xs:choice>
<xs:attribute name="lang" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="Contact">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="PostalAddress" ref="PostalAddress" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Email" ref="Email" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Phone" ref="Phone" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Fax" ref="Fax" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="URL" ref="URL" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="role" type="xs:NMTOKEN"/>
</xs:complexType>
</xs:element>
<xs:element name="Contract">
<xs:complexType>
<xs:sequence>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Comments" ref="Comments" minOccurs="0" maxOccurs="1"/>
<xs:element name="ItemSegment" ref="ItemSegment" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="effectiveDate" type="xs:string" use="required"/>
<xs:attribute name="expirationDate" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ContractItem">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
<xs:element name="UnitPrice" ref="UnitPrice" minOccurs="0" maxOccurs="1"/>
<xs:element name="Extrinsic" ref="Extrinsic" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Country">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="isoCountryCode" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="CountryCode">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="isoCountryCode" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Credential">
<xs:complexType>
<xs:sequence>
<xs:element name="Identity" ref="Identity"/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="SharedSecret" ref="SharedSecret"/>
<xs:element name="DigitalSignature" ref="DigitalSignature"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="domain" type="xs:string" use="required"/>
<xs:attribute name="type">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="marketplace"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="DeliverTo" type="xs:string"/>
<xs:element name="Description">
<xs:complexType mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="ShortName" ref="ShortName"/>
</xs:choice>
<xs:attribute name="lang" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="DigitalSignature">
<xs:complexType mixed="true">
<xs:attribute name="type" type="xs:string" default="PK7 self-contained"/>
<xs:attribute name="encoding" type="xs:string" default="Base64"/>
</xs:complexType>
</xs:element>
<xs:element name="Distribution">
<xs:complexType>
<xs:sequence>
<xs:element name="Accounting" ref="Accounting"/>
<xs:element name="Charge" ref="Charge"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DocumentReference">
<xs:complexType>
<xs:attribute name="payloadID" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="EffectiveDate" type="xs:string"/>
<xs:element name="Email">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ExpirationDate" type="xs:string"/>
<xs:element name="Extension" type="xs:string"/>
<xs:element name="Extrinsic">
<xs:complexType mixed="true">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Fax">
<xs:complexType>
<xs:choice>
<xs:element name="TelephoneNumber" ref="TelephoneNumber"/>
<xs:element name="URL" ref="URL"/>
<xs:element name="Email" ref="Email"/>
</xs:choice>
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="Followup">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Format">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="version" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="From">
<xs:complexType>
<xs:sequence>
<xs:element name="Credential" ref="Credential" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetPendingRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="MessageType" ref="MessageType" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="maxMessages" type="xs:string"/>
<xs:attribute name="lastReceivedTimestamp" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="GetPendingResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="cXML" ref="cXML" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Header">
<xs:complexType>
<xs:sequence>
<xs:element name="From" ref="From"/>
<xs:element name="To" ref="To"/>
<xs:element name="Sender" ref="Sender"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Identity">
<xs:complexType mixed="true">
<xs:attribute name="lastChangedTimestamp" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="Index">
<xs:complexType>
<xs:sequence>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Comments" ref="Comments" minOccurs="0" maxOccurs="1"/>
<xs:element name="SearchGroup" ref="SearchGroup" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="IndexItem" ref="IndexItem" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IndexItem">
<xs:complexType>
<xs:choice>
<xs:element name="IndexItemAdd" ref="IndexItemAdd" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="IndexItemDelete" ref="IndexItemDelete" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="IndexItemPunchout" ref="IndexItemPunchout" minOccurs="1" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="IndexItemAdd">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
<xs:element name="ItemDetail" ref="ItemDetail"/>
<xs:element name="IndexItemDetail" ref="IndexItemDetail"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IndexItemDelete">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IndexItemDetail">
<xs:complexType>
<xs:sequence>
<xs:element name="LeadTime" ref="LeadTime"/>
<xs:element name="ExpirationDate" ref="ExpirationDate" minOccurs="0" maxOccurs="1"/>
<xs:element name="EffectiveDate" ref="EffectiveDate" minOccurs="0" maxOccurs="1"/>
<xs:element name="SearchGroupData" ref="SearchGroupData" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="TerritoryAvailable" ref="TerritoryAvailable" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IndexItemPunchout">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
<xs:element name="PunchoutDetail" ref="PunchoutDetail"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="InternalID">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="domain" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ItemDetail">
<xs:complexType>
<xs:sequence>
<xs:element name="UnitPrice" ref="UnitPrice"/>
<xs:element name="Description" ref="Description" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="UnitOfMeasure" ref="UnitOfMeasure"/>
<xs:element name="Classification" ref="Classification" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="ManufacturerPartID" ref="ManufacturerPartID" minOccurs="0" maxOccurs="1"/>
<xs:element name="ManufacturerName" ref="ManufacturerName" minOccurs="0" maxOccurs="1"/>
<xs:element name="URL" ref="URL" minOccurs="0" maxOccurs="1"/>
<xs:element name="Extrinsic" ref="Extrinsic" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ItemID">
<xs:complexType>
<xs:sequence>
<xs:element name="SupplierPartID" ref="SupplierPartID"/>
<xs:element name="SupplierPartAuxiliaryID" ref="SupplierPartAuxiliaryID" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ItemIn">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
<xs:element name="ItemDetail" ref="ItemDetail"/>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="0" maxOccurs="1"/>
<xs:element name="ShipTo" ref="ShipTo" minOccurs="0" maxOccurs="1"/>
<xs:element name="Shipping" ref="Shipping" minOccurs="0" maxOccurs="1"/>
<xs:element name="Tax" ref="Tax" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="quantity" type="xs:string" use="required"/>
<xs:attribute name="lineNumber" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="ItemOut">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
<xs:element name="ItemDetail" ref="ItemDetail" minOccurs="0" maxOccurs="1"/>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="0" maxOccurs="1"/>
<xs:element name="ShipTo" ref="ShipTo" minOccurs="0" maxOccurs="1"/>
<xs:element name="Shipping" ref="Shipping" minOccurs="0" maxOccurs="1"/>
<xs:element name="Tax" ref="Tax" minOccurs="0" maxOccurs="1"/>
<xs:element name="Distribution" ref="Distribution" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Contact" ref="Contact" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Comments" ref="Comments" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="quantity" type="xs:string" use="required"/>
<xs:attribute name="lineNumber" type="xs:string"/>
<xs:attribute name="requisitionID" type="xs:string"/>
<xs:attribute name="requestedDeliveryDate" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="ItemSegment">
<xs:complexType>
<xs:sequence>
<xs:element name="ContractItem" ref="ContractItem" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="segmentKey" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="LeadTime" type="xs:string"/>
<xs:element name="ManufacturerName">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="ManufacturerPartID" type="xs:string"/>
<xs:element name="Message">
<xs:complexType>
<xs:sequence>
<xs:element name="Status" ref="Status" minOccurs="0" maxOccurs="1"/>
<xs:choice>
<xs:element name="PunchOutOrderMessage" ref="PunchOutOrderMessage"/>
<xs:element name="SubscriptionChangeMessage" ref="SubscriptionChangeMessage"/>
<xs:element name="SupplierChangeMessage" ref="SupplierChangeMessage"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="deploymentMode" default="production">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="production"/>
<xs:enumeration value="test"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="inReplyTo" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="MessageType" type="xs:string"/>
<xs:element name="Money">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="currency" type="xs:string" use="required"/>
<xs:attribute name="alternateAmount" type="xs:string"/>
<xs:attribute name="alternateCurrency" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Name">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Number" type="xs:string"/>
<xs:element name="Option">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="a-dtype" type="xs:NMTOKENS" fixed="name string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="OrderMethod">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderTarget" ref="OrderTarget"/>
<xs:element name="OrderProtocol" ref="OrderProtocol" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OrderMethods">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderMethod" ref="OrderMethod" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Contact" ref="Contact" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OrderProtocol" type="xs:string"/>
<xs:element name="OrderRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderRequestHeader" ref="OrderRequestHeader"/>
<xs:element name="ItemOut" ref="ItemOut" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OrderRequestHeader">
<xs:complexType>
<xs:sequence>
<xs:element name="Total" ref="Total"/>
<xs:element name="ShipTo" ref="ShipTo" minOccurs="0" maxOccurs="1"/>
<xs:element name="BillTo" ref="BillTo"/>
<xs:element name="Shipping" ref="Shipping" minOccurs="0" maxOccurs="1"/>
<xs:element name="Tax" ref="Tax" minOccurs="0" maxOccurs="1"/>
<xs:element name="Payment" ref="Payment" minOccurs="0" maxOccurs="1"/>
<xs:element name="Contact" ref="Contact" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Comments" ref="Comments" minOccurs="0" maxOccurs="1"/>
<xs:element name="Followup" ref="Followup" minOccurs="0" maxOccurs="1"/>
<xs:element name="DocumentReference" ref="DocumentReference" minOccurs="0" maxOccurs="1"/>
<xs:element name="Extrinsic" ref="Extrinsic" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="orderID" type="xs:string" use="required"/>
<xs:attribute name="orderDate" type="xs:string" use="required"/>
<xs:attribute name="type" default="new">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="new"/>
<xs:enumeration value="update"/>
<xs:enumeration value="delete"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="requisitionID" type="xs:string"/>
<xs:attribute name="shipComplete">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="yes"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="OrderTarget">
<xs:complexType>
<xs:choice>
<xs:element name="Phone" ref="Phone"/>
<xs:element name="Email" ref="Email"/>
<xs:element name="Fax" ref="Fax"/>
<xs:element name="URL" ref="URL"/>
<xs:element name="OtherOrderTarget" ref="OtherOrderTarget"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="OtherOrderTarget">
<xs:complexType mixed="true">
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="PCard">
<xs:complexType>
<xs:sequence>
<xs:element name="PostalAddress" ref="PostalAddress" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="number" type="xs:string" use="required"/>
<xs:attribute name="expiration" type="xs:string" use="required"/>
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="Payment">
<xs:complexType>
<xs:sequence>
<xs:element name="PCard" ref="PCard"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Phone">
<xs:complexType>
<xs:sequence>
<xs:element name="TelephoneNumber" ref="TelephoneNumber"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="PostalAddress">
<xs:complexType>
<xs:sequence>
<xs:element name="DeliverTo" ref="DeliverTo" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Street" ref="Street" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="City" ref="City"/>
<xs:element name="State" ref="State" minOccurs="0" maxOccurs="1"/>
<xs:element name="PostalCode" ref="PostalCode" minOccurs="0" maxOccurs="1"/>
<xs:element name="Country" ref="Country"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="PostalCode" type="xs:string"/>
<xs:element name="ProfileRequest">
<xs:complexType/>
</xs:element>
<xs:element name="ProfileResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Option" ref="Option" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Transaction" ref="Transaction" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="effectiveDate" type="xs:string" use="required"/>
<xs:attribute name="a-dtype" type="xs:NMTOKENS" fixed="effectiveDate dateTime"/>
</xs:complexType>
</xs:element>
<xs:element name="PunchOutOrderMessage">
<xs:complexType>
<xs:sequence>
<xs:element name="BuyerCookie" ref="BuyerCookie"/>
<xs:element name="PunchOutOrderMessageHeader" ref="PunchOutOrderMessageHeader"/>
<xs:element name="ItemIn" ref="ItemIn" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PunchOutOrderMessageHeader">
<xs:complexType>
<xs:sequence>
<xs:element name="Total" ref="Total"/>
<xs:element name="ShipTo" ref="ShipTo" minOccurs="0" maxOccurs="1"/>
<xs:element name="Shipping" ref="Shipping" minOccurs="0" maxOccurs="1"/>
<xs:element name="Tax" ref="Tax" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="operationAllowed" use="required">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="create"/>
<xs:enumeration value="inspect"/>
<xs:enumeration value="edit"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="PunchOutSetupRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="BuyerCookie" ref="BuyerCookie"/>
<xs:element name="Extrinsic" ref="Extrinsic" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="BrowserFormPost" ref="BrowserFormPost" minOccurs="0" maxOccurs="1"/>
<xs:element name="Contact" ref="Contact" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SupplierSetup" ref="SupplierSetup" minOccurs="0" maxOccurs="1"/>
<xs:element name="ShipTo" ref="ShipTo" minOccurs="0" maxOccurs="1"/>
<xs:element name="SelectedItem" ref="SelectedItem" minOccurs="0" maxOccurs="1"/>
<xs:element name="ItemOut" ref="ItemOut" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="operation" use="required">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="create"/>
<xs:enumeration value="inspect"/>
<xs:enumeration value="edit"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="PunchOutSetupResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="StartPage" ref="StartPage"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PunchoutDetail">
<xs:complexType>
<xs:sequence>
<xs:element name="Description" ref="Description" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="URL" ref="URL"/>
<xs:element name="Classification" ref="Classification" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="ManufacturerName" ref="ManufacturerName" minOccurs="0" maxOccurs="1"/>
<xs:element name="ManufacturerPartID" ref="ManufacturerPartID" minOccurs="0" maxOccurs="1"/>
<xs:element name="ExpirationDate" ref="ExpirationDate" minOccurs="0" maxOccurs="1"/>
<xs:element name="EffectiveDate" ref="EffectiveDate" minOccurs="0" maxOccurs="1"/>
<xs:element name="SearchGroupData" ref="SearchGroupData" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="TerritoryAvailable" ref="TerritoryAvailable" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Request">
<xs:complexType>
<xs:choice>
<xs:element name="ProfileRequest" ref="ProfileRequest"/>
<xs:element name="OrderRequest" ref="OrderRequest"/>
<xs:element name="PunchOutSetupRequest" ref="PunchOutSetupRequest"/>
<xs:element name="StatusUpdateRequest" ref="StatusUpdateRequest"/>
<xs:element name="GetPendingRequest" ref="GetPendingRequest"/>
<xs:element name="SubscriptionListRequest" ref="SubscriptionListRequest"/>
<xs:element name="SubscriptionContentRequest" ref="SubscriptionContentRequest"/>
<xs:element name="SupplierListRequest" ref="SupplierListRequest"/>
<xs:element name="SupplierDataRequest" ref="SupplierDataRequest"/>
</xs:choice>
<xs:attribute name="deploymentMode" default="production">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="production"/>
<xs:enumeration value="test"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="Response">
<xs:complexType>
<xs:sequence>
<xs:element name="Status" ref="Status"/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:choice>
<xs:element name="ProfileResponse" ref="ProfileResponse"/>
<xs:element name="PunchOutSetupResponse" ref="PunchOutSetupResponse"/>
<xs:element name="GetPendingResponse" ref="GetPendingResponse"/>
<xs:element name="SubscriptionListResponse" ref="SubscriptionListResponse"/>
<xs:element name="SubscriptionContentResponse" ref="SubscriptionContentResponse"/>
<xs:element name="SupplierListResponse" ref="SupplierListResponse"/>
<xs:element name="SupplierDataResponse" ref="SupplierDataResponse"/>
</xs:choice>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SearchAttribute">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="type" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="SearchDataElement">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="SearchGroup">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="SearchAttribute" ref="SearchAttribute" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SearchGroupData">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="SearchDataElement" ref="SearchDataElement" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Segment">
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="description" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="SelectedItem">
<xs:complexType>
<xs:sequence>
<xs:element name="ItemID" ref="ItemID"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sender">
<xs:complexType>
<xs:sequence>
<xs:element name="Credential" ref="Credential" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="UserAgent" ref="UserAgent"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SharedSecret">
<xs:complexType mixed="true"/>
</xs:element>
<xs:element name="ShipTo">
<xs:complexType>
<xs:sequence>
<xs:element name="Address" ref="Address"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Shipping">
<xs:complexType>
<xs:sequence>
<xs:element name="Money" ref="Money"/>
<xs:element name="Description" ref="Description"/>
</xs:sequence>
<xs:attribute name="trackingDomain" type="xs:string"/>
<xs:attribute name="trackingId" type="xs:string"/>
<xs:attribute name="tracking" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="ShortName" type="xs:string"/>
<xs:element name="StartPage">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="State" type="xs:string"/>
<xs:element name="Status">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="code" type="xs:string" use="required"/>
<xs:attribute name="text" type="xs:string" use="required"/>
<xs:attribute name="lang" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="StatusUpdateRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="DocumentReference" ref="DocumentReference"/>
<xs:element name="Status" ref="Status"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Street" type="xs:string"/>
<xs:element name="Subscription">
<xs:complexType>
<xs:sequence>
<xs:element name="InternalID" ref="InternalID"/>
<xs:element name="Name" ref="Name"/>
<xs:element name="Changetime" ref="Changetime"/>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="Format" ref="Format" minOccurs="0" maxOccurs="1"/>
<xs:element name="Description" ref="Description" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionChangeMessage">
<xs:complexType>
<xs:sequence>
<xs:element name="Subscription" ref="Subscription" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="new"/>
<xs:enumeration value="update"/>
<xs:enumeration value="delete"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionContent">
<xs:complexType>
<xs:choice>
<xs:element name="CIFContent" ref="CIFContent"/>
<xs:element name="Index" ref="Index"/>
<xs:element name="Contract" ref="Contract"/>
</xs:choice>
<xs:attribute name="filename" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionContentRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="InternalID" ref="InternalID"/>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionContentResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Subscription" ref="Subscription"/>
<xs:element name="SubscriptionContent" ref="SubscriptionContent" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SubscriptionListRequest">
<xs:complexType/>
</xs:element>
<xs:element name="SubscriptionListResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Subscription" ref="Subscription" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Supplier">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" ref="Name"/>
<xs:element name="Comments" ref="Comments" minOccurs="0" maxOccurs="1"/>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="SupplierLocation" ref="SupplierLocation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="corporateURL" type="xs:string"/>
<xs:attribute name="storeFrontURL" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="SupplierChangeMessage">
<xs:complexType>
<xs:sequence>
<xs:element name="Supplier" ref="Supplier" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="new"/>
<xs:enumeration value="update"/>
<xs:enumeration value="delete"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="SupplierDataRequest">
<xs:complexType>
<xs:sequence>
<xs:element name="SupplierID" ref="SupplierID" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplierDataResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Supplier" ref="Supplier"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplierID">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="domain" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="SupplierListRequest">
<xs:complexType/>
</xs:element>
<xs:element name="SupplierListResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Supplier" ref="Supplier" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplierLocation">
<xs:complexType>
<xs:sequence>
<xs:element name="Address" ref="Address"/>
<xs:element name="OrderMethods" ref="OrderMethods"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SupplierPartAuxiliaryID">
<xs:complexType mixed="true"/>
</xs:element>
<xs:element name="SupplierPartID" type="xs:string"/>
<xs:element name="SupplierSetup">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Tax">
<xs:complexType>
<xs:sequence>
<xs:element name="Money" ref="Money"/>
<xs:element name="Description" ref="Description"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TelephoneNumber">
<xs:complexType>
<xs:sequence>
<xs:element name="CountryCode" ref="CountryCode"/>
<xs:element name="AreaOrCityCode" ref="AreaOrCityCode"/>
<xs:element name="Number" ref="Number"/>
<xs:element name="Extension" ref="Extension" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TerritoryAvailable" type="xs:string"/>
<xs:element name="To">
<xs:complexType>
<xs:sequence>
<xs:element name="Credential" ref="Credential" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Total">
<xs:complexType>
<xs:sequence>
<xs:element name="Money" ref="Money"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Transaction">
<xs:complexType>
<xs:sequence>
<xs:element name="URL" ref="URL"/>
<xs:element name="Option" ref="Option" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="requestName" type="xs:string" use="required"/>
<xs:attribute name="a-dtype" type="xs:NMTOKENS" fixed="requestName NMTOKEN"/>
</xs:complexType>
</xs:element>
<xs:element name="URL">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="UnitOfMeasure" type="xs:string"/>
<xs:element name="UnitPrice">
<xs:complexType>
<xs:sequence>
<xs:element name="Money" ref="Money"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="UserAgent" type="xs:string"/>
<xs:element name="cXML">
<xs:complexType>
<xs:choice>
<xs:sequence>
<xs:element name="Header" ref="Header"/>
<xs:choice>
<xs:element name="Message" ref="Message"/>
<xs:element name="Request" ref="Request"/>
</xs:choice>
</xs:sequence>
<xs:element name="Response" ref="Response"/>
</xs:choice>
<xs:attribute name="version" type="xs:string" default="1.1.009"/>
<xs:attribute name="payloadID" type="xs:string" use="required"/>
<xs:attribute name="timestamp" type="xs:string" use="required"/>
<xs:attribute name="lang" type="xs:string"/>
</xs:complexType>
</xs:element>
</xs:schema>