Select 属性 来自个人 SPARQL

Select property from an Individual SPARQL

我需要从 ontology 中的个人那里获得 属性 值。

我该怎么做?

我有这个代码,但是我需要筛选,因为我需要某个人。

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 oc: <http://localhost:8080/OntoSakaiWS/OntoCompetence.owl#> 
SELECT distinct ?x ?value
    WHERE { 
    ?x a oc:Asignatura.
    ?x oc:nombre ?value.

}

您的查询应该可以完美运行。我会给你一个例子,说明如何在 family tree ontology.

中提取某个人

假设您想获取有关特定人的所有信息,比方说 herbert_vincent_jessop_1871。有两种方法,首先检索所有信息,然后根据您的个人过滤:

prefix : <http://www.co-ode.org/roberts/family-tree.owl#>
SELECT distinct *
WHERE { 
?s a ?o.
?s ?p ?x.
filter (?s=:herbert_vincent_jessop_1871)
}

或者,只需在查询中定义实例:

prefix : <http://www.co-ode.org/roberts/family-tree.owl#>
SELECT distinct *
WHERE { 
:herbert_vincent_jessop_1871 a ?o.
:herbert_vincent_jessop_1871 ?p ?x.
}

它们将产生相同的结果。