Sparql 用RDF中的rdfs:label替换:hasName
在我的图表中,我有以下三元组:Sparql 用RDF中的rdfs:label替换:hasName,sparql,rdf,sesame,rdfs,Sparql,Rdf,Sesame,Rdfs,在我的图表中,我有以下三元组: :Pieta :hasName "Pieta". :David :hasName "David". :MasaTacerii :hasName "Masa Tacerii". :USA :hasName "United States of America"@en, "Etats Unis d'Amerique"@fr. 我想用rdfs:label替换:hasName。
:Pieta :hasName "Pieta".
:David :hasName "David".
:MasaTacerii :hasName "Masa Tacerii".
:USA :hasName "United States of America"@en, "Etats Unis d'Amerique"@fr.
我想用rdfs:label替换:hasName。
我可以使用sameAs属性来实现这一点吗?或者我还有其他可能性吗?
owl:sameAs
将创建一个关于RDF资源的语句。但它本身是完全惰性的。如果使用标准的OWL推理器执行,它将创建三元组,使OWL:sameAs
的主题和对象中的每个资源具有相同的属性值。OWL推理不是一个通用的处理系统,它是一种单调的FOPL(即事实可以插入和推断,但不能收回)
但是,您想要的操作在SPARQL中有一个简单的实现:
DELETE {
?s :hasName ?o .
}
INSERT {
?s rdfs:label ?o .
}
WHERE {
?s :hasName ?o .
}
基本上,找到所有:hasName
属性,删除它们并添加rdfs:label