Skip to content

HiltonRoscoe/CdfTools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Common Data Format Tools (.NET version)

This project provides tooling to support implementation of the NIST 1500 series common data formats. Producers or consumers of a NIST 1500 file can validate that their files conform to specification schemas. It is written in .NET Core, and works on Windows, Linux and Mac OS X.

Features:

  • XML Schema (XSD) Validation
  • JSON Schema Validation
  • Large File Support

CDfTools is a command line interface tool. Basic familiarity with the command line is required.

Running CdfTools

$ CdfTools

Common Data Format Tools

Usage: cdftools [options] [command]

Options:
  --hlp         Show help information
  -v|--verbose  Verbose

Commands:
  validate

Run 'cdftools [command] --hlp' for more information about a command.

Validating Files

CdfTools can validate JSON and XML instances against JSON and XML schema files. The syntax is of the form:

CdfTools validate --schema '{input schema}' --input '{input schema instance}'

CdfTools automatically determines whether to invoke XSD or JSON Schema validation based on the file extension of the input. An XML file ending in .xml or a JSON file ending in .json is required.

Schema files are not included with CdfTools. Please visit the NIST Voting Repository and download the required json or xml file.

Obtaining CdfTools

CdfTools is available in binary form from the releases page of this GitHub repository. It is available in two forms:

  • Framework-dependent (fdd), universal binary that requires .NET Core 2.X to be installed on the target host.
  • Self-contained (scd), has no external dependencies, but is platform specific. Self-contained deployments are only available for x64 macOS or Windows targets.