我正在搜索方法/工具/语法来查询RDF / OWL本体中的注释。
查询引擎我找到了搜索类,属性,个人,但我还没有找到一个会根据DC搜索的值:描述
答案 0 :(得分:1)
使用SPARQL,您应该能够通过您感兴趣的属性查询注释,例如:
PREFIX dc: <http://purl.org/dc/elements/1.1/>
SELECT ?x ?desc {
?x dc:description ?desc .
}
此方法还可用于检索具有特定注释值的所有实例,例如:
PREFIX dc: <http://purl.org/dc/elements/1.1/>
SELECT ?x {
?x dc:description "some description string" .
}
或者,你甚至可以根据一些REGEX尝试匹配:
PREFIX dc: <http://purl.org/dc/elements/1.1/>
SELECT ?x {
?x dc:description ?desc .
FILTER REGEX(STR(?desc), "^Some regex") .
}
答案 1 :(得分:1)
如果您使用的是编程工具且本体是OWL,则可以使用Manchester OWL API:
OWLClass classA = factory.getOWLClass(IRI.create("http://your/url/here#ClassA"));
OWLAnnotationProperty dcProperty = factory.getOWLAnnotationProperty(IRI.create("http://purl.org/dc/elements/1.1/description"));
for (OWLAnnotation annotation : classA.getAnnotations(ontology, dcProperty)) {
OWLLiteral literal = (OWLLiteral) annotation.getValue();
String literalString = literal.getLiteral()
}
这将获得该特定属性的价值。 “factory”这里是OWLDataFactory的一个实例。
希望有所帮助!