rdf-canonize
rdf-canonize copied to clipboard
An implementation of the RDF Dataset Normalization Algorithm in JavaScript.
- Change clones from always-copy to copy-on-write. - Depending on shape of data, this can reduce `Map` copies by ~90%. However, in some data patterns, these will have very few...
We do not need to serialize and hash quads for a blank node when there is only one. Instead, immediately issue a canonical identifier for it and skip the hashing.
The async version of URDNA2015 doesn't take full advantage of multiple processes / thread pooling to process hashes. It was converted some time ago from non-promises to promises and this...
Currently fails on React Native (since that environment has neither node's crypto nor the browser's `crypto.subtle.`. Instead, convert to use `isomorphic-webcrypto` lib, which also has React Native support - https://github.com/kevlened/isomorphic-webcrypto#react-native.
When processing the input quads (in order) at the end of the URDNA2015 algorithm -- where N-Quads are created with the canonized blank node labels, add a property to each...
Other algorithm step numbers may also need updating.
See comments here: https://github.com/w3c/rch-rdc/pull/17#discussion_r1002571702
If deep recursion occurs when determining the canonical labels for blank nodes, we should bail out by default instead of continuing until all blank nodes receive their canonical labels. Since...
The `IdentifierIssuer` currently uses a counter to ensure that e.g. blank nodes are assigned a unique id when flattening a JSON-LD file in `jsonld.js`. This does not work very well...
This integration testing is being disable since rdf-canonize-native is not building on node 12+. See: https://github.com/digitalbazaar/rdf-canonize-native/issues/9 Once this issue is fixed, integration tests should be re-enabled here. This can be...