2016-09-30 8 views
0

그래프에서 상위 k 개의 빈번한 술어를 찾고 싶습니다. 그것이 더 많은 트리플에서 발생하는 술어입니다. 어떻게 이것을 SPARQL을 사용하여 수행 할 수 있습니까?SPARQL 가장 빈번한 술어

답변

3

쿼리 언어의 그룹 및 집계 기능을 사용하여이 작업을 수행 할 수 있습니다. 당신은 술어별로 그룹화하고 술어를 사용하는 모든 트리플을 계산하려고합니다.

SELECT ?p (COUNT(*) AS ?usages) 
WHERE 
{ 
    GRAPH <http://your-graph.com> { ?s ?p ?o } 
} 
GROUP BY ?p 
ORDER BY DESC(?usages) 
LIMIT 5 

그런 다음 종류 용도의 수를 내림차순으로하며, 결과를 제한함으로써 더 많은 예제에 대한 사양 참조 단지 상단 K

를 얻을 수 있습니다 - https://www.w3.org/TR/sparql11-query/#aggregates

관련 문제