Wildcards
Um Datenpunkt- oder Datenpunktelement-Bezeichner mit Hilfe von Mustern filtern zu können, werden Wildcards benützt. Dazu finden die Zeichen * und ? Verwendung. Der Stern * ersetzt dabei beliebig viele Zeichen und das Fragezeichen ? steht für genau ein Zeichen. Beide Wildcard-Zeichen können aber niemals die Trennzeichen zwischen den einzelnen Bezeichnern . : ; [ ] ersetzen. Ein Wildcard-Ausdruck kann also maximal für eine Ebene des Bezeichnerpfades stehen und muss danach normal durch Punkt oder Doppelpunkt von der nächsten Ebene abgetrennt werden.
Um Datenpunktelemente einschließlich aller darunterliegenden zu adressieren, muss der Element-Bezeichnerpfad mit einem Strichpunkt ";" beendet werden. Wildcards können in Arrays (eckige Klammern "[ ]" ) oder außerhalb von Arrays in Auswahllisten (in geschwungenen Klammern) verwendet werden.
Wildcards können in SQL-Funktionen (siehe SQL) und in der Funktion dpNames() verwendet werden.
Arrays
In Feldbezeichnern - Arrays werden Wildcards auf etwas andere Art und Weise verwendet. Einerseits ist der Ausdruck [*] möglich, mit welchem alle Elemente eines Arrays adressiert werden, andererseits kann sich innerhalb der eckigen Klammern auch eine Aufzählung von einzelnen, durch Komma , getrennten, Indizes befinden.
[*]
adressiert alle Elemente des Arrays. Es kann innerhalb der eckigen Klammern auch eine Aufzählung von einzelnen Arraybezeichnern oder einer Gruppe von Elementen angegeben werden.- Ein Bezeichner
[1,2,5-10]
adressiert dann die Elemente 1,2,5,6,7,8,9,10. Die Reihenfolge der Aufzählung innerhalb der Klammern ist ohne Bedeutung, Mehrfachnennungen werden ignoriert. -
Die Bereichsangaben i-j
werden immer so gelesen, dass i < j ist. Andernfalls werden i und j vertauscht.
Auswahlliste
Um eine Auswahlliste anzugeben, verwenden Sie die Klammern "{ }" . Die einzelnen Elemente der Liste werden durch Komma (",") getrennt.
- So selektiert ein Bezeichner
SYS:Pumpe_{a,b,c}.EL:_original.._value
das Attribut_original.._value
der drei Datenpunkte Pumpe_a, Pumpe_b und Pumpe_c. - Ein Ausdruck
ab { c, de, fff } xy
wird erweitert auf "abcxy", "abdexy" und "abfffxy".Note: Eine Auswahlliste darf keine Arraybezeichner enthalten. {a,b,c}.EL:_original.._value
Bei dieser Formulierung muss beachtet werden, dass alle Datenpunktelemente im aktuellen System angesprochen werden! Zudem gilt als System immer das Default-System, wenn nicht explizit mitREMOTE 'Systemname'
ein System ausgewählt wird.- Die Adresse *; betrifft also alle Datenpunkte des aktuellen Systems,
- Im Gegensatz dazu wählt *:*; alle erreichbaren Systeme aus.