Thompsonbry.systap added a comment. You do not need to use the RDR interchange syntax or the RDR syntax for SPARQL query to take advantage of the RDR support inside of BlazeGraph. All you need to do is serialize your data as RDF and use RDF reification to interchange statements modeling metadata about other statements. Any database that is intelligent about how it handles reification can then index your data efficiently - and they can using the nesting trick that we use in BlazeGraph, a different approach based on column-wise storage that we use in MapGraph, or some entirely different physical schema. In fact, you should not care how the database is indexing the data - that is the whole point of having a physical/logical abstraction and a declarative query language. The database gets to index the data however you choose and you rely on it to process your queries efficiently. BlazeGraph delivers exactly this for link attributes and more generally for nested statements about statements. However, the "semantics" are precisely those of RDF. It is just that the indexing is more efficient. And that we provide nicer interchange syntax and query syntax for accessing link attributes and statements about statements.
RDF* and SPARQL* are formalism that makes it possible for the database to choose a different physical schema to represent link attributes and (more generally) statements about statements. The database can (and in our case does) accept reified RDF triple models and automatically indexes them in a more efficient manner. It can also accept queries using reification rather than the RDR syntax and they are answered just as efficiently as those using the RDR syntax. The relevant papers outlining the issues and the formal reconciliation with RDF Reification are listed below. - RDF* (Foundations of an Alternative Approach to Reification in RDF) - http://arxiv.org/pdf/1406.3399.pdf - Reconciliation of RDF* and Property Graphs - http://arxiv.org/abs/1409.3288 - Reification Done Right - http://www.blazegraph.com/whitepapers/reifSPARQL.pdf I would be happy to bring Olaf into this conversation if you have any questions about the formalism. But the whole point is that it is exactly equivalent to RDF. Plus syntactic sugar and rules for interpretation that sugar. You can use the mechanisms with or without that sugar. Thanks, Bryan TASK DETAIL https://phabricator.wikimedia.org/T90952 REPLY HANDLER ACTIONS Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>. EMAIL PREFERENCES https://phabricator.wikimedia.org/settings/panel/emailpreferences/ To: Thompsonbry.systap Cc: Haasepeter, Thompsonbry.systap, Beebs.systap, Manybubbles, Aklapper, Smalyshev, jkroll, Wikidata-bugs, Jdouglas, aude, GWicke, daniel, JanZerebecki _______________________________________________ Wikidata-bugs mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs
