On Saturday, March 12, 2022 at 11:28:32 AM UTC Nicholas Car wrote:

> Any feedback on this format or on RDF text files and version control in 
> general would be great.
>

Although It’s not advertised as such, the architecture of the BerkeleyDB 
RDFLib Store implementation preserves the order in which triples are added 
(as a a side-effect of key indexing) and so all of the RDFLib Stores based 
on key-value back-ends (BerkelyDB, LevelDB, SQLiteLSM) provide reliably 
repeatable re-serialization suitable for unambitious efforts. I've not yet 
checked but I imagine that the corresponding (again, index-using) 
AbstractSQL-based RDFLib Stores (atm, only rdflib-sqlalchemy) also exhibit 
the same repeatable serialization property.

Otherwise, if you're just interested in manageable diffs of large but 
straightforward graphs, serializing as ntriples/nquads and sorting the 
serialization is also a viable strategy, I've found 
<https://github.com/DOACC/individuals/commit/1515db20e936a085d36a40210cb63237b6f2e837>.
 
However this approach is unsuitable for graphs containing blank nodes as 
BNode serialization *will* differ and afaik, the only mooted solution to 
this is Digital Bazaar's URDNA2015 RDF Dataset Canonicalization 
<https://json-ld.github.io/rdf-dataset-canonicalization/spec/> proposal, 
also now a topic in the RDFLib Github discussions section 
<https://github.com/RDFLib/rdflib/discussions/1545>


-- 
http://github.com/RDFLib
--- 
You received this message because you are subscribed to the Google Groups 
"rdflib-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rdflib-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rdflib-dev/f582793a-e22d-404c-9e6d-f3d901a7e76cn%40googlegroups.com.

Reply via email to