next up previous contents
Next: 3.4.3 Specification of a Up: 3.4 ebXML Business Processes Previous: 3.4.1 The ebXML Business   Contents

3.4.2 Specification of a Business Transaction and its Business Document Flow

The Business Transaction is a central role within a Business Collaboration. Figure 4 shows the related UML class diagram. Basically a Business Activity uses a Business Transaction. A Business Transaction has two Business Activities which are the Requesting Business Activity and the Responding Business Activity. There is always a requesting activity and a responding activity. Both activities have common attributes (inherited from the abstract BusinessAction class) namely responsibility for the so called Business Signals, which are notification messages like: ``Receipt Acknowledgement Signal'' and ``Acceptance Acknowledgement Signal''. A requesting activity has only 1 document envelope (whereas a document envelope class has zero to $n$ documents, which reference Business Documents). The responding activity has zero or more document envelopes. That means, that a responding activity can have no documents at all.

Figure 4: UML Diagram of a Business Transaction (Adapted from the Business Process Specification Schema document)
\includegraphics[]{dia_diagrams/UML_Diagram_Business_Transaction}

The Business Process Schema Specification [7] includes the complete XML Schema code. Here are examples of XML instances to demonstrate a Business Transaction.

<BusinessTransaction name=''Notify of advanceshipment''>
        <RequestingBusinessActivity name=''''>
                <DocumentEnvelope BusinessDocument name=''ASN''/>
        </RequestingBusinessActivity>
        <RespondingBusinessActivity name=''''>
        </RespondingBusinessActivity>
</BusinessTransaction>

To define the flow of the Business Documents (which document follows which document within a business transaction) the specification uses an indirect definition. By default each requesting activity has a Business Document. Again, the structure of the Business Document is not defined in the Business Process Schema Specification. In the UML class diagram 5 the document envelope class only has a reference to the real document (the Business Document). Each requesting activity has a document but not the responding activity. A responding activity can have $n$ documents (document envelopes). Further a document envelope can have $n$ attachments for whatever is necessary. ebXML introduces the security of the documents. The Document Envelope and the Attachment class inherits from the DocSecurity class, which has attributes for encryption, signature and repudiation.

Figure 5: UML Diagram of document flow (Adapted from the Business Process Specification Schema document)
\includegraphics[]{dia_diagrams/UML_Diagram_Document_Flow}

Again some XML source code will clarify how the Business Transaction uses Business Documents and how the flow of the documents is solved with the requesting activity and the responding activity.

<BusinessDocument name=''Purchase Order'' 
        specificationLocation=''somewhere''/>
<BusinessDocument name=''PO Acknowledgement'' 
        specificationLocation=''somewhere''/>
<BusinessDocument name=''PO Rejection'' 
        specificationLocation=''somewhere''/>
<BusinessDocument name=''Delivery Instructions'' 
        specificationLocation=''somewhere''/>

<Business Transaction name=''Create Order''>
        <RequestingBusinessActivity name=''''>
                <DocumentEnvelope isPositiveResponse=''true''
                        BusinessDocument name=''ebXML1.0/PO Acknowledgement''/>
                        <Attachment
                                name=''DeliveryNotes''
                                mimeType=''XML''
                                BusinessDocument=''ebXML1.0/Delivery Instructions''
                                specification=''''
                                isConfidential=''true''
                                isTamperProof=''true''
                                isAuthenticated=''true''>
                        </Attachment>
                </DocumentEnvelope>
        </RequestingBusinessActivity>
        <RespondingBusinessActivity name=''''>
                <DocumentEnvelope BussinesDocument=''ebXML1.0/PO Acknowledgement''/>
                <DocumentEnvelope isPositiveResponse=''true''
                        BussinesDocument=''ebXML1.0/PO Rejection''/>
        </RespondingBusinessActivity>
</Business Transaction>


next up previous contents
Next: 3.4.3 Specification of a Up: 3.4 ebXML Business Processes Previous: 3.4.1 The ebXML Business   Contents
author: Sacha Schlegel