Home >Online Product Documentation >Table of Contents >Data Type Properties (by data type)
Data Type Properties (by data type)
This section describes the properties that are specific to a given data type.
Common Properties
All data types support these properties:
Table 28. Common Properties
Property
|
Description
|
Affects XML
|
---|
Lookup List
|
This property lets you build a substitution table for output. It includes a two-column table. At runtime, any item which evaluates to a value in the left column is replaced by the corresponding value in the right column in the output stream. A blank value on the left can be used to set a default value for the field. Note that this is applied before the test to determine if the data should be qualify for Omit from Output.
|
Yes
|
Notes
|
Allows you to add internal comments for a field. It is not used by custom XML conversion definitions.
|
No
|
Omit from Output
|
Allows a field to be omitted from XML output based on its presence or value. Valid values include:
l Only When Empty. This is the default.
l When Empty or Zero. Does not emit an element containing the value if it evaluates numerically to zero.
l Always. Always hides the field from the output.
l Never. Always includes the field in the output
|
Yes
|
XML Output Form
|
Determines whether the value is emitted into the output stream as an element or as an attribute. The default is element.
|
Yes
|
BCD Datatype Properties
Binary Coded Decimal (BCD) is a set of ways to pack one or two decimal digits into each byte. These are various related types of machine-specific encodings for numbers. The Comp3 and Zoned types are different implementations of this idea.
Table 29. BCD Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Architecture
|
Select the architecture that matches the machine type that the data originated on, or was designed for, from this list:
l NBCD Signed
l NBCD Unsigned
l Excess-3
l BCD 2421
l BCD 84-2-1
l IBM 1401 Signed
l IBM 1401 Unsigned
|
Yes
|
Yes
|
Packed
|
The name you want to use for sub-fields detected by Stylus Studio (based on the Component Separator character) in the XML output. The default value is component.
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
The name you want to use for sub-fields detected by Stylus Studio (based on the Sub-Component Separator character) in the XML output. The default value is subcomponent.
|
Yes
|
Yes
|
Binary Datatype Properties
Binary data in raw form.
Table 30. Binary Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Rendering
|
How the data is written to XML:
l Base-64 Encoding - writes the data in a form compatible with the W3C XML Schema base64Binary type (default)
l Hexadecimal Encoding - writes the data in a form compatible with the W3C XML Schema hexBinary type
l - Octal Encoding - writes the data as a series of octal triplets
l # Literal Encoding - copies the data as-is to the output stream, which may not render as valid XML
|
Yes
|
Yes
|
Boolean Datatype Properties
True/false values, with support for three-valued-logic (true/false/unknown or null). The following steps are taken to determine the value of a boolean field:
1. If the field contains all binary zeros, it is false.
2. If the field contains all binary ones (that is, all 0xFF values), it is true.
3. If the field is one byte long and contains a 0x01 value, it is true.
4. If the first or last byte in the field contains a 0x01 and all of the other bytes are 0x00, it is true.
5. If the contents of the field match any of the items in the True Value Match List or False Value Match List, then the value is true or false respectively.
6. If none of these rules apply, the value is considered unknown.
Table 31. Boolean Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
True Value Match List
|
A semicolon (";") -separated list of values. If the input value matches any of them in step 5, it is considered true and the value from the True Output As property is emitted. The default list is:
l y
l t
l yes
l true
l .y.
l .t.
The comparisons are not case-sensitive.
|
Yes
|
Yes
|
False Value Match List
|
A semicolon (";") -separated list of values. If the input value matches any of them in step 5, it is considered false and the value from the False Output As property is emitted. The default list is:
l n
l f
l no
l false
l .n.
l .f.
The comparisons are not case-sensitive.
|
Yes
|
Yes
|
True Output As
|
If the value is determined to be true then this value is output. The default is "Yes".
|
Yes
|
Yes
|
False Output As
|
If the value is determined to be false then this value is output. The default is "No".
|
Yes
|
Yes
|
Unknown Output As
|
If the value cannot be determined as true or false, then this value is output. The default is "?".
|
Yes
|
Yes
|
Left Padding, Right Padding
|
These two properties control what sort of padding is to be found on either side of the field and then removed. Any characters listed here will be removed. Characters can be specified either by their Unicode values, their Unicode names, or single-quoted.
The default for both is spaces (0x20) and tabs (0x09).
If there are field delimiters, these are the characters that are trimmed from the contents within the delimiters. The region-level Characters to Toss setting determines which characters are trimmed outside of the delimiters. If there are no delimiters, then the Characters to Toss setting is applied first, and then Left Padding and Right Padding are applied.
|
Yes
|
Yes
|
Byte Datatype Properties
A single byte with a range of 0 to 255 for unsigned or -128 to 127 for signed.
Table 32. Byte Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Signed
|
l true (default)
l false - use this to make the value unsigned
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
This is a value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Comp3 Datatype Properties
Also known as "Computational-3," "Packed" or "Packed Decimal." A COBOL storage format similar to Zoned below but differing in internal structure. It is also related to the BCD types.
Table 33. Comp3 Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Scaling Factor (10^n)
|
This is a value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Date Datatype Properties
A date, stored either as a string or in binary form.
The parsing rules are:
1. If the length is 3, then the day, month and year are read as binary values in the Date Format order. The Window for Two-digit Years value is used to determine the century. If the format is YJ, then the first byte is the year, and the second two are the day number in the year, stored as LSB, MSB.
2. If the length is 6, then the same is used, except each day/month/year is taken as two digits.
3. If the length is 8 and there are no separators, then the day and month each get two digits and the year gets four.
4. Otherwise, it is parsed using the YMD Separator characters.
5. For months, the names or abbreviations in English, German, Spanish, French, Portuguese and Italian are recognized.
Table 34. Date Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Date Format
|
The default is read from the local system settings at the time the custom XML converter is defined.
l DMY (day-month-year)
l MDY (month-day-year)
l YMD (year-month-day)
l YJ (year-daynumber a.k.a. "Julian" format)
|
Yes
|
Yes
|
YMD Separator
|
A hint to the parser as to the most likely separator between the date components that will be seen.
The default value comes from the local system configuration, and also includes the period ("."), comma (","), hyphen ("-"), slash ("/") and space.
|
Yes
|
Yes
|
Window for Two-digit Years
|
If the year is only given as two digit, this is the cut-off date for determining the century. The default is 1950.
|
Yes
|
Yes
|
Left Padding, Right Padding
|
These two properties control what sort of padding is to be found on either side of the field and then removed. Any characters listed here will be removed. Characters can be specified either by their Unicode values, their Unicode names, or single-quoted.
The default for both is spaces (0x20) and tabs (0x09).
If there are field delimiters, these are the characters that are trimmed from the contents within the delimiters. The region-level Characters to Toss setting determines which characters are trimmed outside of the delimiters. If there are no delimiters, then the Characters to Toss setting is applied first, and then Left Padding and Right Padding are applied.
|
Yes
|
Yes
|
DateTime Datatype Properties
A date plus a time.
This is parsed as a date followed by the Date-Time Separator followed by a time. It combines the properties of both, and includes that one additional property.
Table 35. DateTime Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Date-Time Separator
|
This is the character that separates the date string from the time string. The default values are 'T' and ' '.
|
Yes
|
Yes
|
Decimal Datatype Properties
Reads 16 bytes and interprets it as a .net System.Decimal. Numbers as large as 1028 (positive or negative) and with as many as 28 significant digits can be stored as a decimal type without loss of precision.
Double Datatype Properties
The standard IEEE 8-byte floating point format.
Table 36. Double Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Scaling Factor (10^n)
|
This is a value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Endian
|
When binary numbers are stored, they can be stored with the smallest component first (little-endian) or last (big-endian).
l Little - the standard for Intel x86-based machines (default)
l Big
|
Yes
|
Yes
|
Float Datatype Properties
The standard IEEE 4-byte floating point format.
Table 37. Float Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Scaling Factor (10^n)
|
This is a value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Endian
|
When binary numbers are stored, they can be stored with the smallest component first (little-endian) or last (big-endian).
l Little - the standard for Intel x86-based machines (default)
l Big
|
Yes
|
Yes
|
Integer Datatype Properties
A four-byte integer with a range of 0 to 4,294,967,295 for unsigned or -2,147,483,648 to 2,147,483,647 for signed.
Table 38. Integer Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Signed
|
l true (default)
l false - use this to make the value unsigned
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
This is a value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Endian
|
When binary numbers are stored, they can be stored with the smallest component first (little-endian) or last (big-endian).
l Little - the standard for Intel x86-based machines (default)
l Big
|
Yes
|
Yes
|
Long Datatype Properties
An eight-byte integer with a range of 0 to 18,446,744,073,709,551,615 for unsigned or -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 for signed.
Table 39. Long Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Signed
|
l true (default)
l false - use this to make the value unsigned
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
A value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Endian
|
When binary numbers are stored, they can be stored with the smallest component first (little-endian) or last (big-endian).
l Little - the standard for Intel x86-based machines (default)
l Big
|
Yes
|
Yes
|
Number Datatype Properties
This corresponds to numbers stored in text form.
Note that if the number is followed by a percent ("%") it is divided by 100; if followed by a permille ("") it is divided by 1000.
A leading or trailing '+' is ignored, as numbers are assumed positive. A leading or trailing '-' will make the number negative.
Table 40. Number Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Decimal
|
The character that corresponds to the decimal point. It is typically a period (".") or comma (","). The default value is determined by the settings on the machine creating the custom XML converter.
|
Yes
|
Yes
|
Thousands
|
The character that corresponds to the thousands separator. The default is fetched from the system settings, and is typically a comma (","), period (".") or space, and is subsequently stored with the custom XML converter. If seen in the input, it is thrown away and not preserved in the output.
|
Yes
|
Yes
|
Base
|
The numeric base in which the number is stored in the input file. It can be anything from 2 (binary) to base 36. The default is 10 (decimal). Other common numbers are 8 (octal) and 16 (hexadecimal).
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
A value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
'C' Rules for Octal and Hex
|
l yes - if a number begins with 0 it is considered octal, or if it begins with 0x it is considered hexadecimal; otherwise it is considered decimal (default)
l no - numbers are considered in the given Base only
|
Yes
|
Yes
|
Use Currency Conventions
|
l yes - if the number is surrounded by '(' and ')' or has a trailing 'cr' (case-insensitive) it is considered negative, or if it has a trailing 'db' or 'dr' (also case-insensitive) it is considered positive (default)
l no
|
Yes
|
Yes
|
Left Padding, Right Padding
|
These two properties control what sort of padding is to be found on either side of the field and then removed. Any characters listed here will be removed. Characters can be specified either by their Unicode values, their Unicode names, or single-quoted.
The default for both is spaces (0x20) and tabs (0x09).
If there are field delimiters, these are the characters that are trimmed from the contents within the delimiters. The region-level Characters to Toss setting determines which characters are trimmed outside of the delimiters. If there are no delimiters, then the Characters to Toss setting is applied first, and then Left Padding and Right Padding are applied.
|
Yes
|
Yes
|
Short Datatype Properties
A two-byte integer with a range of 0 to 65,535 for unsigned or -32,768 to 32,767 for signed.
Table 41. Short Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Signed
|
l true (default)
l false - use this to make the value unsigned
|
Yes
|
Yes
|
Scaling Factor (10^n)
|
A value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|
Endian
|
When binary numbers are stored, they can be stored with the smallest component first (little-endian) or last (big-endian).
l Little - the standard for Intel x86-based machines (default)
l Big
|
Yes
|
Yes
|
String Datatype Properties
A regular string of characters.
Table 42. String Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Normalize White Space
|
l yes - change all linefeeds, carriage returns and tabs into spaces, then remove all spaces from start and end of text, then collapse any consecutive spaces into a single space (default)
l no (leave all whitespace alone)
|
Yes
|
Yes
|
Left Padding, Right Padding
|
These two properties control what sort of padding is to be found on either side of the field and then removed. Any characters listed here will be removed. Characters can be specified either by their Unicode values, their Unicode names, or single-quoted.
The default for both is spaces (0x20) and tabs (0x09).
If there are field delimiters, these are the characters that are trimmed from the contents within the delimiters. The region-level Characters to Toss setting determines which characters are trimmed outside of the delimiters. If there are no delimiters, then the Characters to Toss setting is applied first, and then Left Padding and Right Padding are applied.
|
Yes
|
Yes
|
Time Datatype Properties
A time value.
The parsing rules are as follows:
1. If the first character is an 'n' or 'N', it is assumed to be noon (12:00:00).
2. If the first character is an 'm' or 'M', it is assumed to be midnight (00:00:00).
3. If there is a HMS separator, the next three steps are skipped.
4. If the length is six or more, then the hours are the first two characters, the minutes are the next two characters, and the seconds are the next two digits.
5. If the length is four or five, then the hours are the first two characters, and the minutes are the next two characters.
6. No valid date can be determined.
7. If an HMS separator was seen, then the following rules are tried:
8. Up to two digits become the hour, terminated by the HMS separator.
9. Up to two more digits become the minute, also terminated by the HMS separator.
10. If there are any more digits, the next two become the seconds value.
11. If there is a decimal character and more digits, they become fractional parts of the seconds.
12. If an 'am' or 'pm' (case-insensitive) marker is found, the hours are adjusted accordingly.
13. Wrapping is performed for seconds >= 60 and minutes >= 60. Hours are moduloed with 24.
Table 43. Time Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
HMS Separator
|
This is a hint to the parser as to the most likely separator between the hours, minutes and seconds that will be seen.
The default value comes from the local system configuration, and also includes the colon (":"), period (".") and space.
|
Yes
|
Yes
|
Left Padding, Right Padding
|
These two properties control what sort of padding is to be found on either side of the field and then removed. Any characters listed here will be removed. Characters can be specified either by their Unicode values, their Unicode names, or single-quoted.
The default for both is spaces (0x20) and tabs (0x09).
If there are field delimiters, these are the characters that are trimmed from the contents within the delimiters. The region-level Characters to Toss setting determines which characters are trimmed outside of the delimiters. If there are no delimiters, then the Characters to Toss setting is applied first, and then Left Padding and Right Padding are applied.
|
Yes
|
Yes
|
Zoned Datatype Properties
Also known as the "IBM Signed" format. It is related to Comp3.
Table 44. Zoned Properties
Property
|
Description
|
Editable
|
Affects XML
|
---|
Scaling Factor (10^n)
|
A value from -16 (shifts the decimal 16 places to the right, making the number smaller by n orders of magnitude) to 0 (keeps the number exactly as it appears in the input) to 16 (shifts the decimal 16 places to the left, making the number larger by n orders of magnitude). To enter a scaling factors from 10-16 to 1016, just enter the exponent value.
Example: Entering an exponent of 3 will cause any numbers to be multiplied by 1000 (103) before being output to XML.
|
Yes
|
Yes
|