You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 19 Current »

Are you running MS-Windows ?

See Setup Microsoft Windows for Unicode, as full Unicode support is required for using Daffodil.

Install Java Runtime Environment (JRE)

Daffodil requires Java. The specific versions needed/supported are listed at Tested/Verified Tool Versions. If you do not already have the Java Runtime Environment, it can be downloaded for free at https://java.com/en/download/.

Obtain The Latest Daffodil Release

Visit the Daffodil Artifacts Page to download the latest Daffodil stable or development releases.

Run Daffodil

After you have downloaded the latest Daffodil Release, you'll want to uncompress the files into a suitable location on your machine. The uncompressed directory contains a bin directory that contains two scripts: daffodil.bat for Windows, and daffodil for Linux. These files must be executed on the command line. See the Examples page to see how to execute and use the Daffodi CLI, and the Command Line Interface page for the in depth usage.

Use Daffodil via Calling it from Your Own Java

Daffodil has a Java API.  Examples that call Daffodil are in the github OpenDFDL examples repository which you can get via 

git clone https://github.com/OpenDFDL/examples.git

'This contains a helloWorld-type simple application and perhaps other examples. You need sbt (Simple Build Tool) the specific version is listed at Tested/Verified Tool Versions.

to build it, and this will pull daffodil's jars and everything else they depend on to your machine automatically. If you have sbt then just typing the command "sbt run" in the root directory where you cloned this will do all of it. Look in the src/main/java/HelloWorld.java file to see how the Java API works.

Create a Project for Your Schema

Please follow the pattern described in Standard DFDL Schema Project Layout. This makes testing and packaging the schema very easy, insures no name conflicts on classpaths if multiple schemas are used together, and so forth.

 

  • No labels