【发布时间】:2016-04-20 19:04:51
【问题描述】:
嗨,我是本体的新手。我通过 Protege 软件开发了一个餐厅本体。但是我非常需要一个 SPARQL 查询来查找一个类的所有个体的属性值。
我想得到如下结果:
Angels_n_Gypsies
House #30, Rd No. 19/A, Dhaka 1213, Bangladesh
【问题讨论】:
标签: sparql ontology protege protege4
嗨,我是本体的新手。我通过 Protege 软件开发了一个餐厅本体。但是我非常需要一个 SPARQL 查询来查找一个类的所有个体的属性值。
我想得到如下结果:
Angels_n_Gypsies
House #30, Rd No. 19/A, Dhaka 1213, Bangladesh
【问题讨论】:
标签: sparql ontology protege protege4
只需按照属性值...
SELECT ?rname ?lname
WHERE {
?inst a :Popular_restaurant .
?inst :restaurant_name ?rname .
?inst :Location_name ?lname .
}
但这只是最终结果。理解 SPARQL 的一种方法是学究式地开始。例如:
SELECT ?inst
WHERE {
?inst a :Popular_restaurant .
}
这会让你成为班级的所有成员:Popular_restaurant。然后找出为每个成员定义了哪些属性:
SELECT ?inst ?p ?o
WHERE {
?inst a :Popular_restaurant .
?inst ?p ?o .
}
p 的绑定会告诉你为这个类的成员定义了哪些属性。因此,请使用这些值来不断优化查询。
【讨论】: