Message Sets: General rules: TDS message model integrity

General rules govern each value that you can set for the Data Element Separation property of a type.

Tagged Delimited
  • The Tag property for every simple child element must contain a non-empty value.
Tagged Encoded Length
  • The Tag property for every simple child element must contain a non-empty value.
  • The Length Of Encoded Length property must contain a positive integer greater than zero.
Variable Length Elements Delimited
  • The Delimiter property must contain a non-empty value.
Use Data Pattern
All Elements Delimited
  • The Delimiter property must contain a non-empty value.
Fixed Length
  • All simple child elements must specify a length, unless their data type is Boolean (or derived from Boolean).
  • All compound child elements must specify a length, unless their data type is Boolean (or derived from Boolean).
  • The length can be specified using either the Length property, or the Length Value Of member property.
Fixed Length AL3
  • All complex child elements with a non-Boolean compound element and non-Boolean simple child elements must have either a nonzero value in their Length property, or a non-empty value for their Length Value Of type member property.
Tagged Fixed Length
  • All complex child elements with a non-Boolean compound element and non-Boolean simple child elements must have either a nonzero value in their Length property or a non-empty value for their Length Value Of type member property.
  • The Tag property for each and every simple child element must contain a non-empty value.

The following rules also apply:

  • If you have set the parent Type Composition to Choice, and the parent Data Element Separation property to Variable Length Elements Delimited, All Elements Delimited, Fixed Length, or Fixed Length AL3:
    • You must not set the Type Composition to Message for any child complex types.
    • You must not set the Data Element Separation method to Tagged Delimited or Tagged Fixed Length for any child complex types.
    If you do so, the message set does not deploy successfully.
  • If you have set the type's Data Element Separation property to Fixed Length, Fixed Length AL3, or Tagged Fixed Length, you must set either the Length or Length Value Of property for all simple elements under this parent, and also for all complex elements with a simple content and compound elements.
  • For a Choice in a fixed-length environment (Data Element Separation set to Fixed Length, Tagged Fixed Length, or Fixed Length AL3), length references are not valid. Use element lengths.
  • Elements specified in a Length Value Of property must be simple elements of type INTEGER, they must exist in the same structure as the referring element, and they must appear before the referring element in that structure.
  • Complex types with simple content and Compound elements must have an empty Length Value Of type member property. Otherwise, Length Value Of element would occur after the referring element in the parent structure, which is disallowed by the previous rule.
  • Complex types with simple content cannot have a separation type of Use Data Pattern.
  • Compound elements cannot have a separation type of Use Data Pattern.
  • Regardless of the setting of the type's Data Element Separation property, if the type of a simple element is BINARY, you must set either the Length or Length Value Of property.
  • For fixed-length elements, the Justification property must be set to something other than Not Applicable, and the Padding Character property cannot be an empty value.
  • If any element within a message has its Interpret Element Value property set to Message Key, the Message Key property must be set for all messages within the message set.
  • If you have set the Repeat property in the type member to Yes, you must set a value for the Max Occurs property in the following two situations:
    • If you have defined an element as a member of a complex type that has the property Data Element Separation set to Fixed Length.
    • If you have defined a fixed-length element as a member of a complex type that has the property Data Element Separation set to Variable Length Elements Delimited.
    When it is invoked by the integration node to interpret an input message, the parser assumes that the number of occurrences of the element is equal to the value that you set for Max Occurs. When the parser constructs an output message, if there are fewer elements than the value of Max Occurs, the missing elements are inserted with default values.