Ausdrücke
Ausdrücke können in der Parameterkonfiguration und in der Prozesskonfiguration verwendet werden, um Filter zu formulieren und Tag-/Attributwerte zu belegen.
Die Ausdrücke werden in den Konfigurationsdateien als einfache Zeichenketten aufgeschrieben und vom Importer interpretiert. In den Ausdrücken können Werte für Tags über die jeweiligen Tag-Namen abgerufen werden. Ansonsten stehen die unten aufgeführten Operatoren zur Verknüpfung der Werte zur Verfügung. Ausdrücke können Sie schachteln, indem Sie Klammern setzen.
|
Hinweis: In OSM-Daten können Tag-Namen mit Doppelpunkt vorkommen, z. B. um richtungsbezogene Angaben zu machen ('lanes:backward','turn:right', usw.). Möchten Sie solche Tags in den Importkonfigurationen in Ausdrücken verwenden, so müssen Sie vor und hinter die Tags das Zeichen # setzen (beispielsweise #lanes:backward#). Sonst kann es beim Importprozess zu Fehlern kommen, da der Doppelpunkt als Operator (s.u.) interpretiert wird. |
|
Arithmetische Operatoren |
|
|
Element |
Beschreibung |
|
+, -, *, / |
Plus, Minus, Multiplikation, Division |
|
// |
Ganzzahldivision |
|
% |
Modulo, Rest |
|
** |
Exponent |
|
Vergleichsoperatoren |
|
|
Element |
Beschreibung |
|
=, == |
gleich |
|
<>, != |
ungleich |
|
> |
größer |
|
>= |
größer gleich |
|
< |
kleiner |
|
<= |
kleiner gleich |
|
Logische Operatoren |
|
|
Element |
Beschreibung |
|
! |
Nicht, Negation |
|
&& bzw. AND |
Und |
|
|| bzw. OR |
Oder |
|
Stringoperatoren/-funktionen |
|
|
Element |
Beschreibung |
|
=,== |
exakte Gleichheit |
|
~= |
Vergleich ohne Berücksichtigung der Schreibung der Buchstaben und Vergleich mit Wildcard ‚*' als Präfix und Postfix |
|
+ |
Verknüpfung |
|
Weitere |
|
|
Element |
Beschreibung |
|
( ) |
Klammerung |
|
(x) ? a : b |
Wenn Bedingung x WAHR dann a, sonst b |
|
x € [a,b,c] |
Wenn x in Menge [a,b,c] enthalten, dann WAHR, wobei a,b,c Zahlen, Zeichenketten usw. sein können |
|
x ~€ [a,b,c] |
Wenn x in Menge [a,b,c] enthalten, dann WAHR, wobei a,b,c Zeichenketten sind, die mit Wildcard ‚*‘ versehen sein können |
|
x !€ [a,b,c] |
Wenn x nicht in Menge [a,b,c] enthalten, dann WAHR |
|
x € [n...m] |
Wenn x im Intervall n – m (nur Zahlen, beide inklusive) enthalten, dann WAHR |
|
Tag-Operatoren |
|
|
Element |
Beschreibung |
|
x?? |
Wenn Tag x definiert ist WAHR, sonst FALSCH |
|
x:*? |
Wenn ein Tag definiert ist, das einen Präfix x: trägt WAHR, sonst falsch. Viele Tags werden in der Form a:b qualifiziert. Hier wird nur auf das Vorhandensein eines Präfixes geprüft, beispielsweise restriction :*? Ergibt für restriction:motorcar WAHR |
|
x ?= y |
Falls ein Tag y definiert ist, wird dem Tag x der Wert von y zugewiesen, ansonsten bleibt x unverändert |

