query-4f25ba8e95faf4d2026b2891d16cc0c3
BIND, BOUND, IFDiese drei Funktionen werden häufig zusammen verwendet, weshalb ich zunächst alle drei erkläre und dann einige Beispiele zeige. -Klausel kann genutzt werden, um das Ergebnis eines Ausdrucks einer Variablen zuzuweisen (gewöhnlich eine neue Variable, du kannst aber auch bereits existierende überschreiben). BIND(Ausdruck AS ?variable).Eine -Klausel eingeführt werden sinnvoll. OPTIONAL aus). Es ist insbesondere für Variablen, die mit einer false oder true rüft, ob eine Variable an einen Wert gebunden wurde (gibt BOUND(?variable) ausgewertet werden. "schrecklich" als IF(false, "groß", "schrecklich") und "ja" als IF(true, "ja", "nein") ausgewertet wird. Das bedeutet, dass false als Bedingung, wenn andererAusdruck ausgewertet wird, und als true als Bedingung ausgewertet, wenn dannAusdruck wird als IF(Bedingung,dannAusdruck,anderer Ausdruck) kann genutzt werden, um Ergebnisse von Berechnungen an eine neue Variable zu binden. Dies kann ein Zwischenergebnis einer größeren Berechnung oder einfach das direkte Ergebnis einer Abfrage sein. Zum Beispiel, um das Alter der Opfer der Todesstrafe zu erhalten: BIND
Use at
- https://query.wikidata.org/sparql
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX bd: <http://www.bigdata.com/rdf#>
SELECT ?person ?personLabel ?alter
WHERE
{
?person wdt:P31 wd:Q5;
wdt:P569 ?geboren;
wdt:P570 ?gestorben;
wdt:P1196 wd:Q8454.
BIND(?gestorben - ?geboren AS ?alterInTagen).
BIND(?alterInTagen/365.2425 AS ?alterInJahren).
BIND(FLOOR(?alterInJahren) AS ?alter).
# oder als ein Ausdruck:
#BIND(FLOOR((?gestorben - ?geboren)/365.2425) AS ?alter).
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE]". }
}