Ansicht
Dokumentation

ABENST_TT_TEXT - ST TT TEXT

ABENST_TT_TEXT - ST TT TEXT

Addresses (Business Address Services)   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- tt:text, Literaler Text

...>literal...

...>tt:text>literal/tt:text>...

Wirkung

literal steht hier für literalen Text. Jeder Inhalt eines Templates, das kein Element ist (d.h., nicht innerhalb von steht), ist literaler Text. Dazu gehören auch Zeilenumbrüche und Leerzeichen, die zusammengefasst als Leerraum (englisch Whitespace) bezeichnet werden.

Die erste Zeile oben zeigt literalen Text ohne Kennzeichnung. In ST-Programmen kann literaler Text zusätzlich durch die ST-Anweisung tt:text gekennzeichnet werden, was in der zweiten Zeile dargestellt ist. Die beiden Varianten unterscheiden sich dadurch, dass ein ungekennzeichneter literaler Text literal bei Serialisierung und Deserialisierung nicht berücksichtigt wird, wenn er nur Leerräume enthält. Ein gekennzeichneter Text wird immer berücksichtigt.

Serialisierung von literalem Text

Wenn ein literaler Text berücksichtigt wird, werden alle seine Zeichen in die Ziel-XML-Daten geschrieben. Dazu gehören alle Leerräume. Es wird nichts übertragen, wenn ein Text ignoriert wird.

Deserialisierung von literalem Text

Der literale Text des XML-Ausgangsdokuments wird Zeichen für Zeichen (inklusive Leerzeichen und Zeilenumbrüchen) mit dem ST-Programm abgeglichen und konsumiert. D.h., an allen Stellen, an denen im Eingangsstrom literaler Text steht, muss genau der gleiche Text im ST-Programm aufgeführt sein und dort auch berücksichtigt werden.

Hinweis

Literale Texte mit anderen Zeichen außer Leerräumen sollten sparsam verwendet, immer mit tt:text gekennzeichnet und nicht zeilenübergreifend angelegt werden, da Zeilenumbrüche und Einrückungen Fehlerquellen bei der Deserialisierung darstellen. Ungekennzeichnete Texte sollten der Formatierung des ST-Programms mit Zeilenumbrüchen und Leerzeichen (Einrückungen) vorbehalten sein. Um Probleme bei der Deserialisierung von literalen Texten zu vermeiden, können diese mit tt:skip übersprungen werden.

Beispiel

Das folgende ST-Programm enthält vier Elemente X1 bis X4 mit literalem Text.

tt:transform
  xmlns:tt="http://www.sap.com/transformation-templates">
  tt:template>
    X0>
      X1> a b c /X1>
      X2>tt:text> d e f /tt:text>/X2>
      X3>     /X3>
      X4>tt:text>     /tt:text>/X4>
    /X0>
  /tt:template>
/tt:transform>

Das Ergebnis einer Serialisierung ist wie folgt, wobei die Leerzeichen in X3 nicht berücksichtigt werden:

X0>X1> a b c /X1>X2> d e f /X2>X3/>X4> /X4>/X0>

Diese XML-Daten können von obigem ST-Programm selbst wieder deserialisiert werden. Folgendes ST-Programm führt aber zur Ausnahme CX_ST_MATCH_ELEMENT, da für die Leerzeichen des Eingangsstroms innerhalb von X4 wegen der fehlenden Kennzeichnung mit tt:text keine Leerzeichen im ST-Programm vorhanden sind.

tt:transform
  xmlns:tt="http://www.sap.com/transformation-templates">
  tt:template>
    X0>
      X1>a b c/X1>
      X2>tt:text>d e f/tt:text>/X2>
      X3>     /X3>
      X4>     /X4>
    /X0>
  /tt:template>
/tt:transform>

Auch folgendes ST-Programm kann die XML-Daten nicht deserialisieren, da es in X1 Zeilenumbrüche und durch die Einrückung mehr Leerzeichen erwartet.

tt:transform
  xmlns:tt="http://www.sap.com/transformation-templates">
  tt:template>
    X0>
      X1>
        a b c
      /X1>
      X2>tt:text>d e f/tt:text>/X2>
      X3>     /X3>
      X4>     /X4>
    /X0>
  /tt:template>
/tt:transform>

Folgendes ST-Programm kann die XML-Daten deserialisieren, wobei alle Elemente mit tt:skip übersprungen werden.

tt:transform
  xmlns:tt="http://www.sap.com/transformation-templates">
  tt:template>
    X0>
      X1>tt:skip />/X1>
      X2>tt:skip />/X2>
      X3>tt:skip />/X3>
      X4>tt:skip />/X4>
    /X0>
  /tt:template>
/tt:transform>






CL_GUI_FRONTEND_SERVICES - Frontend Services   ROGBILLS - Synchronize billing plans  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 6873 Date: 20240523 Time: 110134     sap01-206 ( 85 ms )