如何解决我怎样才能得到我的三元组并计算它们? 将聚合查询结果添加到非聚合解决方案中
我正在尝试将某个 CONSTRUCT 查询的结果与几个聚合统计信息结合起来。当然,聚合会丢失单个行。是否有一种巧妙的 sparql 习语或安排,可以将聚合和非聚合结果结合起来,而又不至于大惊小怪和重复?
举一个简单的例子,假设我想检索所有 skos 标签,并计算每个概念有多少个标签。这是一个对标签进行计数的聚合查询:
SELECT ?s (COUNT(?o) AS ?label_count)
WHERE {
?s a skos:Concept .
?s ?p ?o
FILTER (?p IN (skos:prefLabel,skos:altLabel,skos:HiddenLabel))
}
GROUP BY ?s
所以现在我想构造所有匹配的标签三元组,加上一个三元组来保持计数,如下所示:
CONSTRUCT {
?s ?p ?o .
?s ext:numLabels ?label_count .
}
WHERE {
????
}
把这样的东西放在一起的正确方法是什么?我不能使用 SELECT 语句中的 WHERE 查询,因为它只为每个概念生成一个解决方案;谓词和标签被汇总到计数中。那么我怎样才能得到我的三元组并计算它们呢?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。