Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sparql =>_Sparql_Owl_Jena - Fatal编程技术网

Sparql =>

Sparql =>,sparql,owl,jena,Sparql,Owl,Jena,因为我修复了它,它似乎可以工作。 我的错是没有仔细检查实际的源代码。您必须为ho:定义一个精确的URI前缀,然后告诉Protegé(有一个名称空间面板,定义与本体前缀相同的URI),这样,当您在Protegé中定义GoodPerson时,它假定您的意思是http://www.flatlandfarm.de/fhtw/ontologies/2010/5/22/helloOwl.owl#GoodPerson,这与ho:GoodPerson相同,前提是您对两者使用了相同的URI前缀 如果不这样做,Pr

因为我修复了它,它似乎可以工作。

我的错是没有仔细检查实际的源代码。

您必须为
ho:
定义一个精确的URI前缀,然后告诉Protegé(有一个名称空间面板,定义与本体前缀相同的URI),这样,当您在Protegé中定义GoodPerson时,它假定您的意思是
http://www.flatlandfarm.de/fhtw/ontologies/2010/5/22/helloOwl.owl#GoodPerson
,这与
ho:GoodPerson
相同,前提是您对两者使用了相同的URI前缀

如果不这样做,Protegé(或其他组件,如web服务器)将使用文件名(或者更糟糕的是,类似于file:///home/user/...).

请记住,本体的URI在技术上不同于用于与本体本身关联的实体(类、属性等)的URI前缀,
ho:
只是一个具有局部含义的快捷方式,这取决于您在文件或SPARQL查询等文档中定义的内容


本体URI也可以不同于从中获取本体文件的URL,尽管使它们相同是好的。通常,您需要在Apache中使用URL重写来实现这一点,但有时本体文件没有物理发布,因为本体加载到SPARQL端点,其URI通过端点本身的帮助解析为RDF文档,通过将本体URI重写为发出descripe语句的SPARQL请求。同样的技巧也可以用于解析任何其他URI(即,本体实例化数据),只要相关数据可以从SPARQL端点访问(即,在您的三重存储中)。

您必须为
ho:
定义一个精确的URI前缀,然后告诉Protegé(有一个名称空间面板,并定义与本体前缀相同的URI),因此,当您在Protegé中定义GoodPerson时,它假定您的意思是
http://www.flatlandfarm.de/fhtw/ontologies/2010/5/22/helloOwl.owl#GoodPerson
,这与
ho:GoodPerson
相同,前提是您对两者使用了相同的URI前缀

如果不这样做,Protegé(或其他组件,如web服务器)将使用文件名(或者更糟糕的是,类似于file:///home/user/...)

请记住,本体的URI在技术上不同于用于与本体本身关联的实体(类、属性等)的URI前缀,
ho:
只是一个具有局部含义的快捷方式,这取决于您在文件或SPARQL查询等文档中定义的内容

本体URI也可以不同于从中获取本体文件的URL,尽管将它们设置为相同是很好的。通常,您需要在Apache中使用URL重写来实现这一点,但有时该本体文件不会物理发布,因为本体加载到SPARQL端点中,其URI为res通过端点本身的帮助,通过将本体URI重写为发出描述语句的SPARQL请求来解析RDF文档。只要可以从SPARQL端点访问相关数据(即,在您的三重存储中),就可以使用相同的技巧解析任何其他URI(即,您的本体实例化数据)

queryString = "PREFIX foaf:  <http://xmlns.com/foaf/0.1/>"+
"PREFIX ho: <http://www.flatlandfarm.de/fhtw/ontologies/2010/5/22/helloOwl.owl#>" +
"SELECT ?name ?person ?test ?group "+
"WHERE { ?person foaf:name ?name ; "+
"         a ho:GoodPerson ; "+
"         ho:isMemberOf ?group ; "+
"}";
xmlns="http://xyz.com/helloOwl.owl" =>  xmlns="http://xyz.com/helloOwlInferred.owl"
xml:base="http://xyz.com/helloOwl.owl" =>  xml:base="http://xyz.com/helloOwlInferred.owl"

xmlns:helloOwl="http://xyz.com/helloOwl.owl" =>  xml:base="http://xyz.com/helloOwl.owl"
<!ENTITY helloOwl "http://wxyz.com/helloOwl.owl#" > => <!ENTITY helloOwl "http://wxyz.com/helloOwl.owl#" >