This module provides a command line tool jsonld
to manipulate JSON-LD
data. It is written in JavaScript for Node.js and uses the jsonld.js
and jsonld-request libraries. Inputs can be from stdin, URLs, or files.
npm install -g jsonld-cli
npx jsonld-cli ...
The jsonld
command line tool can be used to:
- Check JSON-LD for various problematic data.
- Transform JSON-LD to compact, expanded, flattened, or canonized form.
- Transform RDFa to JSON-LD.
- Canonize JSON-LD/RDFa Datasets to N-Quads.
To show tool options, a list of commands, or command options:
jsonld --help
jsonld COMMAND --help
To check JSON-LD for some common problems:
jsonld lint "https://example.com/data.json"
To compact a document on the Web using a JSON-LD context published on the Web:
jsonld compact -c "https://w3id.org/payswarm/v1" "http://recipes.payswarm.com/?p=10554"
The command above will read in a PaySwarm Asset and Listing in RDFa 1.0 format, convert it to JSON-LD expanded form, compact it using the 'https://w3id.org/payswarm/v1' context, and dump it out to the console in compacted form.
jsonld canonize -q "http://recipes.payswarm.com/?p=10554"
The command above will read in a PaySwarm Asset and Listing in RDFa 1.0 format, canonize the data using the RDF Dataset canonicalization algorithm, and then dump the output to canonized N-Quads format. The N-Quads can then be processed via SHA-256, or similar algorithm, to get a deterministic hash of the contents of the Dataset.
- This tool is able to read stdin, local files, and remote resources.
- Loading of remote resources may reveal aspects of the data being processed.
- Input data may recursively load remote resources.
- Input data may load arbitrary local files if allowed.
- Processing data that uses untrusted remote resources could result in unexpected output.
Commercial support for this library is available upon request from Digital Bazaar: support@digitalbazaar.com