I disagree. There is, in most contexts, no difference or required distinction between what DFDL the language enables you to express, and what a fully-implemented DFDL processor carries out for you when you run it with that DFDL schema.
Sometimes, we find it important to separate the two. For example, if discussing the limitations of a particular DFDL processor. But I claim in most cases you can say "DFDL does this or that" and have it be entirely clear that what you meant was the "DFDL language enables you to express the format in such a way that this or that are possible when run with a DFDL processor." ________________________________ From: Costello, Roger L. <[email protected]> Sent: Monday, December 23, 2019 11:03 AM To: [email protected] <[email protected]> Subject: Re: DFDL does neither parsing nor unparsing ... do you agree? Hi Mike, * the DFDL language *enables* unparsing How does the DFDL language enable unparsing? After all, you said, * The DFDL language doesn't "do" anything I assert that DFDL doesn’t do anything or enable anything. What a tool does with a DFDL description is entirely up to the tool and outside the scope of DFDL. Do you agree? /Roger From: Beckerle, Mike <[email protected]> Sent: Monday, December 23, 2019 10:55 AM To: Costello, Roger L. <[email protected]>; [email protected] Subject: [EXT] Re: DFDL does neither parsing nor unparsing ... do you agree? Well, the DFDL language *enables* unparsing. The DFDL language doesn't "do" anything. The English language doesn't "do" anything either. No language does. So we should talk about what the language enables. Many prior generation format description languages do not have unparsing - the ones focused on intake of data into databases for example. Though some do have it - those focused on message brokering. Unparsing support in earlier generation systems is not that great. DFDL actually has some substantial innovation here with the ability to compute values of elements that forward reference and measure the representation length of other elements. This is actually one of the most challenging aspects of implementing DFDL and is why the unparser is in many respects more complex than the parser in Daffodil. There are some uses of DFDL that will require only parsing. In fact unparsing is an optional feature in the DFDL spec. meaning one can create a compliant implementation that does only parsing if that's all you care about. ________________________________ From: Costello, Roger L. <[email protected]<mailto:[email protected]>> Sent: Monday, December 23, 2019 9:45 AM To: [email protected]<mailto:[email protected]> <[email protected]<mailto:[email protected]>> Subject: DFDL does neither parsing nor unparsing ... do you agree? Hi Folks, In my slides on DFDL I say this: * To recap, DFDL’s biggest innovations are that it is: * Comprehensive - a union of the capabilities of prior systems * Standardized * Able to perform unparsing I believe the last sub-bullet is incorrect. DFDL is a language. DFDL does neither parsing nor unparsing. A DFDL processor, using a description found in a DFDL schema, is able to do parsing and unparsing. Do you agree? /Roger
