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

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-cppa message

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


Subject: Overall Negotiation Workflow


Everyone,

Here is a cut at the overall workflow that allows one to proceed without using an NCPA.
Thoughts/comments appreciated.

Kartha
===========================


The following is my attempt to simplify and distill the negotiation workflow.
Let us call the parties involved Party A and Party B.

Assumptions which may be made to simplify the spec:
1. Both parties will use the negotiation BPSS provided in the spec. If not, automated negotiation cannot be carried out.
2. Both parties will be able to use HTTP (or HTTPS) to transport the negotiation messages back and forth. For this, each party must register a "reply-to" URL. If not, the automated negotiation cannot be carried out. Manual intervention is needed to agree upon a suitable transport.



Pre-negotiaion steps

1. Party A develops a CPP (call it CPP_A) and (optionally) an NDD for the CPP 
   (call it NDD_A).
2. Party A registers CPP_A and the NDD_A in a registry.
(Alternatively, Party A develops a  CPA template (call it CPA_template_A) and 
an NDD for it (call it NDD_for_CPA_template_A) and registers them in the registry. 
3. (Optional if assumption 1 holds) Party A registers the negotiation BPSS instance document it will use for its negotiation. (call it BPSS_A)
4. Party B develops a CPP (call it CPP_B)  and (optionally) an NDD for the CPP 
   (call it   NDD_B)
5. Party B registers CPP_B and the NDD_B in a registry
(Alternatively, Party B develops a  CPA template (call it CPA_template_B) and 
an NDD for it (call it NDD_for_CPA_template_B) and registers them in the registry. 
6. (Optional if assumption 1 holds) Party A register the negotiation BPSS it will use for its negotiation. (call it BPSS_B).
7. Party B discovers Party A and wishes to conduct trade with it.
8. (Optional if assumption 1 holds) Party B checks whether BPSS_A is the "same as" BPSS_B (i.e same algorithm, same version number etc.) If not, automated negotiation cannot be carried out. Otherwise proceed to the next step.
9. (Optional if assumption 2 holds) Party B checks that both itself and Party A have registered URLs for sending the negotiation messages via HTTP. If not, automated negotiation cannot carried out. Otherwise proceed to the next step.
10. Party B forms a CPA template (call it CPA_template_B_A) and and NDD for it
   (call it NDD_for_CPA_template_B_A) using (a) CPP_A (b) NDD_A (c) CPP_B and (d)NDD_B. It respects NDD_A and NDD_B in forming NDD_for_CPA_template_B_A.
(Alternatively, Party B forms a CPA template (again call it CPA_template_B_A) and an NDD for it (again call it NDD_for_CPA_template_B_A) using CPA_template_A,
CPA_template_B, NDD_for_CPA_template_A and NDD_for_CPA_template_B, again respeciting the NDDs (4 possibilities in all). Note that step 10 can be implementation
intensive.

11.Party B submits the initial offer to Party A, consistiing of 
(a) CPA_template_B_A (b) NDD_for_CPA_template_B_A and (c) the initial offer using  the negotiation messages, thereby kicking off the negotiation process.

Negotiation

12. Party's B and A exchange messages till the come to an agreement or to the conclusion that the negotiation cannot be completed successfully (as in Fig 2).


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