The STRING message framework consists of an outer layer (StringMessage) and version-specific payload messages. Most messages are pairs of requests and responses with defined workflows.
The outer StringMessage contains the operator and agency data to route the message to the operator system and authenticate it as a valid request. We don't require a specific form of authentication as it is implementation-dependent and might be handled on a higher level. The RoutingHeader will get the necessary operator information to identify the target system.
The Payload Messages
The actual request message goes in the Content node. You have to make sure it is valid for a version the operator supports. The standard content type is "application/xml" but systems might support other types (e.g. compression, encryption) in the future.
For the choice of the first request type in a session refer to the table of message pairs. Not all types might be supported by all operators.