> Assaf Arkin wrote:
> > Some scenarios are defined by consortia and them get adopted by
> businesses.
> > For example RoessetaNet or supply chain management. In this case you
> have a
> > multi-party definition and each partner respects their role and don't
> try to
> > break it by having a more specific interaction that is different form
> what
> > every other partner (actual or possible) would expect.
>
> RosettaNet is an interesting case:
> the configurations are defined by the consortia,
> but all the interactions and coordination
> are strictly two-parties-at-a-time.
Actually, all the interactions are a simple as request-response patterns,
what ebXML calls business transactions. The patterns are two simple to
include more than two parties. But if you've seen RosettaNet in action you
would realize that partners don't engage in a single PIP. PIP3A4 alone is
not sufficient to purchase products, you need notifications, RFQs,
invoicing. Your real interaction is a set of steps that involves multiple
PIPs. Some of these interactions strictly involve two partners, while some
of these interactions involve more than two partners.
The question is, how do you represent that. For most solutions in the market
you either use a proprietary language to string these simple interactions
together, or you just write a lot of code that delivers the same result.
That's proof that you do not need a multi-party choreography language to
make it work. I never claimed you do.
In fact, my experience, just like yours, proves that any multi-party
choreography can be broken down into a set of two-party interactions, and
any set of two-party interactions that is performed in the proper order
would result in a multi-party interaction. And in fact, you don't even need
a language to describe multi-party interactions, as long as you have a way
of sending and receiving messages in the proper order it will work.
But how do you represent that? Let's say you have two products in the
market, both of which do multi-party interactions. One represents a
multi-party choreography, while the other represents a set of two-party
interactions that happen to result in a multi-party choreography. Which one
would you say your customers would prefer to use?
arkin