GreenfishK commented on issue #1744: URL: https://github.com/apache/jena/issues/1744#issuecomment-1418642723
The use case is timestamped-based versioning of RDF datasets using RDF-star and SPARQL-star. As part of my research, I made an API that automatically transformas any SPARQL update statement or SPARQL query into an RDF-star triple or query. The RDF-star triples look like this: ```<< << <http://example.com/s> <http://example.com/p> "o">> :valid_from "2023-02-06T12:00:00""^^xsd:datetime >> :valid_until "9999-12-31T12:00:00"^^xsd:datetime .``` Using two nesting levels, I can attach a creation and deletion timestamp. I also tried the more intuitive and semantically correct approach: ```<< <http://example.com/s> <http://example.com/p> "o">> :valid_from "2023-02-06T12:00:00""^^xsd:datetime << <http://example.com/s> <http://example.com/p> "o">> :valid_until "9999-12-31T12:00:00"^^xsd:datetime .``` ``` However, in this one the datasets are bigger due to the redundancy (repetition of the data triple) and the query performance is worse in GraphDB 9.3 and JenaTDB 4.3.2. So I decided to go with the nested quoted triple. More infos: API: https://github.com/GreenfishK/starvers Evaluation of the RDF-star and timestamp-based versioning approach: https://github.com/GreenfishK/starvers_eval (still ongoing) Paper submitted to SWJ: http://semantic-web-journal.org/content/starvers-versioning-and-timestamping-rdf-data-means-rdf-approach-based-annotated-triples (major revision going to be submitted soon) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
