Show TOC

Dokumentation zur SyntaxNamensabgleich literaler XML-Elemente steuern Dieses Dokument in der Navigationsstruktur finden

Mit dem optionalen Attribut tt:lax kann bei der Deserialisierung literaler XML-Elemente gesteuert werden, ob der Name des Elements berücksichtigt wird oder nicht. Hinter tt:lax können folgende Werte für lax_flag angegeben werden:

... on|off|deep-on|deep-off ...

Wenn tt:lax mit dem Wert off angegeben ist, muss im XML-Eingangsstrom ein Element des gleichen Namens mit allen literalen Attributen attr des gleichen Inhalts stehen. Wenn tt:lax mit dem Wert on angegeben ist, ist der Name des Elements im XML-Eingangsstrom beliebig, die erwarteten Attribute müssen aber weiterhin übereinstimmen. Mit den Werten deep-on und deep-off für tt:lax werden die Einstellungen on und off für alle Unterlemente des aktuellen Elements gesetzt, können dort aber lokal überschrieben werden. Wenn tt:lax nicht angegeben ist, richtet sich die Einstellung nach dem umgebenden Kontext. Standardmäßig ist für ein Template die Einstellung deep-off gesetzt.

Beispiel

Gegeben sei folgendes XML-Fragment:

<X my_attr="attr">abc</X>

Folgendes ST-Programm kann dieses Fragment wegen tt:lax=on trotz unterschiedlicher Elementnamen deserialisieren:

Syntax Syntax

  1. <tt:transform xmlns:tt="http://www.sap.com/transformation-templates">
  2. <tt:root name="ROOT"/>
  3.   <tt:template>
  4.      <Y tt:lax="on">
  5.        <tt:value ref="ROOT"/>
  6.      </Y>
  7.    </tt:template>
  8. </tt:transform>
Ende des Codes