我有一个RDFS本体,我有一个班级人员和另一个班级部门 Person类具有名为has_name的属性和名为member_of的属性 人与范围部。 类Department有一个名为dep_city的属性,另一个名为dep_name,它们都有domain Department和range literal。
我想创建一个查询,以便返回具有dep_city =“New York”的Department_of member_of的每个Person的has_name值。
我的问题是如何连接我需要创建查询的两个类。
我可以返回所有具有dep_city =“New York”的部门的dep_name
我也知道如何返回所有人的所有has_name,但如果我能连接这两个人,我就不知道。
请帮帮我 谢谢!!
答案 0 :(得分:2)
我不知道您使用的名称空间,因此我将使用http://example.org/
SELECT ?name
WHERE {
?person <http://example.org/has_name> ?name .
?person <http://example.org/member_of> ?department .
?department <http://example.org/dep_city> "New York"
}
顺便问一下,您是否阅读了SPARQL 1.1 Query规范?这是一个非常简洁的文档,有很多例子