stevedlawrence opened a new pull request, #1085: URL: https://github.com/apache/daffodil/pull/1085
- The dfdlx:repType property is now resolved just like any other DFDL property, it no longer *must* be on a global simple type definition. - The dfdlx:repType property now must reference a type with an underlying primitive type derived from xs:integer, and elements that define dfdlx:repType must have an underlying primitive type of xs:string - Enumerations no longer need to be immediately on the element or simpleType associate with a repType. Multiple levels of indirection via restriction bases are now supported. - Most of the complexity related to type calc is removed, now that it does not need to be generalized for other uses of type calculators. In fact, the concept of a "type calculator" and rep value sets are removed. The needed data structures for quick conversion from rep type to logical type are created and passed directly to the RepType parser/unparsers. We lose some extensibility, but that only adds unneeded complexity. - repValueRanges are no longer converted to BigInts. Instead, where necessary DPath functions are used to compare values. - repType logic is moved out of expression related files into their own specific files, since repType no longer has any relation to expressions now that type calculators are removed. - The repType mixin is moved from DSOM to grammar, since the properties are more related to grammar usage than DSOM usage. This simplifies the implementation a bit - EnumerationDef now does not convert repValues to their repType. Previously it could do this because it just use a BigInt, but now that the correct data primitive is used, we must do it elsewhere, sine the EnumerationDef does not know what the repType primitive is. Only the element where the repType is defined knows that information. - Adds new logic to make sure that repValues and repValueRanges do not overlap Deprecation/Compatibility: The dfdlx:repType property now must reference a type with an underlying primitive type derived from xs:integer, and elements that define dfdlx:repType must have an underlying primitive type of xs:string DAFFODIL-2738, DAFFODIL-2809 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
