A native implementation of the RDF Dataset Normalization Algorithm for rdf-canonize and Node.js.
...
Currently this module is intended to be used via rdf-canonize but is not a direct dependency so must be explicitly installed.
npm install rdf-canonize
npm install rdf-canonize-native
const canonize = require('rdf-canonize');
npm install rdf-canonize
Use your favorite technology to load node_modules/dist/rdf-canonize.min.js
.
Various NPM proxy CDN sites offer direct access to NPM files.
const dataset = {
// ...
};
// canonize a data set with a particular algorithm using callback
canonize.canonize(dataset, {algorithm: 'URDNA2015'}, function(err, canonical) {
// ...
});
// canonize a data set with a particular algorithm using async/await
const canonical = canonize.canonize(dataset, {algorithm: 'URDNA2015'});
- rdf-canonize: The JavaScript implementation of the RDF Dataset Normalization Algorithm.
- jsonld.js: An implementation of the JSON-LD specification.
This library includes a sample testing utility which may be used to verify that changes to the processor maintain the correct output.
The test suite is included in an external repository:
https://github.com/json-ld/normalization
This should be a sibling directory of the rdf-canonize directory or in a
test-suites
dir. To clone shallow copies into the test-suites
dir you can
use the following:
npm run fetch-test-suite
Node.js tests can be run with a simple command:
npm test
If you installed the test suites elsewhere, or wish to run other tests, use
the TEST_DIR
environment var:
TEST_DIR="/tmp/tests" npm test
To generate earl reports:
# generate the earl report for node.js
EARL=earl-node.jsonld npm test
See docs in the benchmark README.
The source code for this library is available at:
https://github.com/digitalbazaar/rdf-canonize-native
Commercial support for this library is available upon request from Digital Bazaar: support@digitalbazaar.com