Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: filled in 2.1 to 2.81

Under construction

 

Release 0.81

Errata

Some of the official errata in the DFDL specification are supported in this implementation of DFDL.Daffodil.

Keep in mind that Daffodil does not implement (currently) an unparser, so when the tables below indicate 'Yes' for support of an erratum, that means it is supported in the Daffodil parser.

The status of the DFDL 1.0 specification is currently Proposed Recommendation. A number of errata are described on the Open Grid Forum (OGF) website. Some errata are clarifications to the specification document, but several errata affect an implementation. The following tables show which errata are supported by the IBM implementationDaffodil. The tables use the same numbering as the OGF errata document.
N/A means that the erratum is just a clarification to the specification. 'No' means either it is known not to work in conformance with the specification as modified by the erratum, OR, it is simply unknown whether it works properly or not. 'Yes' means it is known to work properly, and there is reasonable test coverage of this.
Where the erratum is partially supported, the Notes column provides further information, and recommendations to avoid problems when the erratum is implemented.

Major errata

 

ErratumSupportedNotes
3.1Yes 
3.2Yesdfdl:outputValueCalc not supported (because unparsing not supported)
3.3Yes 
3.4NorecoverableError not supported
3.5Yes 
3.6NoNot supported
3.7NounicodeByteOrderMark not supported. Use UTF-16BE or UTF-16LE, UTF-32BE or UTF-32LE
3.8NoProperties for some unimplemented features are ignored. No warning or error.
3.9Partiallydfdl:lengthKind 'pattern' is limited to only text. Recursively children are not checked for text and same encoding.
3.10Yes 
3.11Yesdfdl:occursCountKind 'implicit' and 'parsed' are supported.
3.12NoValidation is not supported.
3.13NoThe property encodingErrorPolicy is not supported. The behaviour in the presence of decode errors is undetermined.
3.14YesBoth old (deprecated) property is supported along with the new one.
3.15NoThe new properties elementID and choiceBranchRef are not supported.
3.16PartiallyThe removed property documentFinalSeparatorCanBeMissing is not accepted. However, documentFinalTerminatorCanBeMissing is not supported.
3.17See sub table
FeatureDetectionSupportNotes
Text representation for types other than String
dfdl:representation="text" for Number, Calendar or Boolean types
PartialMany of the more advanced text number format properties are not supported.
Delimiters
dfdl:separator <> "" or dfdl:initiator <> "" or dfdl:terminator <>  "" or dfdl:lengthKind="delimited"
Yes 

BCD calendars

BCD numbers

IBM4690 packed calendars

IBM4690 packed numbers

 No 
Multiple schemasxs:include or xs:import in xsdYes 
Named formatsdfdl:defineFormat or dfdl:refYes 
Choicesxs:choice in xsdPartialchoiceLength, choiceBranchRef, and elementID not supported
Arrays where size not known in advance
dfdl:occursCountKind 'implicit', 'parsed', 'stopValue'
Partial'stopValue' not supported.
Expressions
Use of a DFDL expression in any property or attribute value
Partial

The dfdl:assert and dfdl:discriminator annotations are supported. The inputValueCalc property is supported.

Runtime-valued properties (e.g., byteOrder or encoding computed using an expression) are not supported.

End of parentdfdl:lengthKind='endOfParent'No 
3.18YesFunctions use the new names. (The rest of this erratum is not observable in behavior of the system.)
3.19NoDefault values are not consistently evaluated. Constants can be used, but reference between default value expressions may cause a schema definition error.
3.20Nodfdl:newVariableInstance not supported
3.21PartialNew placement restrictions are not checked. External variables are not supported.
3.22No(This erratum is not behavioral, however, it is relevant that single-assignment checking of variables is currently not consistently performed.)
3.23Yes 
3.24Yes 
3.25Partialdfdl:newVariableInstance is not supported.
3.26NoDefault values not supported.

 

...

 
ErratumSupportedNotes
2.1Yes 
2.2PartiallyNoDo not use dfdl:decimalVirtualPoint to indicate the start of fractional secondsbinary calendars not supported
2.3Yes 
2.4YesNodelimited binary not supported 
2.5Nodfdl:lengthKind 'endOfParent' not supported
2.6N/A 
2.7NoYesdfdl:inputValueCalc and dfdl:outputValueCalc not supported (as unparsing is not supported)
2.8YesNonilKind='literalCharacter' not supported 
2.9YesNoFacets must be used with lengthUnits='characters' 
2.10N/A 
2.11Yes 
2.12NoVariables not supportedMulti-file schema interactions with variable naming not yet tested.
2.13NoPrefix length type with prefix length not supported
2.14PartiallyNoPrefix length type with prefix length not supported. All property restrictions are checkedNo checking for these constraints.
2.15YesNoZoned format not supported 
2.16Yes 
2.17YesPartialRaw byte entities not supported 
2.18Yes 
2.19Yes 
2.20YesPartialRaw byte entities not supported. 'literalCharacter' not supported. 
2.21Nodfdl:textNumberCheckPolicy behaves according to the specificationnot supported. It is ignored.
2.22PartiallyDo not specify an expression for dfdl:textStandardDecimalSeparator that evaluates to the empty string
2.23Nodfdl:decimalSeparator may not be a listProperty unimplemented.
2.24PartiallyNoProperty unimplemented.Do not specify an expression for dfdl:textStandardGroupingSeparator that evaluates to the empty string
2.25Yes 
2.26PartiallyNoProperty unimplemented.Do not specify an expression for dfdl:textStandardExponentCharacter that evaluates to the empty string
2.27NoEnsure that dfdl:textStandardDecimalSeparator is set sensibly even for integer typesProperty unimplemented.
2.28NoICU significant digits symbol '@' not supportedtextNumberPattern property is unimplemented
2.29N/A 
2.30PartiallyNoboolean type not implemented.Ensure that when element length is fixed and not trimming or padding, all dfdl:textBooleanTrueRep and dfdl:textBooleanFalseRep values must be the same length
2.31Nodfdl:occursCountKind 'stopValue' not supported
2.32N/A 
2.33N/A 
2.34Yes 
2.35Nodfdl:inputValueCalc return value is not range checked if numeric. Validation not supported.
2.36Yes 
2.37YesNo Untested.
2.38YesPartialdfdl:byteOrder applies to the types and binary representations currently implemented. 
2.39Yes 
2.40YesNodecimal type unsupported, textNumberPattern unsupported 
2.41N/A 
2.42YesNo Property unimplemented
2.43Yes 
2.44Yes 
2.45YesNo Property unimplemented
2.46NoOnly single characters allowed for exponent usng property dfdl:textStandardExponentCharacterProperty unimplemented
2.47Yes 
2.48YesNoTesting status unclear (TBD) 
2.49YesNo Untested.
2.50NoAll calendar values have a time zone, either explicit or via dfdl:calendarTimeZoneUntested.
2.51NoEnsure that all calendar elements have an explicit time zone when serializingUnparsing not supported
2.52YesNoICU 'u' extended year is untested. Negative years using 'y' and 'G' untested. 
2.53YesNobinary calendar types not supported
2.54NotextNumberPattern not supported
2.55N/A 
2.56NoDo not create elements of type xs:date or xs:time that have binary representation and binaryCalendarRep set to 'binarySeconds' or 'binaryMilliseconds'binary calendar types not supported
2.57YesNobinary calendar types not supported 
2.58YesNonilKind='logicalValue' not supported 
2.59Yes 
2.60Nodfdl:textBidi 'yes' not None of the bidi text properties are supported
2.61N/A 
2.62Yes 
2.63NoFor affected properties, do not specify an expression that returns the empty stringRuntime-valued properties not supported.
2.64Yes 
2.65NoOlson timezones are not supported.
2.66No 
2.67N/A 
2.68No 
2.69N/A 
2.70Yes 
2.71YesNoignoreCase="yes" not supported 
2.72No endOfParent not supported.
2.73YesNoendOfParent not supported. 
2.74No unparsing not supported
2.75YesN/A 
2.76YesNoprefixed lengthKind is not supported 
2.77N/A 
2.78YesNo unparsing not supported
2.79YesNo textNumberPattern not supported
2.80No textNumberPattern not supported
2.81Yes