OASIS ebXML Messaging Services TC

  • 1.  Interpretation of PMode.ID

    Posted 10-28-2014 08:50
    Hello, Here is a question from an AS4 implementer: According to [CORE] Appendix D 3.1 [The PMode ID] may be absent if the P-Mode is identified by other means, e.g. embedded in a larger structure that is itself identified , or has parameter values distinct from other P-Modes used on the same MSH. If the ID is specified, the AgreementRef/@pmode attribute value is also expected to be set in associated messages. [AS4] 2.2.3.1 makes support for PMode.ID required . How does that work with the situation above where the PMode is embeded in a larger structure? What does a MSH have to do to support Pmode.ID? This ID feature seems somewhat underspecified and therefore subject to interpretation/implementation or profiling. Basically, a PMode determines the configuration to use for outgoing messages and to use --and validate-- for incoming messages. If PModes have IDs, then the receiver MSH does not have to infer the configuration (e.g. from other header values, as described in example 1 in section D.1) but can do a direct lookup (as described for example 2 ). My interpretation (from the spec and discussions) is that, support by an MSH means that the MSH can have PModes with an ID, and if a PMode has an ID , the support by an MSH means that the sending MSH MUST include it with outgoing messages, and a receiving MSH MUST use it to retrieve a specific configuration. So the required support in AS4 would requires the ability to attach an identifier to a PMode. 1) Do you agree with this interpretation? 2)  If a sender does not include an ID in a message,  should the receiving MSH match it against PModes that do not have an ID only,  or to all PModes (some that have, and some that do not have a PMode ID) ?   3)  If a sender includes an ID in a message, and the receiving MSH does not have a PMode with this ID,  should it return an error or should it attempt to match the message to PModes without ID (i.e. ignore the ID) Kind Regards, Pim


  • 2.  RE: [ebxml-msg] Interpretation of PMode.ID

    Posted 11-05-2014 20:01
    Pim:   Reading in the history I see that on March 2011 it was made “required” in AS4: “ 2.1.3.1 and 2.2.3.1: made support "required" for PMode.ID and PMode.agreement (meaning an implementation must be able to use this Pmode value - if present - to fill-in the related message header element.)”   So I think your interpretation is overall right:   “My interpretation (from the spec and discussions) is that, "support by an MSH" means that the MSH can have PModes with an ID, and if a PMode has an "ID", the "support by an MSH" means that the sending MSH MUST include it with outgoing messages, and a receiving MSH MUST use it to retrieve a specific configuration. So the required support in AS4 would requires the ability to attach an identifier to a PMode.”   Although I would reword it as:   “… the "support by an MSH" means that the sending MSH MAY include it with outgoing messages, and a receiving MSH MUST be able to use it to retrieve a specific configuration.   “     “ 2)  If a sender does not include an ID in a message,  should the receiving MSH match it against PModes that do not have an ID only,  or to all PModes (some that have, and some that do not have a PMode ID) ?   “   I would say against all PModes available. The Receiver should just ignore the PMode.ID feature in that case. Core spec says “ If the ID is specified, the AgreementRef/@pmode attribute value is also expected to be set in associated messages. ” but it is just a convenience – not a strong requirement. 3)  If a sender includes an ID in a message, and the receiving MSH does not have a PMode with this ID,  should it return an error or should it attempt to match the message to PModes without ID (i.e. ignore the ID)   I think it makes sense to return an error in that case, because if the PMode on Sender side has an ID, it should also have one on Receiver side. Or at least just a warning, if  matching works with a PMode without ID.                                                                                                                                                  -jacques   From: ebxml-msg@lists.oasis-open.org [mailto:ebxml-msg@lists.oasis-open.org] On Behalf Of Pim van der Eijk Sent: Tuesday, October 28, 2014 1:49 AM To: ebxml-msg@lists.oasis-open.org Subject: [ebxml-msg] Interpretation of PMode.ID   Hello, Here is a question from an AS4 implementer: According to [CORE] Appendix D 3.1 "[The PMode ID] may be absent if the P-Mode is identified by other means, e.g. embedded in a larger structure that is itself identified , or has parameter values distinct from other P-Modes used on the same MSH. If the ID is specified, the AgreementRef/@pmode attribute value is also expected to be set in associated messages." [AS4] 2.2.3.1 makes support for PMode.ID required . How does that work with the situation above where the PMode is embeded in a larger structure? What does a MSH have to do to support Pmode.ID? This "ID" feature seems somewhat underspecified and therefore subject to interpretation/implementation or profiling. Basically, a PMode determines the configuration to use for outgoing messages and to use --and validate-- for incoming messages. If PModes have IDs, then the receiver MSH does not have to infer the configuration (e.g. from other header values, as described in "example 1" in section D.1) but can do a direct lookup (as described for "example 2"). My interpretation (from the spec and discussions) is that, "support by an MSH" means that the MSH can have PModes with an ID, and if a PMode has an "ID", the "support by an MSH" means that the sending MSH MUST include it with outgoing messages, and a receiving MSH MUST use it to retrieve a specific configuration. So the required support in AS4 would requires the ability to attach an identifier to a PMode. 1) Do you agree with this interpretation? 2)  If a sender does not include an ID in a message,  should the receiving MSH match it against PModes that do not have an ID only,  or to all PModes (some that have, and some that do not have a PMode ID) ?   3)  If a sender includes an ID in a message, and the receiving MSH does not have a PMode with this ID,  should it return an error or should it attempt to match the message to PModes without ID (i.e. ignore the ID) Kind Regards, Pim