Message Sets: CWF properties for embedded simple type string types
Physical representation, null values, byte alignment, and occurrences.
The Custom Wire Format properties described here apply to:
- Objects: Embedded simple types
Physical representation
Property | Type | Meaning |
---|---|---|
Physical Type | Enumerated type | Select one from the displayed list:
The default is Fixed Length String. |
Length | Button and Integer | If you have
selected a Physical Type of Fixed Length String or Binary, and have selected
the length to be defined by Length,
enter the number of length units for the element. The minimum value that you can specify is 0 (zero), the maximum value that you can specify is 2147483647 The default value is 0 (zero). |
Length Reference | Button and Enumerated type | If you have selected the length to be defined
by Length Reference,
select the name of the integer object that specifies the length of
this object. Make your selection from the displayed list of integer
objects that are defined as siblings of the current object, and occur
before it in the structure of the message. For information about reordering elements, see Message Sets: Reordering objects. |
Length Units | Enumerated type | Select the unit of length for the element or
attribute. Select one of the following options from the displayed
list (some physical types do not offer all these options):
The default is Bytes. |
Justification | Enumerated type | If you have set the Physical Type property to Fixed Length String, select Left Justify (the default value) or Right Justify from the list. If you have selected another value for Physical Type, this property is inactive. |
Padding Character | String | If you have set the Physical Type property to Fixed Length String, and the Justification property is either Left Justify or Right Justify, this property is applicable. When writing an output message, use the padding character to fill out the remaining character positions when the string length is less than the length implied by the Length or Length Reference property. Whether the string is padded from the left or the right is governed by the Justification property. When parsing an input message, the padding character is trimmed from the end of the string. Whether the string is trimmed from the left or the right is governed by the Justification property. Specify this character in one of the following ways:
The choice of which of these padding character forms is used for an MRM element depends on the padding character that is required and whether the padding character is to be subject to data conversion. In most cases, the specification of a padding character in quotation marks is sufficient, and when this padding character is used, it is converted to the target code page of the output MRM message that is being generated. For example, when converting from ASCII to the code page 500, if you have specified U+0008 as your padding character, it is converted from 0x08 to 0x15, the ASCII and EBCDIC representations of 'back space'. 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 being generated. If you are converting a message from one code page to another, ensure that the converted value of the padding character is valid for this code page. If the padding character cannot be represented in the target code page, it is replaced by a substitution character. The substitution character is fixed and its value depends on the specified target code page. If a padding character is required that is not subject to data conversion, the hexadecimal or decimal format can be used and you then have the option of specifying an absolute value as a padding character that is inserted directly into the output message. If this format is used, ensure still that this value is valid for the code page of any output messages that are created using these MRM definitions. |
Representation of null values
Property | Type | Meaning |
---|---|---|
Encoding Null | Enumerated type | Select one
of the following options from the displayed list:
|
Encoding Null Value | STRING | The use
of this property depends on the Encoding
Null property. If specified, its length must be equal
to the length of the string element, except for NULLLiteralFill. The default value is empty (not set). If you set the Encoding Null property to NULLLiteralFill, the value
must resolve to a single character. Set the character in one of the
following ways:
|
Byte alignment
Property | Type | Meaning |
---|---|---|
Byte Alignment | Enumerated type | Specify how the object is aligned from the start
of the message. Select one of:
|
Leading Skip Count | Integer | Specify the number of bytes to skip before reading
or writing this object. The default is 0, the minimum value is 0, and the maximum value
is 999999.
You can use this value to ignore unwanted fields in a structure, or
to model a field defined by C or COBOL data which requires alignment
on a 2, 4, 8 or 16 byte boundary. Specify the number of bytes to skip
before reading or writing this object. When an output message is written,
Skip Count bytes are assigned the value of the message set Byte Alignment
Pad property. For repeating objects, this property is applied to the first instance only. |
Trailing Skip Count | Integer | Specify the number of bytes to skip after reading
or writing this object. The default is 0, the minimum value is 0, and the maximum value
is 999999.
You can use this value to ignore unwanted fields in a structure, or
to model a repeating structure containing fields which require alignment
on a 2, 4, 8 or 16 byte boundary. When an output message is written,
Skip Count bytes are assigned the value of the message set Byte Alignment
Pad property. For repeating objects, this property is applied to all instances. |
Occurrences
Property | Type | Meaning |
---|---|---|
Repeat Reference | Enumerated type | Use this property if the object occurs multiple
times, and the number of occurrences is given dynamically by a field
earlier in the message. Select an integer object from the displayed
list of integer objects that occur before this object in the structure
of the message. The value of the selected integer specifies the number
of occurrences of this object. If no objects are listed, there are
no integer objects before this one in the message structure. If a Repeat Reference is specified, it overrides any setting for the Max Occurs logical property when parsing and writing the message, but not for validation of the message. |