Die folgende SPARQL-Abfrage gibt 20 Ergebnisse zurück. Ich habe erwartet, 10 gegeben die OFFSET
und LIMIT
Openlink Virtuoso SPARQL OFFSET- und LIMIT-Verhalten
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX dbpedia:<http://dbpedia.org/resource/>
PREFIX dbpedia-owl:<http://dbpedia.org/ontology/>
PREFIX dbpprop: <http://dbpedia.org/property/>
SELECT ?person_id ?person2_id
WHERE {
{
SELECT DISTINCT ?person_id ?person2_id WHERE {
?person rdf:type dbpedia-owl:Person .
?person2 rdf:type dbpedia-owl:Person .
?person ?link ?person2 .
?person dbpedia-owl:wikiPageID ?person_id .
?person2 dbpedia-owl:wikiPageID ?person2_id .
FILTER (?link = dbpedia-owl:wikiPageWikiLink) .
} ORDER BY ?link
}
} OFFSET 10 LIMIT 10
ich den Code in dem SPARQL-Endpunkt eines Openlink Virtuoso Servers auszuführen.
Was ist das Problem mit der Abfrage?
Klingt wie ein Fehler. Wenn Sie "LIMIT 10" gesagt haben, sollten Sie nur 10 Ergebnisse erhalten. Der OFFSET ist jedoch bedeutungslos ohne ORDER BY in der Abfrage. (Ich weiß, dass es in der Unterabfrage ein ORDER BY gibt, aber für die äußere Abfrage ist das egal.) –
Sollte in der Virtuoso-Mailingliste angegeben werden, aber mit zusätzlichen Informationen wie der Version von Virtuoso und vielleicht einigen weiteren Statistiken. – AKSW
Wie @AKSW nahelegt, sind Versionsdetails für eine nützliche Antwort unerlässlich. Außerdem eignen sich Virtuoso-spezifische Ressourcen oft am besten für Virtuose-spezifische Fragen. zB die [Virtuoso Users Mailingliste] (https://sourceforge.net/p/virtuoso/mailman/virtuoso-users/), das [OpenLink Support Forum] (http://boards.openlinksw.com/support/index) .php), ein [OpenLink Support Case] (http://support.openlinksw.com/support/online-support.vsp). (ObDisclaimer: Ich arbeite für [OpenLink Software] (http://www.openlinksw.com/), Produzent von [Virtuoso] (http://virtuoso.openlinkssw.com/).) – TallTed