This topic contains the pages:
Overview
To use a file collector to load data from a binary file, you must specify the file's structure or grammar. A binary file collector requires a grammar to define the file so that the collector can extract the data. Binary file grammars are defined in XML. With a binary file grammar you can define the structure of any binary or ASCII file that has a definable structure. The target nodes are the ones that will generate an output record.
To configure a File Collector to load data from a binary file you must:
- specify the grammar in the File Format Description section
- specify a set of target nodes in the Record Node field.
The topic Binary File Grammar gives details of:
- creating binary file grammars
- creating File Columns in a file collector that reads binary files, in the section Creating the File Columns for the File Collector.
- details of using the data read from binary files in Tables, in the section Referring to File Columns in Attribute Expressions.
Grammar
A binary file grammar is an XML document that specifies the structure of a binary or ASCII file.
Note in the following sections that:
- attribute (beginning with lower case a) refers to attributes of nodes, in the standard terminology of XML.
- Attribute Node (beginning with upper case A) refers to a node that represents a target file collector Column– that is, an Attribute in PhixFlow that can be used in the output table to populate an attribute.
- Control, Data, etc.Nodes – that is, types of nodes specific to PhixFlow binary file grammars – will start with an upper case letter.
- Expressions are PhixFlow scripting expressions – see PhixFlow help for more details. All Expressions must be inside curly braces in a grammar file, unless contained in a Script Node.
Nodes
There are three classes of node in a binary file grammar:
- Control nodes that define the possible options, sequences, choices and repeating loops in the file. These nodes are:
- <Grammar/>
- <Repeat/>
- <Sequence/>
- <Choice/>
- Logic nodes that run Expressions to calculate values that might be used later, or to carry out validation logic. These nodes are:
- <Script/>
- <Validate/>
- Data nodes that construct the Attributes and Records that will be generated by the binary file reader. These nodes are:
- <Record/>
- <Attribute/>
- <Tag/>
- <Length/>
- <Name/>
- <Value/>
- <Bytes/>