Frage

Ich versuche, eine SPARQL-Abfrage zu schreiben, wo ich auf dem Platz von etwas filtern will, aber ich bin einfach nicht in der Lage, herauszufinden, wie eine Zahl zu quadrieren ( x 2 ) (außer indem sie sie mit sich selbst, natürlich multipliziert). Ich vermutete eine Quadratwurzelfunktion namens math:sqrt() die funktioniert, aber nichts wie math:pow zu existieren scheint.

Wie kann ich den Platz von etwas in SPARQL bekommen und, was noch wichtiger ist, wo kann ich darüber gelesen und andere mathematische Funktionen wie math:sqrt in SPARQL?

Hinweis: Dies ist meine vorherige Frage bezogen werden: wikipedia Geotagging-Lookup Rückwärts

War es hilfreich?

Lösung

Es ist jetzt ein paar Jahre später und die SPARQL 1.1 Query Language wurde veröffentlicht. Es enthält viele weitere integrierte Funktionen als die ursprüngliche Abfragesprache SPARQL. . Neben vielen Funktionen auf Strings, RDF Begriffen, usw, gibt es eine Reihe von numerischen Funktionen ist (die Abschnittsnummern geben den Abschnitt in dem verknüpften Standard):

  

Es gibt noch keine square Funktion hier, und der schnellste Weg, das wird mit * zu implementieren, so laalto Antwort noch steht. Die Betreiber, die SPARQL unterstützt beschrieben sind in 17.3 Operator Mapping und für XPath Arithmetik ist nach wie vor nur der Satz von +, -, * und /.

Andere Tipps

SPARQL unterstützt einige XPath arithmetischen Funktionen wie + - * /. Sie sind in der SPARQL spec .

Die Power-Funktion wird nicht von der Spezifikation unterstützt. Und in jedem Fall x*x ist effiziente Weise Quadrate zu berechnen als pow(x,2) wäre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top