Werte auslesen
Werte einzelner Datenfelder können mit der Funktion data ausgelesen werden.
In ihrer einfachsten Form hat data ein Attribut, source, welches dem Namen
des auszulesenden Feldes entspricht. Dabei können auch Wildcards verwendet
werden, so ? für ein beliebiges Zeichen und * für Sequenz arbiträrer
Zeichen mit Länge 0-n. In dieser einfachsten Form - ausgeschrieben also bspw.
<data source="100*.a"/> - wird lediglich definiert, dass Werte in den
Feldern, welche auf den Ausdruck 100*.a passen, ebenso wie die Feldnamen
unverändert übernommen werden sollen.
Zudem gibt es für source zwei Variablen mit fixer Bedeutung:
_id: Liest die ID des Datensatzes aus._else: Prozessiert alle Literale, welche nicht durch eine andere Morph-Regel verarbeitet werden. Nützlich, wenn Literale nicht transformiert, aber auch nicht ausgefiltert werden sollen.
data nimmt aber noch ein zweites Attribut entgegen, name. Dadurch lassen
sich Feldnamen umbenennen, während der Feldwert noch immer unverändert
übernommen wird. Durch den Feldnamen _id wird die ID des Datensatzes
überschrieben.
Datenfelder mit Namen, die mit @ beginnen, werden speziell behandelt.
Schliesslich lassen sich auf Feldwerte eine Reihe von Transformationen und Filter anwenden.