pchampin / sophia_rs

Sophia: a Rust toolkit for RDF and Linked Data
Apache License 2.0
236 stars 25 forks source link

Add HDT serializer #20

Open pchampin opened 4 years ago

pchampin commented 4 years ago

A serializer implementation for the HDT would be nice.

KonradHoeffner commented 3 months ago

As HDT is commonly used for very large graphs, which may be hard to fit into memory when using LightGraph or FastGraph, HdtGraph from https://github.com/konradhoeffner/hdt could be a good candidate, however the whole library is read-only at the moment. When I find the time I will try to investigate, how much effort it would require to add a serializer and mutable graphs, however my suspicion is that it would be a lot. Modifying a graph in compressed form may not even make sense, so maybe it should indeed be a serializer that can work with any Sophia graph and not HdtGraph.

pchampin commented 3 months ago

Modifying a graph in compressed form may not even make sense

I agree. HDT is not designed for allowing mutations, AFAIK.

But the idea of of an HDT serializer is not related to allowing mutation to an HDT graph, IMO. In this context, HDT is to be considered as any other concrete syntax (like RDF/XML or N-Triples), i.e. one possible way to encode a (snapshot of a) graph into a file. There is no expectation from the serializer that it maintain a consistency between the graph and the file if the former is mutated after the serialization.