SPARQL DESCRIBE查询来获取有关链接对象的数据(sparql DESCRIBE quer

2019-10-20 20:40发布

我已经定义了一个书籍类的RDF。 另一个RDF类描述人。 书类包含链接预定情况下,人的实例authoredBy场。

本书的性质

Book -Id -name -authoredBy

Person -id -firstName -LastName -designation

对于检索书的属性,我用下面的SPARQL查询

DESCRIBE书WHERE {预定RDF:图书;?

}

我能够检索所有属于使用DESCRIBE即谓语,主体与客体,以预订的属性。 然而,当涉及到authoredBy场,上面的查询返回我只是笔者的URI。

我希望看到的是属于创作以及所有谓词(即它的名字,姓氏)。 可以在上述DESCRIBE查询进行修改,以实现这一目标?

Answer 1:

所有属性属于预订使用DESCRIBE

属性不“属于”的事情。 OWL是不是一个面向对象的编程语言。


但是,你当然可以得到的书和其作者的属性和值。 一个描述查询的特定结果的实现依赖。 即使您正在使用的实现为您提供了一定的成绩,但也不能保证,其他的实现会给你的。 它的安全使用构造查询。 对你来说,这听起来像你想

construct where { 
  ?book a ex:Book ;
        ?p ?o ;
        ex:authoredBy* ?author .
  ?author ?ap ?ao .
}

这将返回所有所有的书和其作者的三元组的图形。


我用下面的SPARQL查询

 DESCRIBE ?book WHERE { ?book a rdf:Book ; } 

需要注意的是,你真的不应该定义你自己的条件在RDF命名空间(例如,你有RDF:书 )。 你应该使用一些其他的命名空间为自己的类。



文章来源: sparql DESCRIBE query to get data about linked objects