sparql - Sesame not inferencing owl:sameAs -


i have data on vaccines in sesame triplestore. same store, added additional data vaccines dbpedia.

<http://dbpedia.org/resource/rotavirus_vaccine>      dbpedia2:routesofadministration "oral"@en 

to specify particular vaccine in native data same entity subject of imported data dbpedia, inserted owl:sameas statement linking 2 entities.

my_ns:rota owl:sameas <http://dbpedia.org/resource/rotavirus_vaccine> . 

though single triple has been added, find no additional inferencing. instance, want query give me route of administration of vaccine in native data inferencing property of vaccine entity in dbpedia:

prefix : <http://dbpedia.org/resource/> prefix dbpedia2: <http://dbpedia.org/property/> prefix my_ns: <http://purl.org/net/ontology/my_ns/> select ?roa  {my_ns:rota dbpedia2:routesofadministration ?roa} 

at present, executing query doesn't yield results. i'd system infer following output of query above:

my_ns:rota dbpedia2:routesofadministration "oral"@en . 

i installed graphdb-lite(owlim) replacing war files , verified owl:sameas works executing query on dbpedia.

the sesame in-memory , native stores not support owl reasoning out of box. offer (optional) support rdfs reasoning (so understanding rdfs:subclassof etc), can enabled @ repository creation time (in workbench, dropdown option 'memory/native store rdf schema'). however, owl:sameas of course not part of rdfs reasoning.

sesame supports custom graph query reasoner on top of memory or native stores. custom reasoner can configured own inference rule, formulated combination of 2 sparql construct queries: 'rule' query expresses actual inference rule, , 'match' query used maintenance on inferred statements when store updated. more explanation on how set can found in section on repository creation in programming sesame. option in workbench "memory/native store custom graph query inference".

in case of owl:sameas, custom rule support this:

construct { ?s1 ?p1 ?o1 . ?o1 ?p2 ?o3 }  {      ?o1 owl:sameas ?o2 .     optional { ?s1 ?p1 ?o2 . }     optional { ?o2 ?p2 ?o3 . } } 

if goal purely have owl:sameas reasoning, might simple way enable it. however, more comprehensive owl reasoning support, custom reasoner not sufficiently powerful or scalable. instead, should use sesame backend store has built-in support it, such ontotext graphdb (formerly known owlim).


Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -