blob: 59599cb712e57f9bd9b6e81cd7257008de7820f3 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. -->
<!--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>