Rdf sparql描述获取链接对象数据的查询
我已经为书籍定义了一个rdf类。 另一个用于描述人的rdf类。 Book类包含authoredBy字段,该字段将Book实例链接到people实例 书的性质Rdf sparql描述获取链接对象数据的查询,rdf,sparql,owl,rdfs,Rdf,Sparql,Owl,Rdfs,我已经为书籍定义了一个rdf类。 另一个用于描述人的rdf类。 Book类包含authoredBy字段,该字段将Book实例链接到people实例 书的性质 书 -身份证 -名字 -作者 人 -身份证 -名字 -姓氏 -名称 为了检索书籍属性,我使用以下sparql查询 DESCRIBE ?book WHERE { ?book a rdf:Book ; } 描述?书 哪里 { ?预订rdf:预订 } 我能够使用descripe检索属于Book的所有属性,即谓词、主语和宾语。但是,当涉及a
书
-身份证
-名字
-作者
人
-身份证
-名字
-姓氏
-名称
为了检索书籍属性,我使用以下sparql查询
DESCRIBE ?book WHERE { ?book a rdf:Book ;
}
描述?书
哪里
{
?预订rdf:预订
}
我能够使用descripe检索属于Book的所有属性,即谓词、主语和宾语。但是,当涉及authoredBy字段时,上面的查询只返回作者的URI
我也希望看到属于author的所有谓词(即它的firstname、lastname)。是否可以修改上述查询以实现此目的
所有属于书的属性都使用描述
属性不属于事物。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:Book)。您应该为自己的类使用其他名称空间
所有属于书的属性都使用描述
属性不属于事物。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:Book)。您应该为自己的类使用其他名称空间