Ein XML/JSON Datenpunkt liest einen einzelnen Wert aus einem XML- oder JSON-Dokument, das das XML/JSON Interface abruft. Welches Element gelesen wird, legt der Pfad fest. Der Datenpunkt ist nur lesbar.
Felder
| Feld | Bedeutung | Hinweis |
|---|---|---|
| Id | Interne Nummer. | Nur Anzeige. |
| Interface | Zugehöriges Interface. | Nur Anzeige. |
| Name | Name des Datenpunkts. | |
| Kommentar | Freitext zur Dokumentation. | |
| Persistent | Wert dauerhaft speichern. | |
| Chart | Wert aufzeichnen. | |
| Einheit | Wert-Einheit. | Legt auch fest, welche Art Wert erwartet wird: bei numerischer Einheit eine Zahl, bei Text eine Zeichenkette. |
| Pfad | Navigationspfad zum Element mit dem Wert. | Pflichtfeld. Er muss gültig und für XML beziehungsweise JSON zulässig sein. |
| Wert Offset (+) | Wird zum gelesenen Wert addiert. | Nur bei numerischer Einheit. Ohne Angabe: 0. |
| Wert Skalierung (*) | Faktor, mit dem multipliziert wird. | Nur bei numerischer Einheit. Ohne Angabe: 1. |
Die Rechenreihenfolge lautet: (gelesener Wert + Offset) * Skalierung.
Pfad
Der Pfad nennt die Namen aller Elemente, über die navigiert wird, getrennt durch einen Punkt (.). Bei XML gehört das Root-Element nicht zum Pfad. Namen unterscheiden Gross- und Kleinschreibung.
Mehrere gleichnamige Elemente: Standardmässig gilt das erste. Mit einem Index in eckigen Klammern wählen Sie ein anderes, gezählt ab 0: Messwerte.Sensor[1] ist der zweite Sensor. Ein negativer Index zählt von hinten: [-1] ist das letzte Element.
XML-Attribute: Hängen Sie #Attributname an den Pfad, zum Beispiel Messwerte.Sensor[-1]#zustand. Das geht nur bei XML.
JSON: Sie navigieren über Membernamen und Array-Indizes, zum Beispiel Messwerte[0].wert oder Messwerte[-1].wert. JSON kennt keine Attribute.
Läuft der Pfad ins Leere, bleibt der aktuelle Wert des Datenpunkts erhalten.
Beispiel
Ein XML-Dokument hat unter dem Root-Element ein Element Messwerte mit zwei Elementen Sensor. Der erste Sensor hat den Wert 28.5, der zweite den Wert 21.6 und das Attribut zustand mit dem Text batteriestand niedrig.
Messwerte.Sensorliefert28.5.Messwerte.Sensor[-1]liefert21.6.Messwerte.Sensor[-1]#zustandliefertbatteriestand niedrig.
Hinweise und Grenzen
- Bei mehrfach vorkommenden Elementen oder Arrays muss die Reihenfolge stabil bleiben. Sonst liefert der Pfad ein anderes Element.
- Reduziertes JSON (ein Array als äusserstes Element oder nur ein einfacher Wert) lässt sich derzeit nicht navigieren.
- Die Pfade finden Sie am einfachsten, indem Sie das Dokument im Browser oder in einem Texteditor ansehen.

