Skip to content

apache/daffodil-schema.g8

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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 and most recent best practices from the DFDL Schema Style Guide. This includes git and sbt configuration files, basic DFDL schema files, and TDML and test files.

Once you have generated your schema directory, typing sbt test will work and run a TDML test. Of course, the initial DFDL schema has no fields, the test data file is empty, and the expected XML Infoset file is an empty element. But, it's working and you can keep it working as you fill in the details of the schema and add tests.

The schema project is set up to use the daffodil-sbt plugin for SBT as part of the SBT build and test. This provides capabilities to compile your DFDL schema into binary form and package it for distribution. You can read more about daffodil-sbt here: Apache daffodil-sbt Plugin

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.

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

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages