JSKOS Command Line Interface
Command Line Applications to process JSKOS data format.
This repository contains command client applications for working with the JSKOS data format for knowledge organization systems. The applications are basically wrappers around jskos-validate and jskos-tools.
Table of Contents
Install
Install globally to provide commands jskos-validate
and jskos-convert
:
npm install -g jskos-cli
Usage
jskos-validate
Validate a set of ndjson files in JSKOS format.
Usage: jskos-validate [options] [type] files...
Options:
-V, --version output the version number
-q, --quiet suppress status messages
--list-types list JSKOS object types
-v, --verbose show error messages
-u, --unknown allow unknown fields
-h, --help output usage information
Examples:
$ jskos-validate -v concepts concepts.ndjson
$ jskos-validate -u mappings mappings.ndjson
$ jskos-validate schemes.ndjson concepts.ndjson
Validation result is emitted in TAP format. Errors are reported as diagnostic lines with record number. If JSKOS is read from standard input, only invalid records are reported. Exit code is the number of errors (up to 100).
jskos-convert
Convert between JSKOS and other formats (by now only CSV and RDF/N-Triples).
Usage: jskos-convert [options] [type] [files...]
Options:
-V, --version output the version number
-q, --quiet suppress status messages
--list-types list JSKOS object types
-f, --from <format> input format (ndjson or csv)
-t, --to <format> output format (ndjson, csv, nt)
-c, --clean cleanup input data
-v, --validate validate and omit invalid records
-l, --language <lang> include labels (use '-' for any language)
-r, --registry <file> registry file with schemes, types... to look up
-s, --scheme <uri|notation|file> concept scheme to convert concepts or mappings
-d, --destination <uri|notation|file> target scheme to convert mappings
-p, --partof <uri> concordance URI
-m, --marktop explicitly mark concepts without broader as top concepts
-h, --help display help for command
Examples:
$ jskos-convert mappings -t csv mappings.ndjson
$ jskos-convert concepts -r registry.json -s example http://example.org/jskos.csv
Concepts in CSV format can be specified with:
-
notation
to build URIs from -
prefLabel
andscopeNote
(if a language is specified) -
prefLabel@xx
andscopeNote@xx
with explicit language code(s)xx
-
level
and/orbroaderNotation
for hierarchies. CSV output usesbroaderNotation
.
Multi-hierarchies are not supported when converting from and/or to CSV.
Mappings in CSV format can be specified with:
fromNotation
-
fromLabel
(if a language is specified, ignored when converting from CSV) toNotation
-
toLabel
(if a language is specified, ignored when converting from CSV) type
-
creator
(ignored when converting from CSV)
1-to-n mappings are not supported yet.
Maintainers
Contributing
Contributions are welcome! See CONTRIBUTING.md for details!
License
MIT (c) 2020 Verbundzentrale des GBV (VZG)