Operator |
Beschreibung |
Typ des Operanden |
Rückgabetyp |
.small-font18.inline-code[
```sparql11
bound ( A )
```] |
Ist die Variable .hljs-params.monospace[A] gebunden? |
Variable |
.small-font18.inline-code[
```turtle
xsd:boolean
```] |
.small-font18.inline-code[
```sparql11
isIRI ( A )
```] oder .small-font18.inline-code[
```sparql11
isURI ( A )
```] |
Ist .hljs-params.monospace[A] eine IRI/URI? |
RDF Term |
.small-font18.inline-code[
```turtle
xsd:boolean
```] |
.small-font18.inline-code[
```sparql11
isBlank ( A )
```] |
Ist .hljs-params.monospace[A] ein Blank Node? |
RDF Term |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.small-font18.inline-code[
```sparql11
isLiteral ( A )
```] |
Ist .hljs-params.monospace[A] ein Literal? |
RDF Term |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
]
]
---
# Built-In Funktionen – Logische Operatoren und Vergleiche
.small-font[
Operator |
Beschreibung |
Typ des/der Operanden |
Rückgabetyp |
.monospace[.hljs-operator[!].hljs-params[A]] |
Logisches NOT |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[||] .hljs-params[B]] |
Logisches OR |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[&&] .hljs-params[B]] |
Logisches AND |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[=] .hljs-params[B]] |
Gleichheit$^1$ von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
RDF Term |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[!=] .hljs-params[B]] |
Ungleichheit$^1$ von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
RDF Term |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-keyword[sameTerm].hljs-operator[(].hljs-params[A].hljs-operator[,] .hljs-params[B].hljs-operator[)]] |
Sind .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] dieselben RDF Terme? Umgehen von Problematik $^1$! |
RDF Term |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
$^1$ Schmeißen von Fehlern bei nicht unterstützten Datentypen und ungleichen lexikalischen Werten, z.B. bei .inline-code[```sparql11
"iiii"^^my:romanNumeral = "iv"^^my:romanNumeral
```] und .inline-code[```sparql11
"iiii"^^my:romanNumeral != "iv"^^my:romanNumeral
```]
]
---
# XPath Tests und Arithmetik
.condensed[
- Tests
.small-font[
Operator |
Beschreibung |
Typ der Operanden |
Rückgabetyp |
.monospace[.hljs-params[A] .hljs-operator[<] .hljs-params[B]] |
.monospace[.hljs-params[A]] kleiner als .monospace[.hljs-params[B]] |
XML Schema Datentyp |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[<=] .hljs-params[B]] |
.monospace[.hljs-params[A]] kleiner als oder gleich .monospace[.hljs-params[B]] |
XML Schema Datentyp |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[>] .hljs-params[B]] |
.monospace[.hljs-params[A]] größer als .monospace[.hljs-params[B]] |
XML Schema Datentyp |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
.monospace[.hljs-params[A] .hljs-operator[>=] .hljs-params[B]] |
.monospace[.hljs-params[A]] größer als oder gleich .monospace[.hljs-params[B]] |
XML Schema Datentyp |
.small-font.inline-code[
```turtle
xsd:boolean
```] |
Zusätzlich bei .monospace[.hljs-params[A].hljs-operator[=].hljs-params[B]] und .monospace[.hljs-params[A].hljs-operator[!=].hljs-params[B]] Interpretation der Operanden
falls Verwendung von XML Schema Datentypen:
.small-font.inline-code[```sparql11
"+2"^^xsd:integer = "2"^^xsd:integer
```]
]
- Arithmetik
.small-font[
Operator |
Beschreibung |
Typ der Operanden |
Rückgabetyp |
.monospace[.hljs-params[A] .hljs-operator[+] .hljs-params[B]] |
Summe von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
Numerisch |
Numerisch |
.monospace[.hljs-params[A] .hljs-operator[-] .hljs-params[B]] |
Differenz von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
Numerisch |
Numerisch |
.monospace[.hljs-params[A] .hljs-operator[*] .hljs-params[B]] |
Multiplikation von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
Numerisch |
Numerisch |
.monospace[.hljs-params[A] .hljs-operator[/] .hljs-params[B]] |
Division von .monospace[.hljs-params[A]] und .monospace[.hljs-params[B]] |
Numerisch |
Numerisch |
]
]
---
# Weitere .darkgray.small-font[(hier nicht besprochene)] .darkblue[Features von SPARQL]
.condensed[
- SPARQL 1.0
- Weitere Built-In Funktionen
- .darkblue[Construct]-/.darkblue[Ask]- und .darkblue[Describe]-Anfragen, .darkblue[Benannte Graphen]
- .darkblue[LIMIT]/.darkblue[OFFSET]
- SPARQL 1.1
- .darkblue[Minus], (.darkblue[Not]) .darkblue[Exists], .darkblue[Gruppieren], .darkblue[Aggregation]sfunktionen
- .darkblue[Pfad]ausdrücke
- .darkblue[Unterabfragen], .darkblue[Select-Ausdrücke], .darkblue[explizite Zuweisungen]
- Absetzen von .darkblue[Unterabfragen zu] entfernten .darkblue[SPARQL Endpoints]
- .darkblue[Updates]
- Mächtige Built-In Funktionsbibliothek
-