【发布时间】:2021-04-09 17:04:36
【问题描述】:
我很难弄清楚如何使用流利的查询在 dotnetrdf 中表示以下查询。 SPARQL 查询:
PREFIX a: <http://www.example.com/ex1#>
PREFIX rdf: < http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?object
WHERE {
a:Branch1 rdf:type ?object
FILTER(!STRSTARTS(STR(?object), "http://www.w3.org/2002/07/owl#"))
}
这是我目前所取得的成果,我想不出过滤谓词。
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("rdf", new Uri("http://www.w3.org/1999/02/22-rdf-syntax-ns#"));
prefixes.AddNamespace("a", new Uri("http://www.example.com/ex1#"));
var objVar = "object";
var queryBuilder =
QueryBuilder
.Select(new string[] { objVar })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(element)
.PredicateUri("rdf:type")
.Object(objVar);
})
.Filter(f =>
// What should be added here?
);
queryBuilder.Prefixes = prefixes;
谢谢,
【问题讨论】:
标签: sparql semantic-web dotnetrdf