On 2/5/14 2:57 PM, Kingsley Idehen wrote:
On 2/5/14 2:17 PM, Kevin wrote:Virtuoso Fans,For a year I have really needed Virtuoso to provide a unique integer ID for each RDF triple. In other words, I would like Virtuoso to store SPOGI (Like AllegroGraph) instead of just SPOG. Often people question if I really need the index. It is essentially for numerous reasons including storing unique information (meta-data) about each triple (i.e. time-stamp) and allowing full utilization of the Yago2 database. The Yago2 <http://www2007.org/papers/paper391.pdf> database (Search "fact identifier") and AllegroGraph <http://franz.com/agraph/support/documentation/current/triple-index.html> triple store have embraced this meta data concept, as it unleashes some powerful concepts. If a Virtuoso trick can be found to provide said index I think a complete Semantic Web solution will be born.My current approach is to have unique named graphs on each triple. While this solution partially works it hurts performance and it feels like an ugly hack. In addition it makes it hard to utilize the graph names in a coarse grain manner as intended. You can group graphs to achieve larger categories, but isn't a million graphs in a GraphGroup impractical?Can someone with internal Virtuoso knowledge devise a way to get a unique integer ID per triple? Perhaps a way exist to access the row-id of the underlying RDB? Maybe the indexing scheme be augmented in any way to yield the index I am seeking? As a crazy last resort can the Virtuoso Open Source code base be altered to provide the index ID?Regards, KevinKevin,You are asking for reification of triples stored in Virtuoso. Nothing stops you generating the reified triples right now, bar processing time.All you do is forward-chain over all the triples creating new relations that associate each triple with an rdf:Statement [1] i.e., a rdf:subject [2], rdf:predicate [3], and rdf:object [4] relation per triple.Today, you can LOAD YAGO's reified triples into Virtuoso, we tested that a long time ago. We even do that with Uniprot [5].Links:1. http://www.w3.org/TR/rdf-schema/#ch_statement -- about RDF Statement entity type 2. http://www.w3.org/TR/rdf-schema/#ch_subject -- about RDF subject relation 3. http://www.w3.org/TR/rdf-schema/#ch_predicate -- about RDF predicate relation 4. http://www.w3.org/TR/rdf-schema/#ch_object -- about RDF object relation. 5. http://bit.ly/W8MYMj -- Uniprot reified statements example (using the 50 billion+ RDF statements LOD Cloud Cache).Kingsley
Kevin,In regards to #5 you can use: http://lod.openlinksw.com/c/F35JIZE. The original's timeout setting is to low, this one is set to 60 seconds.
-- Regards, Kingsley Idehen Founder & CEO OpenLink Software Company Web: http://www.openlinksw.com Personal Weblog: http://www.openlinksw.com/blog/~kidehen Twitter Profile: https://twitter.com/kidehen Google+ Profile: https://plus.google.com/+KingsleyIdehen/about LinkedIn Profile: http://www.linkedin.com/in/kidehen
smime.p7s
Description: S/MIME Cryptographic Signature
------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
_______________________________________________ Virtuoso-users mailing list Virtuoso-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/virtuoso-users