Using a message exchanger ("message exchanger"), data messages are
exchanged between entities in a decentralized, distributed, potentially
heterogeneous, network environment. The message exchanger employs XML
(extensible Markup Language). To accomplish this, the entities on both
ends of the message exchange understand, identify, and parse the message
format. The message exchanger defines such a mechanism. Data messages are
broken down into two portions--one portion (the body) is intended from an
ultimate destination and the other portion (the header) is intended for
intermediate destination and/or the ultimate destination. The body may be
defined so that it must be understood by the ultimate destination. The
header may be defined so that it must be understood or changed.
Regardless, the data in the body is delivered intact to the ultimate
destination. The message exchanger defines a message envelope exchange
format in XML over a transport protocol, such as HTTP (HyperText
Transport Protocol). This format allows for the execution of RPC (Remote
Procedure Call) over XML, but it can be used for any message exchange
over a network.