…
4938.4.1 From and To elements
494 The From element identifies the Party that originated the message. The From element consists
495 of aone or morePartyId elements.
496 The To element identifies the intended recipient of the message. As with From, it is a logical
497 identifier that is comprised of aone or morePartyId elements.
If either the From or To elements contain multiple PartyId elements, all members of the list must identify the same organisation. Unless that type value refers to multiple identification systems, a type attribute value must not appear more than once in a single list of PartyId elements.
This mechanism is particularly useful when transport of a message between the parties may involve multiple intermediaries (see Sections 8.5.3, Multi-hop Routing Header Sample and 10.2, ebXML Reliable Messaging Protocol). More generally, the From party should provide identification in all domains it knows in support of intermediaries and destinations that may give preference to particular identification systems.
8.4.1.1 PartyId element
498 The PartyId element has a single attribute: type and a string value.
499 If the type attribute is present, then it indicates that the parties that are sending and receiving the
500 message know, by some other means, how to interpret the content of the PartyId
501 element. The two parties MAY use the value of the type attribute to assist in the interpretation. Values taken from the EDIRA (ISO 6523), EDIFACT ISO 9735 or ANSI ASC X12 I05 registries are recommended.
502 If the type attribute is not present, the content of the PartyId element MUST be a URI [RFC 2396].
503oOtherwise the receiving MSH MUST report an error (see section 08.8) with errorCode set to Inconsistent and severity set to
504eError.
505 The following fragment demonstrates usage of the From and To elements. The first illustrates a
506pair of user-defined numbering schemes,;and the second, a single URN.
507
508<From>
509<PartyId type="MyNumberingSchemeDUNS">1234567890123006998397</PartyId>
<PartyId type="SCAC">RDWY</PartyId>
510</From>
511<To>
512<PartyId">urn:dnb.com:duns:321098765-4321</PartyId>
513</To>
…
6628.4.10 Header sample
…
667<From>
668<PartyId type="uri">...</PartyId>
669</From>
670<To>
671<PartyId type="userType">...</PartyId>
672</To>
…
6918.5.1 Routing Header Element
692 The RoutingHeader element contains information about a single transmission of a message
693 between two Parties. If a message traverses multiple hops by passing through some type of
694 intermediate system between the From Party and the To Party, then each transmission over each
695 hop results in the addition of a new Routing Header element.
696 The RoutingHeader element is a composite element comprised of the following subordinate
697 elements:
698SenderURI
699ReceiverURI
700ErrorLocationURI
701Timestamp
702SequenceNumber
703#wildcard
7048.5.1.1 SenderURI element
The Sender element is a composite element comprised of the following subordinate elements:
- PartyId
- Location
As with the From and To elements, multiple PartyId elements may be listed in the Sender element. This allows receiving systems to resolve those identifiers to organisations using a preferred identification scheme without prior agreement among all parties to a single scheme.
8.5.1.1.1 PartyId element
This element has the syntax and semantics described in Section 8.4.1.1, PartyId element. In this case, the identified party is the sender of the message. This element may be used in a later message addressed to this party by including it in the To element of that message.
8.5.1.1.2 Location element
705 This element contains the URLI of the message's Sender Messaging Service Handler. The
706 recipient of the message, unless there is another URLI more specifically identified within the CPA,
707 uses the URLI to send a message, when required that:
708responds to an earlier message
709acknowledges an earlier message
710reports an error in an earlier message.
7118.5.1.2 ReceiverURI element
As with Sender, the Receiver element is a logical identifier comprised of the location where the message was sent and the party controlling that location. In this case, the subordinate Location
712This element contains the URLI of the Receiver’s Messaging Service Handler URLI. It is the URLI to
713 which the Sender sends the message.
7148.5.1.3 ErrorLocationURI element
715 This URLI, if present, identifies the URLI that is used for reporting errors. If it is not present then
716 errors are reported by sending a message to the Location provided in the SenderURI element. This location must also be under the control of the organisation identified by the PartyId elements listed in the Sender element. (The location specified in the ErrorLocation element must be able to receive ebXML messages containing a To element identifying the Sender party.)
…
7348.5.2 Single Hop Routing Header Sample
…
741<From<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</From>
742<To<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</To>
…
753<SenderURI<Location>httpurl://PartyA.com/PartyAMsh</Location>
<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</SenderURI
754<ReceiverURI<Location>httpurl://PartyB.com/PartyBMsh</Location>
<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</ReceiverURI
…
760<From<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</From>
761<To<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</To>
…
773<SenderURI<Location>
<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</SenderURI
774<ReceiverURI<Location>
<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</ReceiverURI
…
7788.5.3 Multi-hop Routing Header Sample
…
786<From<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</From>
787<To<PartyId>urn:myscheme.com:id:PartyC-id</PartyId</From>
…
798<SenderURI<Location>
<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</SenderURI
799<ReceiverURI<Location>
<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</ReceiverURI
…
805<From<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</From>
806<To<PartyId>urn:myscheme.com:id:PartyC-id</PartyId</From>
…
817<SenderURI<Location>
<PartyId>urn:myscheme.com:id:PartyA-id</PartyId</SenderURI
818<ReceiverURI<Location>
<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</ReceiverURI
…
822<SenderURI<Location>
<PartyId>urn:myscheme.com:id:PartyB-id</PartyId</SenderURI
823<ReceiverURI<Location>
<PartyId>urn:myscheme.com:id:PartyC-id</PartyId</ReceiverURI
…
8528.7 StatusData Element
…
861a ForwardURIelement. This MUST only be present if messageStatus is set to
862Forwarded. If present it indicates the URI of theReceiverURIto which the message was
863 forwarded. This element has the same composition as the Sender and Receiver elements.
…
9798.9 Acknowledgment Element
I removed all mention of a From element from this element. That addition provides no value unless the Routing Header element is left out. Even in that case, it’s confusing. We should probably just disallow that case.
…
992 a From element
…
999 8.9.2 From element
1000 This is the same element as the From element within Header element (see section 8.4.1).
1001 However, when used in the context of an Acknowledgment Element, it contains the identifier of
1002 the Party that is generating the acknowledgment message.
1003 If the From element is omitted then the Party that is sending the element is identified by the From
1004 element in the Header element.
…
10379.1.1 Message Status Request Message
My apologies. I accidentally turned off change tracking while performing the rest of the modifications. Instead, new text is marked in blue. The old text is just no more.
…
1048a To element that identifies a Party that should receive the message. If a RoutingHeader
1049 was present on the message whose status is being checked then this MUST be the
1050Receiver from that message. All PartyId elements present in the Receiver element SHOULD be included in this To element.
…
119410.2.1.1 Sending Message Behavior
…
1199 b) a RoutingHeader element that identifies the sender and the receiver as described in Section 8.5.1, Routing Header Element
…
120810.2.1.2 Receiving Message Behavior
…
1230 i) Create a RoutingHeader element that identifies the sender and the receiver as described in Section 8.5.1, Routing Header Element
…
131110.2.2.1 Multi-hop Reliable Messaging without Intermediate Acknowledgments
…
1334 b) a RoutingHeader element that contains aSender describing the message sender (e.g. the identifiers for
1335 Party A and location of their MSH) and the Receiver of the next recipient of the message (e.g. the identifiers
1336for Party B and location of their MSH)
…
1343 b) add a RoutingHeader element to the RoutingHeaderList that contains a Sender
1344describing the message sender (e.g. the identifiers for Party C or Party D and location of their MSH)
1345 and the Receiver of the next recipient of the message (e.g. the identifiers for Party B or Party C and location of their MSH)
…
135210.2.2.2 Multi-hop Reliable Messaging with Intermediate Acknowledgments
…
1378 a) If the MSH can identify itself as the Receiver in the RoutingHeader for the hop, and
…
1383 ii) The From element contains the Receiver’s PartyId elementsfrom the last RoutingHeader in the
1384 message that has just been received
1385 iii) The To element contains the Sender’s PartyId elementsfrom the last RoutingHeader in the
1386 message that has just been received
…
1392 vii) a RoutingHeader element that contains the Sender describing the message sender (e.g. the identifiers
1393 for Party C or Party B and location of their MSH) and the Receiver of the next recipient of the
1394 message (e.g. the identifiers for Party B or Party C and location of their MSH)
…
163111.4 Identifying the Error Reporting Location
…
1636by value, for example by using the ErrorLocationcontained within the RoutingHeader
1637 element.
1638 If a message contains an ErrorLocation, the ErrorLocationMUST be used.
1639 If an ErrorLocationis not used then the ErrorLocationimplied by the CPA identified by the CpaIdDon the
1640 message SHOULD be used. If no ErrorLocationis implied by the CPA, then the Sender MUST be
1641 used.
…
2034A.1 Schema Definition
…
2104<xsd:element nameref="From" type="PartyList"/>
2105<xsd:element nameref="To" type="PartyList"/>
…
2121<xsd:element name="To">
2122<xsd:complexType>
2123<xsd:simpleContent>
2124<xsd:extension base="xsd:string">
2125<xsd:attribute name="type" type="xsd:string"/>
2126</xsd:extension>
2127</xsd:simpleContent>
2128</xsd:complexType>
2129</xsd:element>
…
2189<xsd:element nameref="Sender" type="PartyAndLocation"/>
2190<xsd:element nameref="Receiver" type="PartyAndLocation"/>
2191<xsd:element ref="ErrorLocation" minOccurs="0" maxOccurs="1"/>
…
2214<xsd:element name="Sender" type="xsd:uriReference"/>
2215
2216<xsd:element name="Receiver" type="xsd:uriReference"/>
…
2220<xsd:element name="ErrorLocation" type="xsd:uriReference" minOccurs="0" maxOccurs="1"/>
…
2290<xsd:element name="Forward" type="PartyAndLocation" minOccurs="0" maxOccurs="1"/>
…
2236<xsd:element ref="From" minOccurs="0" maxOccurs="1"/>
…
<xsd:complexType name="PartyList">
<xsd:sequence>
<xsd:element ref="PartyId" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="PartyAndLocation">
<xsd:complexContent>
<xsd:extension base="PartyList">
<xsd:sequence>
<xsd:element name="Location" type="xsd:uriReference"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
2305<xsd:element name="PartyIdFrom">
2306 <xsd:complexType>
2307 <xsd:simpleContent>
2308 <xsd:extension base="xsd:string">
2309 <xsd:attribute name="type" type="xsd:string"/>
2310 </xsd:extension>
2311 </xsd:simpleContent>
2312 </xsd:complexType>
2313</xsd:element>
…