RE: Not using a CPA

From
Burdett, David <>
Date
2001-07-18T19:36:18+00:00
ID
Thread
RE: Not using a CPA
Arvola

 

All 
the approaches you suggest are possible for determining the end 
points:

  
by 
  looking up the CPA

  
the 
  application specifying the endpoint directly (e.g. an HTTP or SMTP 
  URL)

  
by 
  lookup within the MSH, for example the application specifies the Trading 
  Partner (e.g. using a DUNS) the service and action.

I also 
agree with Marty that various communities of users, e.g. RosettaNet, will 
specify CPA information which can then be used by everyone in the community. 
This works naturally with the third option - endpoint lookup. In fact, IMO, this 
will be a frequently used option which is why using a CPA should not be 
required.

 

As far 
as islands of non-interoperability are concerned I don't think that, in practice 
this will be huge issue especially if the ebXML Messaging group specifies 
profiles for using ebXML which can then just be adopted.

 

David

  
-----Original Message-----
From: Arvola Chan 
  [mailto:]
Sent: Tuesday, July 17, 2001 8:31 
  PM
To: David Fischer; Martin W Sachs; Burdett, David
Cc: 
  
Subject: Re: Not using a 
  CPA

  
The CPA contains one or more Endpoint elements which specify 
  the receiving party's communication addresses. If there is no CPAId specified 
  in the message header, how does the sending MSH determine the communication 
  endpoint for the recipient? Will the sending application have to specify the 
  destination endpoint using the Service element? Or, do we have to assume that 
  the sender's MSH has a configuration database that maps the receiver's party 
  ID to an appropriate endpoint?

  
 

  
Thanks,

  
-Arvola

  
 

  
Arvola Chan ()
TIBCO Software (on 
  loan to  RosettaNet)
+1-650-846-5046 (US-Pacific)

-----Original Message-----
From: David 
  Fischer <>
To: 
  Martin W Sachs <>; Burdett, David 
  <>
Cc: 
  Arvola Chan <>;  
  <>
Date: 
  Tuesday, July 17, 2001 7:26 PM
Subject: RE: Some Issues with the Reliable 
  Messaging Specification in Version1.0 of ebMS

  
 

  
No, you really don't need a CPA.  While I can't image a 
  system without some sort
of TP database, there can easily be defaults which 
  allow "bootstrap" situations.
EDI does much the same thing with Open EDI -- 
  Automatic Trading Partner Entry.
When you receive a message which does not 
  match any entry in the database,
automatically create one with the 
  transport values set to the incoming message
values and anything which can 
  be gleaned from the MessageHeader with all other
values set to 
  defaults.  This is the only way large scale communications in 
  a
world-wide economy is going to work.  It is simply not feasible to 
  create manual
database entries for hundreds of thousands of potential 
  customers (like the case
of Sears or L.L.Bean).  This will be a must 
  for small quantity/value, large
volume organizations.

In large value 
  propositions, you will probably want a more structured approach.
This is 
  where CPA/CPP will excel.

Regards,

David Fischer
Drummond 
  Group.

-----Original Message-----
From: Martin W Sachs [mailto:]
Sent: 
  Tuesday, July 17, 2001 8:27 AM
To: Burdett, David
Cc: Arvola Chan; 
Subject: 
  RE: Some Issues with the Reliable Messaging Specification in
Vers ion 1.0 
  of ebMS

David,

But if the CPA is not used, the two 
  parties have to first get on the phone
to negotiate what they have to agree 
  on to be able to send that message
without a CPA, and then they both have 
  put that information into their
systems and get it consistent and 
  correct.  There's no free lunch. If the
negotiable information is 
  simple, the CPA will also be simple.  In some
cases a third party may 
  be able to dictate all of the variables. The RNIF
seems to be one such case 
  and I assume that CommerceOne is another.
Relying on such third parties may 
  only serve to divide the world into
islands that can't easily 
  interoperate.

I have been discussing this with someone who is trying to 
  implement a
message service to work either way. That's not easy. In order 
  for the
message service spec to cover both cases, some of its statements 
  are so
broad or vague that they don't give sufficient guidance to the 
  implementer.
The CPPA team has an open work item to write an appendix for 
  its spec
showing how the elements in the message header are to be used with 
  the CPA.
However, that information really should be in the message service 
  spec.

Yes, the spec needs to be clarified.  Clarification is 
  needed not just to
make it clear that the CPA is optional.  All of the 
  ambiguities resulting
from the CPA needing to be optional have to be 
  located and clarified in the
form "this is what you do if you have a CPA 
  and this is what you do if you
don't have a 
  CPA."

Regards,
Marty

********************************************************************************
*****

Martin 
  W. Sachs
IBM T. J. Watson Research Center
P. O. B. 704
Yorktown Hts, 
  NY 10598
914-784-7287;  IBM tie line 863-7287
Notes address:  
  Martin W Sachs/Watson/IBM
Internet address:  mwsachs @ 
  us.ibm.com
********************************************************************************
*****

"Burdett, 
  David" <> 
  on 07/17/2001 01:24:00 AM

To:   Arvola Chan <>, 
cc:
Subject:  
  RE: Some Issues with the Reliable Messaging Specification in 
  Vers
      ion 1.0 of 
  ebMS

Arvola

You  have spotted one of the 
  inconsistencies that, in my opinion, needs to
be fixed.  It arose 
  because there were two different views on the
relationship between 
  the  CPA spec and the ebMS spec. This really boiled
down to whether 
  the CPA was  always required or optional. I will say now
that I was 
  always firmly in the  latter camp and think that the CPA should
be 
  optional. The main reason for this  was that if the CPA is 
  required,
then you cannot just send a message to someone,  you have to 
  negotiate the
CPA first and how you do this has not been  
  specified.

You  are also right that there are issues around using 
  the reliable
messaging spec  over multiple hops which need to be 
  resolved.

However the spec does need to be clarified in my  
  opinion to make it clear
the the CPA is optional. Removal of this 
  inconistency  (and a few others)
is one of the things that I will 
  suggest at the ebMS meeting  tomorrow 
  and
Wednesday.

Thanks  for your 
  comments.

David
PS  Most specifications seem to go through some 
  type of revision after they
are  published ... ;)
-----Original 
  Message-----
From: Arvola Chan  [mailto:]
Sent: Sunday, 
  July 15, 2001 10:43  AM
To: 
Subject: 
  Some Issues  with the Reliable Messaging Specification in Version
1.0 
  of  ebMS

Section 10.2 in the ebMS spec describes the  
  reliable messaging parameters:
deliverySemantics, mshTimeAccuracy, 
  TimeToLive, reliableMessagingMethod,
ackRequested, retries, 
  retryInterval,  persistDuration. Only
deliverySemantics,  
  TimeToLive, reliableMessagingMethod, ackRequested can
be found in Appendix 
  A (ebXML SOAP Extension Elements  Schema); retries,
retryInterval, 
  and  persistDuration can only be found in Appendix D  of 
  the
ebCPP spec.

I find the statement on line 1695 "This parameter 
  information can be
specified in the CPA or  in the MessageHeader 
  (section 8.4.2)."  imprecise
in the following 
  sense:

   mshTimeAccuracy is neither in the 
  MessageHeader  nor in the CPA.
   TimeToLive is not 
  mentioned anywhere in the CPA.  It is not clear how
   the 
  sending MSH should pick a value for this  parameter.
   The 
  sub-sections describing retries,  retryInterval, and 
  persistDuration
   do not clearly indicate that these  
  parameters are to be obtained from
   the CPA. Furthermore, their 
  spellings do  not match those in the CPA
   (case 
  difference). It will be helpful to specify  how elements in 
  the
   MessageHeader can be used to look up these values 
  from  the CPA. The
   CPAId alone is not sufficient. The 
  Service and Action elements  will
   also have to be used to 
  locate the relevant DocExchange, ebXMLBinding,
   and 
  ReliableMessaging elements from the CPA.

It is not clear if the current 
  Reliable Messaging  specification works over
multiple hops. Line 1774 
  prescribes that a  TraceHeader be created in
accordance with Section 
  8.5.2. The latter section  however does not say
anything about how to 
  determine the next intermediary, in  those cases
where one or more 
  intermediaries are to be involved. The  descriptions on
lines 1825 and 
  1829 on how to populate the From and To element  in 
  the
Acknowledgement Message also do not clearly explain the 
  circumstances
under which sub-elements under the last TraceHeader in the 
  incoming message
are to be used.

I also find the following issues 
  with  Section 10.3.2 on Receiving 
  Message
Behavior:

   Line 1783 uses the 
  URI
   http://www.ebxml.org/namespaces/messageService/MessageAcknowledgement.
   
  This is not consistent with the URI specified on line 1823:
   
  uri:www.ebxml.org/messageService.
   Steps 2.d)i) on line 1800 
  and 2.d)ii) on line  1802 are confusing. The
   phrase "and 
  resend it" on line 1800 should be struck  out. Otherwise,
   
  the message would be resent twice.
   Step 2.c) omits the crucial 
  action of passing on  the message which has
   been found 
  not to be a duplicate to the  application.
   Step 2.d)iii) 
  is incomplete. The action to be  taken when syncReply is
   
  set to True and the CPA indicates no application  response is 
  included
   is left unspecified. I believe in this case an  
  Acknowledgement Message
   should be generated and returned  
  synchronously.

Under Section 10.3.5 Duplicate Message Handling,  I 
  find the description of
an "identical message" puzzling. Why is it  
  possible for a duplicate
"identical" message to have an additional  
  TraceHeader? Is the sending MSH
required to append another TraceHeader when 
  it  resends a message because
an Acknowledgement Message has not been 
  received in  time? Or is it
required to update the Timestamp in the 
  TraceHeader  to reflect the time 
  of
retransmission?

Thanks,
-Arvola

Arvola Chan ()
TIBCO Software (on 
  loan to  RosettaNet)
+1-650-846-5046 
  (US-Pacific)

------------------------------------------------------------------
To 
  unsubscribe from this elist send a message with the single 
  word
"unsubscribe" in the body to: 

------------------------------------------------------------------
To 
  unsubscribe from this elist send a message with the single 
  word
"unsubscribe" in the body to: