[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Example code in Specification and Schema working draft.
Hi I am enclosing the examples from the specification (with
some namespace information added to allow tools to validate against the
schemas). A new schema is also included. Some minor adjustments were needed in the schema to allow
status codes to be used as Boolean expressions on ToLinks (especially in
Decision constructs). The most natural way to do this is to add
ConditionGuardValues to the enumeration for the allowable expression languages.
So guard Booleans remain on FromLinks but we are able to conditionally
transition to different states based on status as well. This seems to be a
definite improvement and part of the reason for sending out the examples is to
show use cases for this enhancement. As usual, credit JJ with showing how this
can improve descriptions. I also added the optname attribute group. (Thanks John!) It
allows writing business processes to be less cumbersome. I would ask that
interested TC members consider other elements that might benefit from having
the optname attribute group instead of the name attribute group. For the most
part, it elements are not referenced elsewhere and do not necessarily need a
display name in GUI environments, then they are candidates for the optname
attribute group rather than the name attribute group. The examples are 98% correct except that I have to hunt down
the correct ID values in some IDREF contexts. You will see an occasional IDREF
with a “fix” substring. Those are the ones to be fixed by Tuesday
next week. We also have two much more complex examples exhibiting UBL
based processes and a version of CPA negotiation using some of the new BPSS 2.0
features that significantly simplifies the previous versions. If you have a validating tool (I am using Oxygen 5.1 for
this work now) and wish to check the examples, be sure to adjust your schema
location value on your local disk appropriately. Let me know about the errors
you encounter (they should all be ones complaining about IDREFs for which no ID
value is found, mainly because the ID value is in another fragment of XML
example that I have not connected yet…) Dale Moberg |
<?xml version="1.0" encoding="UTF-8"?> <Variable xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="PO Accepted" nameID="H7YIUSOP" businessTransactionActivityRef="ID122A39C23" businessDocumentRef="ID1012"> <ConditionExpression expressionLanguage="XPath1" expression="//POAck[@status='Reject']"/> </Variable>
<?xml version="1.0" encoding="UTF-8"?> <ProcessSpecification xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xi="http://www.w3.org/2001/XInclude" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="PurchasingCluster" nameID="PC23" uuid="urn:purchasingcluster" specificationVersion="2" instanceVersion="1"> <!--xi:include href="signals-package-2.0.xml" parse="xml" xpointer="xpointer(/ProcessSpecification/Package[1])"/--> <BusinessDocument name="Invoice" nameID="bd-invoice"> <Specification type="schema" location="http://purchasingcluster.com/Invoice.xsd" name="Invoice" nameID="invoice32"/> </BusinessDocument> <BusinessDocument name="InvoiceResponse" nameID="bd-invoiceResponse"> <Specification type="schema" location="http://purchasingcluster.com/InvoiceResponse.xsd" name="InvoiceResponse" nameID="invoice33"/> </BusinessDocument> <DataExchange name="Data:Invoice" nameID="data-invoice"> <RequestingBusinessActivity name="ReqBA:SendInvoice" nameID="debareq-invoice" timeToAcknowledgeReceipt="PT6H" timeToAcknowledgeAcceptance="PT12H"> <DocumentEnvelope name="DE:ProcessInvoice" nameID="data-de-invoice" businessDocumentRef="bd-invoice"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="ResBA:ReceiveInvoice" nameID="debares-invoice"> <DocumentEnvelope name="DE:ProcessInvoiceResponse" nameID="data-de-invoiceResponse" businessDocumentRef="bd-invoiceResponse"/> </RespondingBusinessActivity> </DataExchange> <BusinessTransaction name="BT:Invoice" nameID="bt-invoice"> <RequestingBusinessActivity name="ReqBA:SendInvoice" nameID="reqba-invoice" timeToAcknowledgeReceipt="PT6H" timeToAcknowledgeAcceptance="PT12H"> <DocumentEnvelope name="DE:ProcessInvoice" nameID="bt-de-invoice" businessDocumentRef="bd-invoice"/> <ReceiptAcknowledgement name="sira" nameID="sira1" signalDefinitionRef="ra2"/> <ReceiptAcknowledgementException name="sirae" nameID="sirae1" signalDefinitionRef="rae2"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="ResBA:ReceiveInvoice" nameID="resba-invoice"> <DocumentEnvelope name="DE:ProcessInvoiceResponse" nameID="bt-de-invoiceResponse" businessDocumentRef="bd-invoiceResponse"/> <ReceiptAcknowledgement name="sira" nameID="sira2" signalDefinitionRef="ra2"/> <ReceiptAcknowledgementException name="sirae" nameID="sirae2" signalDefinitionRef="rae2"/> </RespondingBusinessActivity> </BusinessTransaction> </ProcessSpecification>
<?xml version="1.0" encoding="UTF-8"?> <QueryResponse xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Catalog Request" nameID="ID100" isGuaranteedDeliveryRequired="false"> <RequestingBusinessActivity name="requestCatalog" nameID="ID101"> <DocumentEnvelope name="Catalog Request" nameID="ID102" businessDocumentRef="ID1000"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="sendCatalog" nameID="ID103"> <DocumentEnvelope name="Catalog Response" nameID="ID104" isPositiveResponse="true" businessDocumentRef="IDs1001"/> </RespondingBusinessActivity> </QueryResponse>
<?xml version="1.0" encoding="UTF-8"?> <Package xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Testharness2" nameID="TestHarness2"> <Signal name="ReceiptAcknowledgement" nameID="ra2"> <Specification location="http://www.oasis-open.org/committees/ebBP/BPS/2.0/Signals.xsd" name="ReceiptAcknowledgement" nameID="rabpss2"/> </Signal> <Signal name="ReceiptAcknowledgementException" nameID="rae2"> <Specification location="http://www.oasis-open.org/committees/ebBP/BPS/2.0/Signals.xsd" name="ReceiptAcknowledgementException" nameID="raebpss2"/> </Signal> <Signal name="AcceptanceAcknowledgement" nameID="aa2"> <Specification location="http://www.oasis-open.org/committees/ebBP/BPS/2.0/Signals.xsd" name="AcceptanceAcknowledgement" nameID="aabpss2"/> </Signal> <Signal name="AcceptanceAcknowledgementException" nameID="aae2"> <Specification location="http://www.oasis-open.org/committees/ebBP/BPS/2.0/Signals.xsd" name="AcceptanceAcknowledgementException" nameID="aaebpss2"/> </Signal> <Signal name="GeneralException" nameID="ge2"> <Specification location="http://www.oasis-open.org/committees/ebBP/BPS/2.0/Signals.xsd" name="GeneralException" nameID="gebpss2"/> </Signal> <CommercialTransaction name="CreateOrder" nameID="ID110" isGuaranteedDeliveryRequired="true"> <RequestingBusinessActivity name="sendOrder" nameID="ID111" isNonRepudiationReceiptRequired="false" isNonRepudiationRequired="false" timeToAcknowledgeAcceptance="PT1H" timeToAcknowledgeReceipt="PT1H"> <DocumentEnvelope name="Purchase Order" nameID="ID112" businessDocumentRef="ID1010"/> <ReceiptAcknowledgement name="11011" nameID="ID11011" signalDefinitionRef=" ra2"/> <ReceiptAcknowledgementException name="11012" nameID="ID11012" signalDefinitionRef=" rae2"/> <AcceptanceAcknowledgement name="11013" nameID="ID11013" signalDefinitionRef="aa2"/> <AcceptanceAcknowledgementException name="11014" nameID="ID11014" signalDefinitionRef="aae2"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="sendPOAcceptance" nameID="ID113" isNonRepudiationReceiptRequired="false" isNonRepudiationRequired="false" timeToAcknowledgeReceipt="P1D"> <DocumentEnvelope name="Reject Order" nameID="ID114" isPositiveResponse="false" businessDocumentRef="ID1011"/> <DocumentEnvelope name="Accept Order" nameID="ID115" isPositiveResponse="true" businessDocumentRef="ID1012"/> <ReceiptAcknowledgement name="11311" nameID="ID11311" signalDefinitionRef=" ra2"/> <ReceiptAcknowledgementException name="11312" nameID="ID11312" signalDefinitionRef=" rae2"/> <AcceptanceAcknowledgement name="11313" nameID="ID11313" signalDefinitionRef=" aa2"/> <AcceptanceAcknowledgementException name="11314" nameID="ID11314" signalDefinitionRef=" aae2"/> </RespondingBusinessActivity> </CommercialTransaction> </Package>
<?xml version="1.0" encoding="UTF-8"?> <Package xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Testharness" nameID="Testharness"> <BusinessDocument name="Credit Request" nameID="ID122A3F613C "> <Specification name="CreditRequestSchema" nameID="ID123A3F613D" type="schema" location="http://www.example.com/creditRequest.xsd" targetNamespace="http://www.example.com/creditRequest"/> </BusinessDocument> <!-- The following two documents refer to the same physical document, however, by their content as evaluated at run-time, they are logically different --> <BusinessDocument name="Credit Denied" nameID="ID122A3F8E3"> <ConditionExpression expressionLanguage="XPath1" expression="//@CreditResponse=denied"/> <Specification name="CreditResponseSchema" nameID="ID123A3F613E" type="schema" location="http://www.example.com/creditResponse.xsd" targetNamespace="http://www.example.com/creditResponse"/> </BusinessDocument> <BusinessDocument name="Credit Approved" nameID="ID122A3F6C3"> <ConditionExpression expressionLanguage="XPath1" expression="//@CreditResponse=approved"/> <Specification name="CreditRequestSchema" nameID="ID123A3F613F" type="schema" location="http://www.example.com/creditResponse.xsd" targetNamespace="http://www.example.com/creditResponse.xsd"/> </BusinessDocument> <BusinessDocument name="Credit Rating" nameID="ID122A3F8E4"> <Specification name="CreditRatingSchema" nameID="ID123A3F613G" type="schema" location="http://www.example.com/creditRating.xsd" targetNamespace="http://www.example.com/creditRating.xsd"/> </BusinessDocument> <CommercialTransaction name="Check Credit" nameID="ID122A3DD33" isGuaranteedDeliveryRequired="true"> <RequestingBusinessActivity name="checkCredit" nameID="ID122A3E833" isAuthorizationRequired="true" isIntelligibleCheckRequired="true" isNonRepudiationReceiptRequired="true" isNonRepudiationRequired="true" timeToAcknowledgeAcceptance=" PT30S" timeToAcknowledgeReceipt=" PT10S"> <DocumentEnvelope name="DE" nameID="IDDE1" isAuthenticated="persistent" isConfidential="persistent" isTamperDetectable="persistent" businessDocumentRef="ID122A3F613C"/> <ReceiptAcknowledgement name="122A3E834" nameID="ID122A3E834" signalDefinitionRef="ra2"/> <ReceiptAcknowledgementException name="122A3E835" nameID="ID122A3E835" signalDefinitionRef="rae2"/> <AcceptanceAcknowledgement name="122A3E836" nameID="ID122A3E836" signalDefinitionRef="aa2"/> <AcceptanceAcknowledgementException name="122A3E837" nameID="ID122A3E837" signalDefinitionRef="aae2"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="confirmCredit" nameID="ID122A3E863" isAuthorizationRequired="true" isIntelligibleCheckRequired="true" isNonRepudiationReceiptRequired="true" isNonRepudiationRequired="true" timeToAcknowledgeReceipt="PT10S"> <DocumentEnvelope name="DE21" nameID="IDDE21" isPositiveResponse="false" isAuthenticated="persistent" isConfidential="persistent" isTamperDetectable="persistent" businessDocumentRef="ID122A3F8E3"/> <DocumentEnvelope name="DE22" nameID="IDDE22" isPositiveResponse="true" isAuthenticated="persistent" isConfidential="persistent" isTamperDetectable="persistent" businessDocumentRef="ID122A3F6C3"> <Attachment name="Credit Report" nameID="IDAT1" mimeType="application/xml" businessDocumentRef="ID122A3F8E4" isConfidential="none" isTamperDetectable="none" isAuthenticated="none"> <Documentation>Credit report included with message.</Documentation> <Specification name="CreditReportSpec" nameID="IDCRS" location="http://www.example.com/HowToProcessCreditReport.xhtml"/> </Attachment> </DocumentEnvelope> <ReceiptAcknowledgement name="132A3E863" nameID="ID132A3E863" signalDefinitionRef="ra2"/> <ReceiptAcknowledgementException name="142A3E863" nameID="ID142A3E863" signalDefinitionRef="rae2"/> <AcceptanceAcknowledgement name="152A3E863" nameID="ID152A3E863" signalDefinitionRef="aa2"/> <AcceptanceAcknowledgementException name="162A3E863" nameID="ID162A3E863" signalDefinitionRef="aae2"/> </RespondingBusinessActivity> </CommercialTransaction> </Package>
<?xml version="1.0" encoding="UTF-8"?> <QueryResponse xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Catalog Request" nameID="ID100" isGuaranteedDeliveryRequired="false"> <RequestingBusinessActivity name="requestCatalog" nameID="ID101"> <DocumentEnvelope name="Catalog Request" nameID="ID102" businessDocumentRef="ID1000"/> </RequestingBusinessActivity> <RespondingBusinessActivity name="sendCatalog" nameID="ID103"> <DocumentEnvelope name="Catalog Response" nameID="ID104" isPositiveResponse="true" businessDocumentRef="ID1001"/> </RespondingBusinessActivity> </QueryResponse>
<?xml version="1.0" encoding="UTF-8"?> <BusinessTransactionActivity xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Catalog Request" nameID="ID100300" businessTransactionRef="ID100" hasLegalIntent="false"> <TimeToPerform duration="P1D"/> <Performs currentRoleRef="ID7902847" initiatingRoleRef="ID101"/> <Performs currentRoleRef="ID7902028" respondingRoleRef="ID103"/> </BusinessTransactionActivity>
<?xml version="1.0" encoding="UTF-8"?> <OperationMapping xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Catalog Request" nameID="ID23948092" roleRef="ID7902028" businessTransactionActivityRef="ID100300"> <MessageMap interfaceName="Procurement" operationName="catalogRequest" operationStep="input" documentEnvelopeRef="ID102"/> <MessageMap interfaceName="Procurement" operationName="catalogRequest" operationStep="output" documentEnvelopeRef="ID104"/> </OperationMapping>
<?xml version="1.0" encoding="UTF-8"?> <BusinessCollaboration xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Firm Order" nameID="ID122A38D93"> <Role name="buyer" nameID="ID122A38DA3"/> <Role name="seller" nameID="ID122A38DA5"/> <TimeToPerform duration="P1D"/> <Start name="ID876F38OP5" nameID="ID876F38OP5"> <ToLink toBusinessStateRef="IDPO3DA1"/> </Start> <BusinessTransactionActivity name="Place Order" nameID="IDPO3DA1" businessTransactionRef="ID122A3DD33" hasLegalIntent="true"> <TimeToPerform duration="PT4H "/> <Performs currentRoleRef="ID122A38DA3" initiatingRoleRef="IDfixBTReqnameID"/> <Performs currentRoleRef="ID122A38DA5" respondingRoleRef="IDfixBTResnameID"/> </BusinessTransactionActivity> <Success name="Success" nameID="D2JSK99AK"/> <Failure name="Failure" nameID="DK9726AJ"/> <Transition> <FromLink fromBusinessStateRef="ID876F38OP5"/> <ToLink toBusinessStateRef="ID122A39C23"/> </Transition> <Decision> <FromLink fromBusinessStateRef="ID122A39C23"/> <ToLink toBusinessStateRef="D2JSK99AK" > <ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/> </ToLink> <ToLink toBusinessStateRef="DK9726AJ" > <ConditionExpression expressionLanguage="ConditionGuardValue" expression="AnyFailure"/> </ToLink> </Decision> </BusinessCollaboration>
<?xml version="1.0" encoding="UTF-8"?> <BusinessCollaboration xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Firm Order" nameID="ID122A38D93"> <Role name="buyer" nameID="ID122A38DA3"/> <Role name="seller" nameID="ID122A38DA5"/> <TimeToPerform duration="P1D"/> <Start name="ID876F38OP5" nameID="ID876F38OP5"> <ToLink toBusinessStateRef="ID122A39C23"/> </Start> <BusinessTransactionActivity name="Place Order" nameID="ID122A39C23" businessTransactionRef="ID122A3DD33" hasLegalIntent="true"> <TimeToPerform duration="PT4H"/> <Performs currentRoleRef="ID122A38DA3" initiatingRoleRef="IDfix"/> <Performs currentRoleRef="ID122A38DA5" respondingRoleRef="IDfix"/> </BusinessTransactionActivity> <BusinessTransactionActivity name="Notify shipment" nameID="ID122A39D24" businessTransactionRef="ID122A3DD34" hasLegalIntent="false"> <TimeToPerform duration="PT4H"/> <Performs currentRoleRef="ID122A38DA5" initiatingRoleRef="IDfix"/> <Performs currentRoleRef="ID122A38DA3" respondingRoleRef="IDfix"/> </BusinessTransactionActivity> <Success name="Success" nameID="D2JSK99AK"/> <Failure name="Failure" nameID="DK9726AJ"/> <Transition> <FromLink fromBusinessStateRef="ID876F38OP5"/> <ToLink toBusinessStateRef="ID122A39C23"/> </Transition> <Decision> <FromLink fromBusinessStateRef="ID122A39C23"/> <ToLink toBusinessStateRef="ID122A39D24"> <ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/> </ToLink> <ToLink toBusinessStateRef="DK9726AJ"> <ConditionExpression expressionLanguage="ConditionGuardValue" expression="AnyFailure"/> </ToLink> </Decision> <Decision> <FromLink fromBusinessStateRef="ID122A39D24"/> <ToLink toBusinessStateRef="D2JSK99AK"> <ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/> </ToLink> <ToLink toBusinessStateRef="DK9726AJ"> <ConditionExpression expressionLanguage="ConditionGuardValue" expression="AnyFailure"/> </ToLink> </Decision> </BusinessCollaboration>
<?xml version="1.0" encoding="UTF-8"?> <Decision xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/committees/ebBP/BPS/2.0 c:\ebBPSS-2_april-8-2005-tc-review.xsd" name="Decision10" nameID="IDDecision10"> <FromLink fromBusinessStateRef="ID122A39C23"/> <ToLink toBusinessStateRef="ID122A39D24"> <ConditionExpression expressionLanguage="DocumentEnvelope" expression="PO Accepted"/> </ToLink> <ToLink toBusinessStateRef="DK9726AJ"> <ConditionExpression expressionLanguage="ConditionGuardValue" expression="AnyFailure"/> </ToLink> </Decision>
ebBPSS-2_april-8-2005-tc-review.xsd
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]