INCATools / semantic-sql

SQL and SQLite builds of OWL ontologies
https://incatools.github.io/semantic-sql/
BSD 3-Clause "New" or "Revised" License
37 stars 3 forks source link

add provenance columns #2

Closed wdduncan closed 3 years ago

wdduncan commented 3 years ago

In the main table, you may want to add columns track when the row was added and modified.

cmungall commented 3 years ago

I think this would be a request on the rdftab.rs tracker, since it handles bulkloading

How would this track deletes?

There are various ways of handling this in a RDBMS, e.g. shadow audit tables. This is how we did it in Chado: http://gmod.org/wiki/Chado_Audit_Module

or there could be a very general history table

I think having some kind of metadata about updates will be useful for our async reasoner strategy

closing for now, feel free to continue here: https://github.com/cmungall/semantic-sql/discussions

jamesaoverton commented 3 years ago

I've thought about this for a long time. I don't think it's practical to manage history while also managing blank nodes everywhere. But the Thick Triples idea my team is not implementing will eliminate most blank nodes, and then I plan to experiment with the approach taken by Datomic and/or TerminusDB, to add a transaction ID and an assert/retract boolean. Then we'll see if we can make practical use of diffs/deltas in triples.