OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-bp message

[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]