2011-12-20 4 views
0

Я пытался использовать следующий пример от http://docs.openlinksw.com/virtuoso/rdfsparqlrule.html.
Загруженные данные в графе:virtuoso rdfs rule set

ttlp ('<http://localhost:8890/dataspace> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#Space> . 
<http://localhost:8890/dataspace/test2/weblog/test2tWeblog> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/types#Weblog> . 
<http://localhost:8890/dataspace/discussion/oWiki-test1Wiki> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/types#MessageBoard> . 
<http://localhost:8890/dataspace> <http://rdfs.org/sioc/ns#link> <http://localhost:8890/ods> . 
<http://localhost:8890/dataspace/test2/weblog/test2tWeblog> <http://rdfs.org/sioc/ns#link> <http://localhost:8890/dataspace/test2/weblog/test2tWeblog> . 
<http://localhost:8890/dataspace/discussion/oWiki-test1Wiki> <http://rdfs.org/sioc/ns#link> <http://localhost:8890/dataspace/discussion/oWiki-test1Wiki> . 
', '', 'http://localhost:8890/test'); 

Assertions о подклассов и подсвойств:

ttlp (' @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . 
<http://rdfs.org/sioc/ns#Space> rdfs:subClassOf <http://www.w3.org/2000/01/rdf-schema#Resource> . 
<http://rdfs.org/sioc/ns#Container> rdfs:subClassOf <http://rdfs.org/sioc/ns#Space> . 
<http://rdfs.org/sioc/ns#Forum> rdfs:subClassOf <http://rdfs.org/sioc/ns#Container> . 
<http://rdfs.org/sioc/types#Weblog> rdfs:subClassOf <http://rdfs.org/sioc/ns#Forum> . 
<http://rdfs.org/sioc/types#MessageBoard> rdfs:subClassOf <http://rdfs.org/sioc/ns#Forum> . 
<http://rdfs.org/sioc/ns#link> rdfs:subPropertyOf <http://rdfs.org/sioc/ns> . ', 
'', 'http://localhost:8890/schema/test'); 

Определить правила:

rdfs_rule_set ('http://localhost:8890/schema/property_rules1', 'http://localhost:8890/schema/test'); 

выполнить запрос:

define input:inference "http://localhost:8890/schema/property_rules1" 
SELECT ?s FROM <http://localhost:8890/test> 
WHERE {?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#Space> }; 

Это дает мне всего 1 результат подряд - http://localhost:8890/dataspace.
Хотя я полагаю, чтобы получить 3 строки:

  • http://localhost:8890/dataspace/test2/weblog/test2tWeblog
  • http://localhost:8890/dataspace/discussion/oWiki-test1Wiki
  • http://localhost:8890/dataspace

Может кто-нибудь пожалуйста, скажите мне, что я делаю неправильно здесь. Должно ли dba быть предоставлено любое разрешение на rdfs_rule_set? Большое спасибо.

ответ

0

Это известная проблема в некоторых старых сборках Virtuoso ...

Таким образом, можно подробно, что сборка Виртуоз вы используете и на какой операционной системе?

(Я считаю, что этот выпуск был зафиксирован в Virtuoso с открытым исходным кодом 6.1.4 и Commercial 6.3 ...)

Смежные вопросы