Some data types are encoded in ways we can't decode.
Good example of this is an ASN.1 DER "Object Identifier".
Another good example of this is a Google Protocol Buffers zig-zag integer.
Another example of this is the payload of a mil-std-2045 header - the payload can be specified as "compressed", and must be decompressed when parsing, recompressed when unparsing.
This ticket may be mixing some issues.
- Primitive representations of string, int, etc.
- decoding of a representation before subsequently parsing it, or the inverse for unparsing
In general DFDL/Daffodil needs extensibility of this kind, so that every time someone runs into a format with some encoding not anticipated by the DFDL standard we don't have to add it into the Daffodil implementation as a special case.
We need the ability to extend by adding a jar of specifically-setup libraries, and augmenting a schema with declarations that the extension be added.