[Tried to post this to the comment list
but receiving Mailer-Daemon errors. This is a comment on a minor possible typo-level
error or inconsistency in the ebMS 3 core. ]
In section D.3.1
·
PMode.MEPbinding: The transport channel binding assigned to the MEP (push, pull,
sync, push-and-push, push-and-pull, pull-and-push, pull-and-pull, …). The
value must be a URI, e.g: http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/ns/core/200704/push.
In section F.2.4.5
Rule CM4-e:
Two-Way/Push-and-Push
In V3,
this MEP will map to an exchange of two messages in V2, where the second message
refers to the first one using RefToMessageId (as in V3). The agreements map as
follows:
Option
1: (signals may be sent back on underlying response)
V2 (CPA): (leg 1 and leg 2) syncReplyMode= mshSignalsOnly.
V3 (P-Mode): PMode.MEP="Two-way", PMode.MEPbinding="Push-and-Push".
PMode.ErrorHandling.Report.AsResponse="true".
PMode.Reliability.ReplyPattern="Response".
Option
2: (signals may NOT be sent back on underlying response)
V2 (CPA): (leg 1 and leg 2) syncReplyMode= none.
V3 (P-Mode): PMode.MEP="Two-way",
PMode.MEPbinding="Push-and-Push".
PMode.ErrorHandling.Report.AsResponse="false".
PMode.Reliability.ReplyPattern different from "Response".
So, in some cases, we have
“Push-and-Push” and in some cases “push-and-push”
I
propose that the values be used in a case-insensitive way by implementations.