This repository is a Giter8 template for Apache Daffodil DFDL schemas.
Install SBT and run the following command:
sbt new apache/daffodil-schema.g8
This command prompts for various properties and creates a bare-bones directory structure that follows the recommended DFDL Schema Project Layout. This includes git and sbt configuration files, a basic DFDL schema file, and TDML and test files.
The following properties are used to configure the generated DFDL schema project:
- name
- the name of the file format, for example "jpeg" or "png"
- extension
- extension used for test files, for example "dat", or "png"
- package
- the package namespace, for example "com.example"
- namespaced
- if 'no', uses a flattened directory structure with no package directories and mixed source and resource files in src/ and test/ directories (default)
- if 'yes', uses a deep directory structure with package directories and separate directories for source and resource files. This should only be used when namespacing is required to avoid file name ambiguities.
- daffodil_version
- the version of Apache Daffodil to add as a dependency, defaults to the latest release on maven central
This repository uses the SBT Giter8 plugin to perform a single basic sanity check of template generation. To execute this check, run:
sbt test
This command generates a new project using the default.properties
template
values and then runs the SBT Scripted commands defined in src/test/g8/test
to validate correct generation.
Apache Daffodil DFDL Schema Template is licensed under the Apache License, v2.0.