- From: Pierre-Antoine Champin <pierre-antoine@w3.org>
- Date: Mon, 21 Apr 2025 16:58:10 +0200
- To: public-r2c2@w3.org
Dear all, I submitted a new work item some time ago https://github.com/w3c-cg/r2c2/pull/6 which has not received much feedback... I realize that maybe I should have advertised it on this mailing list as well, which is now done. Also, in order to make the discussion a little more concrete, I populated this PR with a first draft of how I imagine this crate. More specifically: - it contains the following traits: Subject, Predicate, Object, GraphName, Triple and Quad, which all implementations of the corresponding RDF concepts would be expected to implement ; implementing these traits is lightweight (only one required method) and relatively straightforward (see below). - in order to check the "implementability" and "usability" of these traits, I also included two "proof-of-concept" implementation of them, for oxrdf and for rdf_types. This confirmed the good properties listed above (lightweight and straightforward), despite some minor impedance mismatches. Note that these proof-of-concept implementations are not expected to be shipped with the R2C2 crate, they are only here to help us discuss and evaluate the design of the crate. - I also wrote some unit tests that check that the proof-of-concepts implementations work correctly and provide interoperability, by checking the following round trips: - oxrdf -> R2C2 -> oxrdf - rdf_types -> R2C2 -> rdf_types - rdf_types -> R2C2 -> oxrdf -> RC2C -> rdf_types - oxrdf -> R2C2 -> rdf_types -> R2C2 -> oxrdf Keep in mind that this is a first step only. I do not consider anything in the proposed code to be final, just a base for discussion. And I believe that discussing on this base and iteratively improving it will be easier than discussing in a void. So unless you think this is going in a totally wrong direction, and would rather start afresh (which I'm also ready to hear 😉), please approve the PR. pa
Received on Monday, 21 April 2025 14:58:14 UTC