Sparql- как узнать количество троек?
Я делаю небольшое упражнение на sparql. Используя Dbpedia Endpoint, мне нужно посчитать количество троек.
Это мой запрос
// Get the number of triples //
SELECT (COUNT(*) as ?Triples) WHERE { ?s ?p ?o}
-------------------------------------------------------
OUTPUT:
( ?Triples = 1625382483 )
Просто интересно, правильно ли запрос и результат? Это как вы получаете количество троек?
1 ответ
Решение
Вы можете проверить многие вещи, выполняя запросы непосредственно на конечной точке SPARQL, а не через Jena или другие промежуточные клиенты. Например, ваш запрос в форме DBpedia и его результаты, которые показывают все тройки в этом хранилище (в настоящее время 1 625 382 483).
Если вам нужно количество троек только в графе DBpedia с именем graph (в настоящее время 438,336,517), вам нужно указать это либо в форме SPARQL Имя набора данных по умолчанию (Graph IRI), либо непосредственно в запросе, как в -
SELECT (COUNT(*) as ?Triples)
WHERE
{ GRAPH <http://dbpedia.org>
{ ?s ?p ?o }
}
-- или же --
SELECT (COUNT(*) as ?Triples)
FROM <http://dbpedia.org>
WHERE { ?s ?p ?o }