Message Sets: TDS properties for global element string types

The TDS format properties for global element string types.

The TDS Format properties described here apply to:

  • Objects: Global Element
  • String schema types: anyURI, ENTITIES, ENTITY, ID, IDREF, IDREFS, language, Name, NCName, NMTOKEN, NMTOKENS, normalizedString, NOTATION, QName, string, token

Field Identification

Property Type Meaning
Tag String Specify the value that is used to identify the object in a message bit stream.

If the object is simple and the Data Element Separation property of the complex type or types in which the object is a child is Tagged Delimited, Tagged Fixed Length, or Tagged Encoded Length, this property must contain a non-empty value.

If the object is a complex element, and the Data Element Separation property of its parent is Tagged Delimited, Tagged Fixed Length, or Tagged Encoded Length, the property can contain an empty value.

The value for this property must be unique for every element in the message set; that is, no two elements in the message set can contain the same value for this property.

Data Pattern String Specify the regular expression that the parser uses to identify the data in the message to assign to the object. This property is used when the Data Element Separation method is set to Use Data Pattern in the complex type. For more details, see Message Sets: Regular expression syntax.
Interpret Element Value Enumerated type Specify whether values stored within this object are interpreted as having significance for the parser and, if so, the type of interpretation that occurs. This interpretation is standard-specific and is therefore hard coded.

The possible values for this property are:

  • None (the default value)
  • EDIFACT Service String
  • X12 Service String
  • Message Key
  • EDIFACT Syntax Level ID
  • HL7 Service String
  • HL7 Field Separator
Note: The Message Key enumeration has been deprecated.

Physical representation

Property Type Meaning
Physical Type Enumerated type Select the physical type of the object.
If the Messaging Standard property of the message set is User Defined Text, User Defined Mixed, CSV, or TLOG, select one of the following values:
  • Text. The data is in character format.
  • Length Encoded String 1. The first byte of the data contains the length (in length units) of the data string that follows the length byte. The maximum length of a Length Encoded String 1 element is 255 length units.
  • Length Encoded String 2. The first two bytes of the data contain the length (in length units) of the data string that follows the two length bytes. The maximum length of a Length Encoded String 2 element is 65535 length units.
  • Null Terminated String. The data string ends with the hexadecimal NULL character, X'00'.
  • TLOG Specific - this option can be selected only if the Message Standard property of the message set is TLOG. This option indicates that the format of the data is specific to the TLOG messaging standard.
The default is dependent on the Messaging Standard property.

For all other Messaging Standard values, the Physical Type property is set to Text.

Length Integer Specify the expected length of the object in length units.

If this property is not set and the message set property Derive default length from logical type is selected, and the Physical type is 'Character', the default value is derived from any length or maxLength value constraint (schema facet) on the simple type.

Length Units Enumerated type Select the unit of length for the object.
Select one of the following options (some physical types do not offer both options):
  • Bytes. The length is given in bytes.
  • Characters. The length is given in characters. The number of bytes that are processed in the bit stream depends on the code page of the message.
    • For a single-byte code page (SBCS CCSID) such as "latin-1" (CCSID 850), the number of bytes is equal to the number of characters.
    • For a double-byte code page (DBCS CCSID) such as "UTF-16" (CCSID 1200), the number of bytes is exactly twice the number of characters.
    • For a multibyte code page (MBCS CCSID) such as "UTF-8" (CCSID 1208), the number of bytes depends on the contents of the bit stream. The parser reads one character at a time and determines whether the character comprises one or more bytes.

The default is dependent on the physical type of the object.

Justification Enumerated type

Specify the justification of the object if the data being written or parsed is less than the fixed-length value. This property is used only when a value is written as a fixed-length string.

Select one of the following values from the list:

  • Not Applicable
  • Left Justify
  • Right Justify
Padding Character String Specify the padding character to be inserted or interpreted on the writing or parsing of a fixed-length object, if the data is less than the fixed-length value. This property is used only when a value is written as a fixed-length string.

Set this character in one of the following ways:

  • Select NUL, '0', or SPACE from the drop-down list.
  • Enter a character between quotation marks, for example "c" or 'c', where c is any alphanumeric character.
  • Enter a hexadecimal character code in the form 0xYY, where YY is a hexadecimal value.
  • Enter a Unicode value in the form U+xxxx, where xxxx is a Unicode value specified in hexadecimal. The maximum length of the string that you can enter is 10.

The choice of which of these padding character forms is used for an MRM element depends on the padding character required and whether the padding character is subject to data conversion.

In most cases, the specification of a padding character is sufficient, and when this padding character is used, it is converted to the target code page of the output MRM message that is generated.

If a padding character is required that cannot easily be entered in the padding character field, the Unicode mnemonic format can be used to specify the required character. When used, this Unicode value is also converted to the target code page of the MRM message that is generated.

If a padding character is required that is not subject to data conversion, the hexadecimal format can be used. This gives the option of specifying a padding character that is inserted directly into the output message. If this format is used, you must ensure that the hexadecimal value is valid for the code page of any output messages that are created using these MRM definitions.

If you convert a message from one code page to another, you must ensure that the converted value of the padding character is valid for this code page. For example, when converting from ASCII to code page 500, if you have specified the numeric 8 as your padding character, it is converted from 0x08 to 0x15; the ASCII and EBCDIC representations of Backspace.

There is a currently a restriction that the value of your padding character must not be greater than U+007F. If you enter a Unicode mnemonic or numeric value, it is considered to be the character that is represented by that number in UTF-8.

Representation of null values

Property Type Meaning
Encoding Null Enumerated type Select one of the following options from the list:
  • NULLPadFill. This option is valid only for fixed-length objects and is the default value.
  • NULLLogicalValue. The Encoding Null Value property is first converted to an actual value, and rendered in the way specified for the field.
  • NULLLiteralValue. This option specifies that Encoding Null Value contains a value that is directly substituted as if it is a string. For dateTime elements, use this option if you want to use the Encoding Null Value property to test or compare the content of the field in the message.
  • NULLLiteralFill. This option specifies that the field is filled with the value specified by the Encoding Null Value property. Encoding Null Value must resolve to a single character.

The option that you select determines the value that you must set for the property Encoding Null Value.

For full information about using these options, see Message Sets: TDS Null handling options.

Encoding Null Value String The use of this property depends on the Encoding Null property. The default value is zero.

If you set the Encoding Null property for a dateTime object to NULLLogicalValue, the value that you set must be in an ISO8601 dateTime format.

These formats are described in Message Sets: DateTime as string data.

For example, specify a value that conforms to the yyyy-MM-dd'T'HH:mm:ss format; for example, 1970-12-01.