I think this is a great description of what DFDL is.

I would add that DFDL stands for Data Format Description Language, it is an 
open standard, and that it’s expressed as an XML Schema.

Hope it helps,
Davin

From: Roger L Costello <coste...@mitre.org>
Date: Friday, June 16, 2023 at 8:24 AM
To: users@daffodil.apache.org <users@daffodil.apache.org>
Subject: DFDL is great!
Hi Folks,

The idea behind DFDL is to _describe_ a data format using a formal language 
(the DFDL language). That description is handed off to a tool (a DFDL 
processor) which understands the DFDL language. Also, an instance of the data 
format is provided to the DFDL processor. The DFDL processor uses the 
description to figure out how to parse the instance document. The DFDL 
processor creates an in-memory representation of the instance document. Then, 
depending how you configured the DFDL processor, the in-memory representation 
is serialized (output) as XML. Or JSON. Or EXI. Or some other form.

The description is declarative. It states _what_ is the structure of the data 
format. (Get a data format SME to help with the description of the data 
format.) The description doesn't say _how_ to parse the data format. The DFDL 
processor figures out how to parse the data format using the description of its 
structure.

Plus, the same description that is used to _parse_ the data format is used to 
_unparse_ the XML (or JSON or EXI, etc.):

data format --> DFDL (parse) --> XML --> DFDL (unparse) --> data format

That is brilliant!
------------------------------------------------------------
Seek your insights: I am about to send the above message to some internal folks 
to get them excited about DFDL. Is there anything you would add to the above 
message?

/Roger


This message and any files transmitted within are intended solely for the 
addressee or its representative and may contain company sensitive information.  
If you are not the intended recipient, notify the sender immediately and delete 
 this message.  Publication, reproduction, forwarding, or content disclosure  
is prohibited without the consent of the original sender and may be unlawful.
  
  Concurrent Technologies Corporation and its Affiliates.
  www.ctc.com  1-800-282-4392

Reply via email to