PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX my: <http://www.ex.com#>
SELECT distinct ?person ?nationality
WHERE{
?person rdf:type ?p.
?person my:Nationality ?nationality.
filter (?nationality = "Some nationality")
}
我在Protege中创建了一个本体,它描述了一家音乐制作公司。我很难理解SPARQL查询和它们的工作方式。
一些解释
我想要在其中输出人员的?person
:变量。他们是被保护的个体
?nationality
是一个我想要输出国籍的变量。它们是Protege中的数据属性
Nationality
:数据属性,该属性将国籍作为字符串包含,并且每个人都有一个
我创建的my
:前缀
这是如何工作的?person rdf:type ?p
,它如何选择正确的类型?它会自动工作吗?我觉得我没有将?person
变量设置为Person变量类型(这是我创建的一个类,它将person描述为一个实体),尽管它输出的正是我需要的结果。
https://stackoverflow.com/questions/50514152
复制相似问题