Transaction ID determination

The TrxID of an XML message is the name of the root element. For messages with no namespace that is associated with the root element, the TrxID is the root element. For messages with a namespace, the TrxID is one of two possibilities:

  • The namespace prefix followed by the element name.
  • The namespace URL followed by the element name.

Which one is used depends on whether the message definition was generated from a DTD or a schema:

  • If it is based on a DTD, then the TrxID is the namespace prefix followed by the element name.
  • If the OCM was created from a schema, then the TrxID is the namespace URL followed by the element name.

In the definition of a protocol thread, there is a DATAFORMAT key in the Netconfig file that contains a TYPE key.

XML TrxID determination uses xml as the value for this key.

XML (Namespace) TrxID determination uses xml_ns as the value for this key. This value uses the namespace URL instead of the namespace prefix.

Specify the correct value based on the message formats. This is configured on the Network Configurator’s property panel.

Examples:

  • The root element is prefixed associating it with a namespace:
    <cis:foo xmlns:cis=’http://www.example.com/test’>
    • TrxID for xml:

      cis:foo

    • TrxID for xml_ns:

      http://www.example.com/test:foo

  • The root element is not prefixed, but belongs to a default namespace:
    <foo xmlns=’http://www.example.com/test’>
    • TrxID for xml:

      foo

    • TrxID for xml_ns:

      http://www.example.com/test:foo

  • The root element does not belong to a namespace:
    <foo>
    • TrxID for xml:

      foo

    • TrxID for xml_ns:

      foo