Protégé(正则表达式)中的 Sparql 查询(过滤)
Sparql query (filtering) in Protégé (regex)
我正在学习如何在 SPARQL 中编写查询(通过 protégé 平台)。所以,这是一个非常基本的问题,但我无法解决。
我有一个叫 Alice 的人(在 owl:Thing 之下)。
这个人有一个数据 属性 叫做 textualValue,指定为 xsd:normalizedString.
我正在写下面的查询以提取以 ali 开头的个体,结果应该是 alice。我基本上使用正则表达式操作数进行过滤。每当我使用此规范执行 SPARQL 查询时,我都没有得到任何结果,有人可以指出我错在哪里吗?
SELECT distinct ?x
WHERE { ?x rdf:type owl:NamedIndividual.
FILTER regex(?textualValue, "^ali", "i") }
您需要获取 属性 textualValue
的值 - 它不会自动放入变量中。
根据您的描述,这是一个大纲:您需要完成的细节:
PREFIX owl: ....
PREFIX rdf: ....
PREFIX x: <InsertTheRightURIhere>
SELECT distinct ?x
WHERE {
?x rdf:type owl:NamedIndividual ;
x:textualValue ?v .
FILTER regex(str(?v), "^ali", "i")
}
str
仅获取 ?v
.
中 RDF 术语的词汇部分
我正在学习如何在 SPARQL 中编写查询(通过 protégé 平台)。所以,这是一个非常基本的问题,但我无法解决。
我有一个叫 Alice 的人(在 owl:Thing 之下)。
这个人有一个数据 属性 叫做 textualValue,指定为 xsd:normalizedString.
我正在写下面的查询以提取以 ali 开头的个体,结果应该是 alice。我基本上使用正则表达式操作数进行过滤。每当我使用此规范执行 SPARQL 查询时,我都没有得到任何结果,有人可以指出我错在哪里吗?
SELECT distinct ?x
WHERE { ?x rdf:type owl:NamedIndividual.
FILTER regex(?textualValue, "^ali", "i") }
您需要获取 属性 textualValue
的值 - 它不会自动放入变量中。
根据您的描述,这是一个大纲:您需要完成的细节:
PREFIX owl: ....
PREFIX rdf: ....
PREFIX x: <InsertTheRightURIhere>
SELECT distinct ?x
WHERE {
?x rdf:type owl:NamedIndividual ;
x:textualValue ?v .
FILTER regex(str(?v), "^ali", "i")
}
str
仅获取 ?v
.