Shopping Cart

No products in the cart.

BS ISO/IEC 23415:2024

$215.11

Information technology. Data Format Description Language (DFDL) v1.0 Specification

Published By Publication Date Number of Pages
BSI 2024 218
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

PDF Catalog

PDF Pages PDF Title
2 undefined
11 1 Introduction
12 1.1 Why is DFDL Needed?
1.2 What is DFDL?
1.2.1 Simple Example
15 1.3 What DFDL is not
1.4 Scope of version 1.0
17 2 Overview of the Specification
18 3 Notational and Definitional Conventions
3.1 Glossary and Terminology
3.2 Failure Types
19 4 The DFDL Information Set (Infoset)
20 4.1 “No Value”
4.2 Information Items
4.2.1 Document Information Item
4.2.2 Element Information Items
21 4.3 DFDL Information Item Order
4.4 DFDL Augmented Infoset
22 5 DFDL Schema Component Model
5.1 DFDL Simple Types
23 5.2 DFDL Subset of XML Schema
24 5.3 XSD Facets, min/maxOccurs, default, and fixed
25 5.3.1 MinOccurs, MaxOccurs
5.3.2 MinLength, MaxLength
5.3.3 MaxInclusive, MaxExclusive, MinExclusive, MinInclusive, TotalDigits, FractionDigits
5.3.4 Pattern
5.3.5 Enumeration Values
5.3.6 Default
26 5.3.7 Fixed
5.4 Compatibility with Other Annotation Language Schemas
27 6 DFDL Syntax Basics
6.1 Namespaces
6.2 The DFDL Annotation Elements
28 6.3 DFDL Properties
30 6.3.1 DFDL String Literals
6.3.1.1 Character strings in DFDL String Literals
6.3.1.2 DFDL Character Entities, Character Class Entities, and Byte Values in String Literals
33 6.3.1.3 DFDL Character Class Entities in DFDL String Literals
6.3.1.4 DFDL Byte Value Entities in DFDL String Literals
34 6.3.2 DFDL Expressions
6.3.3 DFDL Regular Expressions
6.3.4 Enumerations in DFDL
35 7 Syntax of DFDL Annotation Elements
7.1 Component Format Annotations
36 7.1.1 Property Binding Syntax
7.1.1.1 Property Binding Syntax: Attribute Form
7.1.1.2 Property Binding Syntax: Element Form
37 7.1.1.3 Property Binding Syntax: Short Form
7.1.2 Empty String as a Representation Property Value
38 7.2 dfdl:defineFormat – Reusable Data Format Definitions
7.2.1 Using/Referencing a Named Format Definition: The dfdl:ref Property
7.2.2 Inheritance for dfdl:defineFormat
39 7.3 The dfdl:defineEscapeScheme Defining Annotation Element
7.3.1 Using/Referencing a Named escapeScheme Definition
7.4 The dfdl:escapeScheme Annotation Element
40 7.5 The dfdl:assert Statement Annotation Element
7.5.1 Properties for dfdl:assert
42 7.6 The dfdl:discriminator Statement Annotation Element
7.6.1 Properties for dfdl:discriminator
45 7.7 DFDL Variable Annotations
7.7.1 dfdl:defineVariable Annotation Element
46 7.7.1.1 Examples
7.7.1.2 Predefined Variables
7.7.2 The dfdl:newVariableInstance Statement Annotation Element
47 7.7.2.1 Examples
7.7.3 The dfdl:setVariable Statement Annotation Element
48 7.7.3.1 Examples
49 8 Property Scoping and DFDL Schema Checking
8.1 Property Scoping
8.1.1 Property Scoping Rules
8.1.2 Providing Defaults for DFDL properties
50 8.1.3 Combining DFDL Representation Properties from a dfdl:defineFormat
8.1.4 Combining DFDL Properties from References
53 8.2 DFDL Schema Checking
8.2.1 Schema Component Constraint: Unique Particle Attribution
8.2.2 Optional Checks and Warnings
55 9 DFDL Processing Introduction
9.1 Parser Overview
9.1.1 Points of Uncertainty
56 9.1.2 Processing Error
9.1.3 Recoverable Error
9.2 DFDL Data Syntax Grammar
58 9.2.1 Nil Representation
9.2.2 Empty Representation
59 9.2.3 Normal Representation
9.2.4 Absent Representation
9.2.5 Zero-length Representation
9.2.6 Missing
60 9.2.7 Examples of Missing and Empty Representation
9.2.8 Round Trip Ambiguities
9.3 Parsing Algorithm
61 9.3.1 Known-to-exist and Known-not-to-exist
9.3.1.1 Known-to-exist
9.3.1.2 Processing Error After Determining Known-to-exist
9.3.1.3 Known-not-to-exist
62 9.3.2 Establishing Representation
9.3.2.1 Simple element
9.3.2.2 Complex element
63 9.3.3 Resolving Points of Uncertainty
9.3.3.1 Nested Points of Uncertainty
64 9.4 Element Defaults
9.4.1 Definitions
9.4.1.1 Default Value
9.4.1.2 Required/Optional Occurrence
9.4.2 Element Defaults When Parsing
65 9.4.2.1 Simple element (not xs:string and not xs:hexBinary)
9.4.2.2 Simple element (xs:string or xs:hexBinary)
9.4.2.3 Complex element
9.4.2.4 Example: Complex Optional Empty Element Not Added to Infoset
66 9.4.2.5 Example: Complex Optional Empty Element with Delimiters
9.4.3 Element Defaults When Unparsing
67 9.4.3.1 Simple element
9.4.3.2 Complex element
9.5 Evaluation Order for Statement Annotations
68 9.5.1 Asserts and Discriminators with testKind ‘expression’
9.5.2 Discriminators with testKind ‘expression’
9.5.3 Elements and setVariable
9.5.4 Controlling the Order of Statement Evaluation
9.6 Validation
69 9.7 Unparser Infoset Augmentation Algorithm
70 10 Overview: Representation Properties and their Format Semantics
71 11 Properties Common to both Content and Framing
73 11.1 Unicode Byte Order Mark (BOM)
11.2 Character Encoding and Decoding Errors
74 11.2.1 Property dfdl:encodingErrorPolicy
11.2.1.1 dfdl:encodingErrorPolicy ‘error’
11.2.1.2 dfdl:encodingErrorPolicy ‘replace’ for parsing
75 11.2.1.3 dfdl:encodingErrorPolicy ‘replace’ for unparsing
11.2.2 Unicode UTF-16 Decoding/Encoding Non-Errors
11.2.3 Preserving Data Containing Decoding Errors
11.3 Byte Order and Bit Order
11.4 dfdl:bitOrder Example
76 11.4.1 Example Using Right-to-Left Display for ‘leastSignificantBitFirst’
11.4.2 dfdl:bitOrder and Grammar Regions
77 12 Framing
12.1 Aligned Data
78 12.1.1 Implicit Alignment
12.1.2 Mandatory Alignment for Textual Data
79 12.1.3 Mandatory Alignment for Packed Decimal Data
12.1.4 Example: AlignmentFill
80 12.2 Properties for Specifying Delimiters
83 12.3 Properties for Specifying Lengths
84 12.3.1 dfdl:lengthKind ‘explicit’
12.3.2 dfdl:lengthKind ‘delimited’
85 12.3.2.1 Non-Delimited Elements within Delimited Constructs
12.3.2.2 Delimited Binary Data
12.3.3 dfdl:lengthKind ‘implicit’
86 12.3.4 dfdl:lengthKind ‘prefixed’
89 12.3.4.1 Nested Prefix Lengths37F
12.3.5 dfdl:lengthKind ‘pattern’
12.3.6 dfdl:lengthKind ‘endOfParent’
91 12.3.7 Elements of Specified Length
12.3.7.1 Length of Simple Elements with Textual Representation
12.3.7.1.1 Text Length Specified in Bytes
92 12.3.7.2 Length of Simple Elements with Binary Representation
12.3.7.2.1 Length of Base-2 Binary Number Elements
12.3.7.2.2 Length of Floating Point Binary Number Elements
12.3.7.2.3 Length of Packed Decimal Number Elements
93 12.3.7.2.4 Length of Binary Boolean Elements
12.3.7.2.5 Length of Base-2 Binary Calendar Elements
12.3.7.2.6 Length of Packed Decimal Calendar Elements
12.3.7.2.7 Length of Binary Opaque Elements
12.3.7.3 Length of Complex Elements
94 13 Simple Types
13.1 Properties Common to All Simple Types
95 13.2 Properties Common to All Simple Types with Text representation
96 13.2.1 The dfdl:escapeScheme Properties
99 13.2.1.1 Escape Scheme Example
13.3 Properties for Bidirectional support for All Simple Types with Text representation
13.4 Properties Specific to String
101 13.5 Properties Specific to Number with Text or Binary Representation
13.6 Properties Specific to Number with Text Representation
108 13.6.1 The dfdl:textNumberPattern Property
13.6.1.1 dfdl:textNumberPattern for dfdl:textNumberRep ‘standard’
112 13.6.1.2 dfdl:textNumberPattern for dfdl:textNumberRep ‘zoned’
13.6.2 Converting logical numbers to/from text representation
114 13.7 Properties Specific to Number with Binary Representation
115 13.7.1 Converting Logical Numbers to/from Binary Representation
13.7.1.1 Converting Base-2 Binary Numbers
13.7.1.2 Bit strings, Alignment, and dfdl:fillByte
116 13.7.1.3 Bits within Bit Strings of Length <= 8
13.7.1.4 Bits within Bit Strings of Length > 8
13.7.1.4.1 Examples of Unsigned Integer Conversion
118 13.7.1.5 Converting Packed Decimal Numbers
120 13.8 Properties Specific to Float/Double with Binary Representation
13.9 Properties Specific to Boolean with Text Representation
121 13.10 Properties Specific to Boolean with Binary Representation
122 13.11 Properties Specific to Calendar with Text or Binary Representation
124 13.11.1 The dfdl:calendarPattern property
127 13.11.2 The dfdl:calendarCheckPolicy Property
13.12 Properties Specific to Calendar with Text Representation
128 13.13 Properties Specific to Calendar with Binary Representation
129 13.14 Properties Specific to Opaque Types (xs:hexBinary)
13.15 Nil Value Processing
13.16 Properties for Nillable Elements
133 14 Sequence Groups
14.1 Empty Sequences
134 14.2 Sequence Groups with Separators
135 14.2.1 Separators and Suppression
136 14.2.2 Parsing Sequence Groups with Separators
137 14.2.2.1 Errors When the Sequence is Positional
14.2.2.2 Example Parsing Scenarios
138 14.2.2.3 Parsing Child Groups within Separated Sequences
14.2.3 Unparsing Sequence Groups with Separators
139 14.2.3.1 Example Unparsing Scenarios
140 14.2.3.2 Unparsing Child Groups within Separated Sequences
14.3 Unordered Sequence Groups
14.3.1 Restrictions for Unordered Sequences
14.3.2 Parsing an Unordered Sequence
14.3.2.1 Source-to-source Transformation
141 14.3.2.2 Post-processing Transformation
142 14.3.3 Unparsing an Unordered Sequence
14.4 Floating Elements
143 14.5 Hidden Groups
145 15 Choice Groups
146 15.1 Resolving Choices
15.1.1 Resolving Choices via Speculation
147 15.1.2 Resolving Choices via Direct Dispatch
15.1.3 Unparsing Choices
15.1.3.1 Unparsing Choices in Hidden Groups
148 16 Properties for Array Elements and Optional Elements
16.1 The dfdl:occursCountKind property
16.1.1 dfdl:occursCountKind ‘fixed’
149 16.1.2 dfdl:occursCountKind ‘implicit’
16.1.3 dfdl:occursCountKind ‘parsed’
16.1.4 dfdl:occursCountKind ‘expression’
16.1.5 dfdl:occursCountKind ‘stopValue’
150 16.2 Default Values for Arrays
16.3 Arrays with DFDL Expressions
16.4 Points of Uncertainty
16.5 Arrays and Sequences
16.6 Forward Progress Requirement
151 16.7 Parsing Occurrences with Non-Normal Representation
16.8 Sparse Arrays
152 17 Calculated Value Properties
153 17.1 Example: 2d Nested Array
17.2 Example: Three-Byte Date
156 18 DFDL Expression Language
18.1 Expression Language Data Model
157 18.2 Variables
18.2.1 Rewinding of Variable Memory State
18.2.2 Variable Memory State Transitions
158 18.3 General Syntax
159 18.4 DFDL Expression Syntax
160 18.5 Constructors, Functions and Operators
18.5.1 Constructor Functions for XML Schema Built-in Types
161 18.5.2 Standard XPath Functions
18.5.2.1 Boolean functions
162 18.5.2.2 Numeric Functions
18.5.2.3 String Functions
163 18.5.2.4 Date and Time Functions
18.5.2.5 Node Sequence Test Functions
164 18.5.2.6 Node functions
18.5.2.7 Nillable Element Functions
18.5.3 DFDL Functions
166 18.5.4 DFDL Constructor Functions
167 18.5.5 Miscellaneous Functions
168 18.6 Unparsing and Circular Expression Deadlock Errors
169 19 DFDL Regular Expressions
170 20 External Control of the DFDL Processor
171 21 Built-in Specifications
172 22 Conformance
173 23 Optional DFDL Features
175 24 Security Considerations
176 25 Authors and Contributors
177 26 Intellectual Property Statement
178 27 Disclaimer
179 28 Full Copyright Notice
180 29 References
183 30 Appendix A: Escape Scheme Use Cases
30.1 Escape Character Same as dfdl:escapeEscapeCharacter
30.2 Escape Character Different from dfdl:escapeEscapeCharacter
30.2.1 Example 1 – Separator ‘;’
184 30.2.2 Example 2 – Separator ‘sep’
30.3 Escape Block with Different Start and End Characters
185 30.4 Escape Block with Same Start and End Characters
187 31 Appendix B: Rationale for Single-Assignment Variables
188 32 Appendix C: Processing of DFDL String literals
32.1 Interpreting a DFDL String Literal
32.2 Recognizing a DFDL String Literal
32.3 Recognizing DFDL String Literal Part
190 33 Appendix D: DFDL Standard Encodings50F
33.1 Purpose
33.2 Conventions
33.3 Specification Template
33.4 Encoding X-DFDL-US-ASCII-7-BIT-PACKED
33.4.1 Name
33.4.2 Translation table
33.4.3 Width
191 33.4.4 Alignment
33.4.5 Byte Order
33.4.6 Example 1
33.4.7 Example 2
193 33.5 Encoding X-DFDL-US-ASCII-6-BIT-PACKED
33.5.1 Name
33.5.2 Translation Table
194 33.5.3 Width
33.5.4 Alignment
33.5.5 ByteOrder
33.5.6 Example 1
195 33.6 References for Appendix D52F
196 34 Appendix E: Glossary of Terms
202 35 Appendix F: Specific Errors Classified
204 36 Appendix G: Property Precedence
36.1 Parsing
36.1.1 dfdl:element (simple) and dfdl:simpleType
207 36.1.2 dfdl:element (complex)
208 36.1.3 dfdl:sequence and dfdl:group (when reference is to a sequence)
209 36.1.4 dfdl:choice and dfdl:group (when reference is to a choice)
210 36.2 Unparsing
36.2.1 dfdl:element (simple) and dfdl:simpleType
214 36.2.2 dfdl:element (complex)
215 36.2.3 dfdl:sequence and dfdl:group (when reference is a sequence)
36.2.4 dfdl:choice and dfdl:group (when reference is a choice)
BS ISO/IEC 23415:2024
$215.11