rdfjs / N3.js

Lightning fast, spec-compatible, streaming RDF for JavaScript
http://rdf.js.org/N3.js/
Other
676 stars 127 forks source link

Reasoning #292

Closed jeswr closed 2 years ago

jeswr commented 2 years ago

Superceds #291

This is a WIP PR to add RL reasoning support to N3.js.

Part of my reasoning for doing this is to see what the performance difference between reasoning via something like https://github.com/comunica/comunica-feature-reasoning/ vs. reasoning directly using the store internals is.

Currently, this implements a naive algorithm of repeatedly applying rules until no new results are available.

Currently, this can apply RDFS rules over the union of timbl's profile card, and the foaf ontology (~1_000 quads) in 400ms (DELL XPS 15, 32GB), generating ~9_000 quads.

I expect that once I implement smarter forwards chaining this will be <200ms