ABAP Keyword Documentation → ABAP - Reference → Data Interfaces and Communication Interfaces → ABAP and XML → Simple Transformations
ST - Structure of ST Programs
Other versions: 7.31 | 7.40 | 7.54
Syntax
<?sap.transform simple?>
<tt:transform [template="tmpl"]
xmlns:tt="http://www.sap.com/transformation-templates"
[<tt:type name="..." [...]>
...
</tt:type>
...]
[<tt:root name="root1" [...] />
<tt:root name="root2" [...] />
...]
[<tt:parameter name="para1" [...] />
<tt:parameter name="para2" [...] />
...]
[<tt:variable name="vari1" [...] />
<tt:variable name="vari2" [...] />
...]
<tt:template [name=="tmpl"]>
...
</tt:template>
[<tt:template [name=="..."]>
...
</tt:template>
...]
</tt:transform>
Effect
An ST program must be a valid XML document, structured as follows.
- The first line <? ... ?> is used to identify the program type (ST). It does not need to be entered because the syntax check inserts it automatically.
- The elements of namespace "http://www.sap.com/transformation-templates" are ST commands. Namespace prefix tt is used in this documentation as a convention for this namespace. ST commands can be XML elements or attributes. All other components of an XML element are called literal elements, which means that they have no semantics within the ST language.
- The possible elements of an ST program are:
- Type definitions using tt:type.
- A root element tt:transform.
- Various data declarations using tt:root, tt:parameter, and tt:variable.
- A main template defined with tt:template and any number of subtemplates. A template is a pattern for the XML document into which ABAP data is serialized or from which data is deserialized, respectively.
Note
In this documentation and in the example programs, double quotation marks (") are used as outer quotes and single quotation marks (') as inner quotes. However, as usual in XML, this is not mandatory. For example, you can also write 'not-initial(ref("X.Y"))' instead of "not-initial(ref('X.Y'))".
Example
Continue
ST - tt:transform, Root Element
ST - tt:type, tt:front, tt:node, type definitions