<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Pallavi Malu (Intel/CH4-97) -->
<!-- edited by Kurt Kanaskie (Lucent Technologies) -->
<xsd:schema targetNamespace="http://www.ebxml.org/BusinessProcess" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.ebxml.org/BusinessProcess" elementFormDefault="qualified">
	<xsd:element name="Attachment">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="businessDocument" type="xsd:string" use="required"/>
			<xsd:attribute name="businessDocumentIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="specification" type="xsd:anyURI"/>
			<xsd:attribute name="mimeType" type="xsd:string" use="optional"/>
			<xsd:attributeGroup ref="documentSecurity"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="InitiatingRole" type="AuthorizedRole"/>
	<xsd:element name="RespondingRole" type="AuthorizedRole"/>
	<xsd:element name="BinaryCollaboration">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="InitiatingRole"/>
				<xsd:element ref="RespondingRole"/>
				<xsd:element ref="Start"/>
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="BusinessTransactionActivity"/>
					<xsd:element ref="CollaborationActivity"/>
				</xsd:choice>
				<xsd:element ref="Transition" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Success" maxOccurs="unbounded"/>
				<xsd:element ref="Failure" maxOccurs="unbounded"/>
				<xsd:element ref="Fork" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Join" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="pattern" type="xsd:anyURI"/>
			<xsd:attribute name="beginsWhen" type="xsd:string"/>
			<xsd:attribute name="endsWhen" type="xsd:string"/>
			<xsd:attribute name="preCondition" type="xsd:string"/>
			<xsd:attribute name="postCondition" type="xsd:string"/>
			<xsd:attribute name="timeToPerform" type="xsd:duration"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="BusinessDocument">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="ConditionExpression" minOccurs="0"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="specificationLocation" type="xsd:anyURI"/>
			<xsd:attribute name="specificationID" type="xsd:anyURI"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="SubstitutionSet">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="DocumentSubstitution" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="AttributeSubstitution" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="applyToScope" type="xsd:string" use="required"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="DocumentSubstitution">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="originalBusinessDocument" type="xsd:string" use="required"/>
			<xsd:attribute name="originalBusinessDocumentID" type="xsd:ID"/>
			<xsd:attribute name="substituteBusinessDocumentLocation" type="xsd:anyURI" use="required"/>
			<xsd:attribute name="substituteBusinessDocumentId" type="xsd:anyURI"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="AttributeSubstitution">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="attributeName" type="xsd:string" use="required"/>
			<xsd:attribute name="value" type="xsd:string" use="required"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="ConditionExpression">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="expressionLanguage" type="xsd:string" use="required"/>
			<xsd:attribute name="expression" type="xsd:string" use="required"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="BusinessPartnerRole">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Performs" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Transition" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="BusinessTransaction">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="RequestingBusinessActivity"/>
				<xsd:element ref="RespondingBusinessActivity"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="pattern" type="xsd:anyURI"/>
			<xsd:attribute name="beginsWhen" type="xsd:string"/>
			<xsd:attribute name="endsWhen" type="xsd:string"/>
			<xsd:attribute name="isGuaranteedDeliveryRequired" type="xsd:boolean" default="false"/>
			<xsd:attribute name="preCondition" type="xsd:string"/>
			<xsd:attribute name="postCondition" type="xsd:string"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="BusinessTransactionActivity">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="businessTransaction" type="xsd:string" use="required"/>
			<xsd:attribute name="businessTransactionIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="fromAuthorizedRole" type="xsd:string" use="required"/>
			<xsd:attribute name="fromAuthorizedRoleIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="toAuthorizedRole" type="xsd:string" use="required"/>
			<xsd:attribute name="toAuthorizedRoleIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="isConcurrent" type="xsd:boolean" default="true"/>
			<xsd:attribute name="isLegallyBinding" type="xsd:boolean" default="true"/>
			<xsd:attribute name="timeToPerform" type="xsd:duration"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="CollaborationActivity">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="fromAuthorizedRole" type="xsd:string" use="required"/>
			<xsd:attribute name="fromAuthorizedRoleIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="toAuthorizedRole" type="xsd:string" use="required"/>
			<xsd:attribute name="toAuthorizedRoleIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="binaryCollaboration" type="xsd:string" use="required"/>
			<xsd:attribute name="binaryCollaborationIDRef" type="xsd:IDREF"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="DocumentEnvelope">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Attachment" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="businessDocument" type="xsd:string" use="required"/>
			<xsd:attribute name="businessDocumentIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="isPositiveResponse" type="xsd:boolean"/>
			<xsd:attributeGroup ref="documentSecurity"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Documentation">
		<xsd:complexType>
			<xsd:simpleContent>
				<xsd:restriction base="xsd:string">
					<xsd:attribute name="uri" type="xsd:anyURI"/>
				</xsd:restriction>
			</xsd:simpleContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Failure">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="ConditionExpression" minOccurs="0"/>
			</xsd:sequence>
			<xsd:attribute name="fromBusinessState" type="xsd:string" use="required"/>
			<xsd:attribute name="fromBusinessStateIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="conditionGuard">
				<xsd:simpleType>
					<xsd:restriction base="xsd:NMTOKEN">
						<xsd:enumeration value="Success"/>
						<xsd:enumeration value="BusinessFailure"/>
						<xsd:enumeration value="TechnicalFailure"/>
						<xsd:enumeration value="AnyFailure"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Fork">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="type" use="optional" default="All">
				<xsd:simpleType>
					<xsd:restriction base="xsd:NMTOKEN">
						<xsd:enumeration value="All"/>
						<xsd:enumeration value="XOR"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Include">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="name" type="xsd:string" use="required"/>
			<xsd:attribute name="uuid" type="xsd:ID" use="required"/>
			<xsd:attribute name="uri" type="xsd:anyURI" use="required"/>
			<xsd:attribute name="version" type="xsd:string" use="required"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Join">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
			<xsd:attribute name="waitForAll" type="xsd:boolean" default="true"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="MultiPartyCollaboration">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="BusinessPartnerRole" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Package">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:choice minOccurs="0" maxOccurs="unbounded">
					<xsd:element ref="Package" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="BusinessDocument" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="BusinessTransaction" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="BinaryCollaboration" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="MultiPartyCollaboration" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:choice>
			</xsd:sequence>
			<xsd:attributeGroup ref="name"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Performs">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="initiatingRole" type="xsd:string" use="optional"/>
			<xsd:attribute name="initiatingRoleIDRef" type="xsd:IDREF" use="optional"/>
			<xsd:attribute name="respondingRole" type="xsd:string" use="optional"/>
			<xsd:attribute name="respondingRoleIDRef" type="xsd:IDREF" use="optional"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="ProcessSpecification">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="Include" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:choice minOccurs="0" maxOccurs="unbounded">
					<xsd:element ref="Package" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="SubstitutionSet" minOccurs="0"/>
					<xsd:element ref="BusinessDocument" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="BusinessTransaction" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="BinaryCollaboration" minOccurs="0" maxOccurs="unbounded"/>
					<xsd:element ref="MultiPartyCollaboration" minOccurs="0" maxOccurs="unbounded"/>
				</xsd:choice>
			</xsd:sequence>
			<xsd:attribute name="name" type="xsd:string" use="required"/>
			<xsd:attribute name="uuid" type="xsd:anyURI" use="required"/>
			<xsd:attribute name="version" type="xsd:string" use="required"/>
		</xsd:complexType>
		<xsd:unique name="ProcessSpecification-ID">
			<xsd:selector xpath="."/>
			<xsd:field xpath="uuid"/>
		</xsd:unique>
	</xsd:element>
	<xsd:element name="RequestingBusinessActivity">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="BusinessAction">
					<xsd:sequence>
						<xsd:element ref="DocumentEnvelope"/>
					</xsd:sequence>
					<xsd:attribute name="timeToAcknowledgeAcceptance" type="xsd:duration"/>
					<xsd:attribute name="retryCount" type="xsd:int"/>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="RespondingBusinessActivity">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="BusinessAction">
					<xsd:sequence>
						<xsd:element ref="DocumentEnvelope" minOccurs="0" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Start">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:sequence>
			<xsd:attribute name="toBusinessState" type="xsd:string" use="required"/>
			<xsd:attribute name="toBusinessStateIDRef" type="xsd:IDREF"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Success">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="ConditionExpression" minOccurs="0"/>
			</xsd:sequence>
			<xsd:attribute name="fromBusinessState" type="xsd:string" use="required"/>
			<xsd:attribute name="fromBusinessStateIDRef" type="xsd:IDREF"/>
			<xsd:attribute name="conditionGuard">
				<xsd:simpleType>
					<xsd:restriction base="xsd:NMTOKEN">
						<xsd:enumeration value="Success"/>
						<xsd:enumeration value="BusinessFailure"/>
						<xsd:enumeration value="TechnicalFailure"/>
						<xsd:enumeration value="AnyFailure"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="Transition">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
				<xsd:element ref="ConditionExpression" minOccurs="0"/>
			</xsd:sequence>
			<xsd:attribute name="onInitiation" type="xsd:boolean" default="false"/>
			<xsd:attribute name="fromBusinessState" type="xsd:string" use="required"/>
			<xsd:attribute name="fromBusinessStateIDRef" type="xsd:IDREF" use="optional"/>
			<xsd:attribute name="toBusinessState" type="xsd:string" use="required"/>
			<xsd:attribute name="toBusinessStateIDRef" type="xsd:IDREF" use="optional"/>
			<xsd:attribute name="conditionGuard">
				<xsd:simpleType>
					<xsd:restriction base="xsd:NMTOKEN">
						<xsd:enumeration value="Success"/>
						<xsd:enumeration value="BusinessFailure"/>
						<xsd:enumeration value="TechnicalFailure"/>
						<xsd:enumeration value="AnyFailure"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:attribute>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="AuthorizedRole">
		<xsd:sequence>
			<xsd:element ref="Documentation" minOccurs="0"/>
		</xsd:sequence>
		<xsd:attributeGroup ref="name"/>
	</xsd:complexType>
	<xsd:attributeGroup name="documentSecurity">
		<xsd:attribute name="isAuthenticated" default="none">
			<xsd:simpleType>
				<xsd:restriction base="xsd:NMTOKEN">
					<xsd:enumeration value="none"/>
					<xsd:enumeration value="transient"/>
					<xsd:enumeration value="persistent"/>
					<xsd:enumeration value="persistent-and-transient"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="isConfidential" default="none">
			<xsd:simpleType>
				<xsd:restriction base="xsd:NMTOKEN">
					<xsd:enumeration value="none"/>
					<xsd:enumeration value="transient"/>
					<xsd:enumeration value="persistent"/>
					<xsd:enumeration value="persistent-and-transient"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
		<xsd:attribute name="isTamperProof" default="none">
			<xsd:simpleType>
				<xsd:restriction base="xsd:NMTOKEN">
					<xsd:enumeration value="none"/>
					<xsd:enumeration value="transient"/>
					<xsd:enumeration value="persistent"/>
					<xsd:enumeration value="persistent-and-transient"/>
				</xsd:restriction>
			</xsd:simpleType>
		</xsd:attribute>
	</xsd:attributeGroup>
	<xsd:complexType name="BusinessAction">
		<xsd:sequence>
			<xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attributeGroup ref="name"/>
		<xsd:attribute name="isAuthorizationRequired" type="xsd:boolean" default="false"/>
		<xsd:attribute name="isIntelligibleCheckRequired" type="xsd:boolean" default="false"/>
		<xsd:attribute name="isNonRepudiationReceiptRequired" type="xsd:boolean" default="false"/>
		<xsd:attribute name="isNonRepudiationRequired" type="xsd:boolean" default="false"/>
		<xsd:attribute name="timeToAcknowledgeReceipt" type="xsd:duration"/>
	</xsd:complexType>
	<xsd:attributeGroup name="name">
		<xsd:attribute name="name" type="xsd:string"/>
		<xsd:attribute name="nameID" type="xsd:ID"/>
	</xsd:attributeGroup>
</xsd:schema>

