Skip to content

stevedlawrence/daffodil-schema.g8

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apache Daffodil DFDL Schema Template

This repository is a Giter8 template for Apache Daffodil DFDL schemas.

Usage

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.

Properties

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

Testing

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.

License

Apache Daffodil DFDL Schema Template is licensed under the Apache License, v2.0.

About

Apache Daffodil DFDL Schema Template

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Scala 100.0%