XMLT Attribute Types

XMLT Attribute Types are attributes of XMLT Element Types. These attributes specify how their parent Element Type process data from the input file.

Attribute Type Description
CollectLines When True, allows multiple lines of the input file to be processed as a single record. All lines after the record start marker are considered as belonging to the same record until XMLT encounters :
  • The record end marker,
  • The another record start marker, or
  • The last line of the input file.
When False, each line after the file header is processed as a complete record. In this case no record start marker is required and the default Line value (0) for ItemType Chunks can be omitted.
dt:type Enumeration
dtvalues True, False
Default False
Attribute of Record
Example     <Record CollectLines="True">         <StartRecord>IT_NO_06796C             <Chunk Offset="10" Length="6"></Chunk>         </StartRecord> This example states that the input text file has data for a particular item data on multiple lines. Note: The first line of any item data record always starts with the record start marker, i.e. the characters "IT_NO_" at character offset 10.
CountExtra (Optional) Specifies the value to add to the value, extracted by CountField  before XMLT verifies the number of records in the input file.
dt:type ui2
Range 0 to 65,535
Default
Attribute of CountField
Example <Trailer Pattern="TRAILR">     <CountField CountExtra="2">         <Chunk Offset="34" Length="7"></Chunk>     </CountField> </Trailer> This example above states that the number of lines XMLT processed should be incremented by a value of 2 before validating the CountField line count.
DateFormat (Optional) Specifies a date format for an Attribute Element Type. Use DateFormat to specify the date format that the characters in your input file represent.
dt:type Enumeration
dtvalues YYYYMMDD, YYMMDD, YYYYDDMM, YYDDMM, YYYYDDD, YYDDD, MMDDYY, MMDDYYYY, DDMMYY, DDMMYYYY
Default No formatting applied
Attribute of Attribute
Example <Header Pattern="HEADER">     <Attribute DateFormat="YYMMDD">Date         <Chunk Line="0" Offset="6" Length="6" Pad="False" />     </Attribute> </Header> This example specifies that the input characters extracted for the header are a date represented in a 2-digit Year/Month/Day format. The extracted date will appear in a standardized date format in the output file.
EachLine Specifies whether each line of input represents a complete group record from which data can be extracted for the various TADB group attributes.
  • True, processes each input line as an individual group.
Note: The Line attribute can be omitted from Chunk elements within the respective ItemData element. Data is obtained from the default line (line 0) specified by the previous RecordStart.
  • False, allows multiple input lines to be processed as a group.
  • Usually you will set EachLine to True if the attributes extracted from the input file are represented as a TADB List group in POMS. If the attributes are represented in POMS as a Normal TADB group, set EachLine to False.
dt:type Enumeration
dtvalues True, False
Default False
Attribute of ItemData
Example     <GroupName>Parts</GroupName>     <ItemData EachLine="False">         <Attribute>Prefix             <Chunk Offset="21" Length="7"></Chunk>         </Attribute>         <Attribute>Suffix             <Chunk Offset="28" Length="8"></Chunk>         </Attribute>     </ItemData> This example states that group item data records (attributes of a particular group) occur on multiple lines. Note that each Chunk has a Line attribute specifying the line number static to the record start marker.
Length The number of characters in a Chunk, beginning with the indicated starting point (Offset). Note: A Length of 0 defines an empty string.
dt:type  ui2
Range 0 to 65,535
Default
Attribute of Chunk
Example     <ItemType>ORDER         <Chunk Line="4" Offset="28" Length="4"></Chunk>         <Chunk Line="0" Offset="26" Length="3"></Chunk>         <Chunk Line="4" Offset="32" Length="2"></Chunk>      </ItemType> Note: The first Chunk in this example says: Go to line 4 in the current record; start at character 28 (the 29th character); pull four characters.
Line Specifies the line in the input file where data for a Chunk can be found. The line count starts at first line of the respective header, footer, or record. Note: The first line is line 0.
dt:type ui2
Range 0 to 65,535
Default 0
Attribute of Chunk
Example <Record CollectLines="True">         <StartRecord>1         <Chunk Line="0" Offset="0" Length="1" Pad="False" />          </StartRecord>     <ItemType>ORDER         <Chunk Line="4" Offset="28" Length="4" Pad="False" /> Note: The last Chunk in the example above says: Go to line 4 (the fifth line) in the current record in the input text file; start at character 28th; pull four characters.
Offset The number of characters from the left (on the specified Line of the input file) that identifies a starting point for a Chunk. Note: The first character on a line is character 0.
dt:type  ui2
Range 0 to 65,535
Default
Attribute of Chunk
Example     <ItemType>ORDER         <Chunk Line="4" Offset="28" Length="4"></Chunk>         <Chunk Line="0" Offset="26" Length="3"></Chunk>         <Chunk Line="4" Offset="32" Length="2"></Chunk>     </ItemType> Note: The first Chunk in this example says: Go to line 4 in the current record; start at character 28 (the 29th character); pull four characters.
Pad Determines if a Chunk should be padded with extra spaces (if the number of characters found at the specified Offset is less than the specified Length.
dt:type Enumeration
dtvalues True, False
Default False
Attribute of Chunk
Example     <Attribute>Description         <Chunk Offset="15" Length="36" Pad="True"></Chunk>     </Attribute> Note: This example says: Go to the default line (0) in the current header or record; start at  character 15; pull 36 characters; and if less than 36 characters are found there, pad the result with leading zeros to obtain 36 characters.
Pattern (Required) Specifies a string of characters appearing in the input file that XMLT uses to identify the start of a Header or Trailer. Note: the pattern string must start in the first column (0th character) of the input file.
dt:type String
Length
Default
Attribute of Header, Trailer
Example An input text file has a file header line: HEADER030930 The translation XML defines: <Header Pattern="HEADR">   <Attribute>Date     <Chunk Offset="7" Length="6"></Chunk>     </Attribute> </Header> This example above  states that any line starting with the characters "HEADR" is the first line in a header.
RecordLength (Optional) Specifies a length (number of characters) for a Record when the records are not separated by a CR/NL character. Note: Do not use this attribute when CollectLines="True"
dt:type ui2
Range 0 to 65,535
Default See CollectLines.
Attribute of Record
Example    <Record RecordLength="80">     . . . </Record> This example states that a new record occurs every eighty characters, starting with the first record start marker.
SplitFile Specifies whether input files should be split up into separate output files when translated.
dt:type Enumeration
dtvalues True, False
Default True
Attribute of File
Example This example creates a single output file containing all orders items (or group records)  parsed from the input file: <File xmlns="x-schema:..\xmlt.xsd" SplitFile="False">
SplitType If files are split (SplitFile="True") this attribute determines how output files are split up:
  • Item - creates a separate output file for each ordered item.
  • Size - creates a separate item when the output file will exceed the SplitSize after processing of the current record is complete.
Note: The size of the output file may exceed SplitSize slightly
dt:type Enumeration
dtvalues Item, Size
Default Size
Attribute of File
Example This example creates separate output files for each orders parsed from the input file: <File xmlns="x-schema:..\xmlt.xsd" SplitFile="True" SplitType="Item">
SplitSize If files are split (SplitFile="True") this attribute determines how output files are split up.
dt:type ui2
Range 0 to 65,535
Default
Attribute of File
Example This example starts writing to another output file when the last record processed causes the current output file to exceed the 20 MB: <File xmlns="x-schema:..\xmlt.xsd" SplitFile="True" SplitType="Size" SplitSize="20000">