pchampin / sophia_rs

Sophia: a Rust toolkit for RDF and Linked Data
Other
210 stars 23 forks source link

Provide a generic implementation of the RDF test suite #72

Closed MattesWhite closed 7 months ago

MattesWhite commented 4 years ago

sophia provides traits for parsers and graphs. Accordingly, it should be possible to write a function that automatically runs the RDF test suite for the given format.

Following steps are required to do so:

Except for the isomorphism everything can be feature flagged as it's normally not used.

Having the test suite available would make it easy for implementors to check their crates. In addition, we could analyse crates that have a sophia-wrapper and/or implement sophia::parser::TripleParser/QuadParser, e.g. rio.

Tpt commented 4 years ago

I have written for Oxigraph a better version of the isomorphism algorithm than the one provided in Rio.

This version does not support named graphs but uses iterative hashing to try to make easier to check when there are a lot of connected blank nodes.

Feel free to reuse it, I spent more than a day on it, it would be very nice to make it useful outside of Oxigraph. Adding back named graphs support should not be hard.

MattesWhite commented 4 years ago

I realized that the RDF test suite is rather a use-case of sophia than a required part of the library. Therefore, I decided that I'll publish the test suite as an own crate. Accordingly, I suppose to close this issue.

Once the next version of sophia is live I'll publish rdf-testsuite (if I'm ready by that time :sweat_smile:). Maybe we could add a affiliated crates section to sophia's README?

pchampin commented 7 months ago

Closing this issue, as