The file GEDDCOM.io/yaml-schema.yaml
contains a JSON Schema in YAML format they checks most (but not all) of the requirements of the YAML format used to specify GEDCOM structures.
Constraints not checked are generally non-syntactic, such as the requirement that some URIs identify structure types or the like.
A Python 3 script is provided as validator.py
that uses the schema to check YAML files named on the command line or piped into stdin.
It depends on jsonschema and pyyaml.
Similar scripts in other languages are welcome.
The schema should also be compatible with most other JSON schema validators, of which there are many.
A Python 3 script named syncstandard.py
is provided for pulling tag definitions from the extracted_files of the GEDCOM repo.
It is expected that this script will only be needed or used by individuals tasked with releasing a new version of the standard.
The script makeTSV.py
reads the YAML files in the repository
and generates several summary TSV files in the ../generated_files
directory.
The script makeJSON.py
reads the YAML files in the repository
and generates a JSON file suitable for driving validation of GEDCOM 7 datasets in the ../generated_files
directory.