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: Linking to end states, in particular from within Decision elements


Submitted by Andreas Schonberger for consideration.

 

[Editorial note: Topic concerns the rigor of our classification of states. Both “gateways” and completion states (and start states) were regarded as “pseudo states” The attempt was made to make BTAs or CAs or CBTAs the “real” states between links. So a decision is not really needed for a BTA that simply “goes to” success or failure; condition expressions on the FromLinks for the completion states can indicate the BTA and expression under which the transition is taken. Yet we left an example in that exhibits the early, less strict semantics of allowing transitions to pseudo states.]

 

Linking to end states, in particular from within Decision elements

Decision element and ToLink, in particular link to end state

The ebBP standard states (on page 62/66):
<Success name="Success" nameID="D2JSK99AK"/>
<Failure name="Failure" nameID="DK9726AJ"/>
<Decision>
<FromLink fromBusinessStateRef=" IDPO3DA1"/>
<ToLink toBusinessStateRef=" D2JSK99AK">
<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/>
</ToLink>
<ToLink toBusinessStateRef="DK9726AJ">
<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Failure"/>
</ToLink>
</Decision>

== This apparently contradicts the following referential constraint, because the Decision.ToLink elements may not reference Success/Failure (page 87):
[ToLink/@toBusinessStateRef]
Every @toBusinessStateRef attribute’s value MUST be a value of a @nameID attribute of either a BusinessTransactionActivity, a CollaborationActivity, or a ComplexBusinessTransactionActivity.
Each of these elements referred to MUST be in the same Collaboration elements that the ToLink is in (that is, MUST be siblings with either a BusinessCollaboration, MultiPartyCollaboration, or BinaryCollaboration parent).

IMHO:
According to the standard the only way to reach Success/Failure seems to be a FromLink in Success/Failure
that references a TransactionActivity.
            - A <Transition> from an Activity to Success/Failure does not seem to be possible because of [ToLink/@toBusinessStateRef].
            - A <ToLink> from within Decision/JOIN further does not seem to be possible because of the xsd-documentation of CompletionType:
<xsd:documentation>The type related to the Success for Failure completion of a Business
Collaboration as a transition from an activity.</xsd:documentation>

IMHO:
The standard seems to be somehow contradictory at this point. I think a CompletionState should not only be reachable directly from a TransactionActivity but also from a decision, because depending on the TransactionActivity the result of a collaboration may be a Success or a Failure.
Also, there are examples in the standard that directly switch from a decision to a Success/Failure state



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]