This topic contains the pages:
Overview
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 Stream to populate a Stream 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/>