Skip to content

ABAP Keyword Documentation →  ABAP − Reference →  Data Interfaces and Communication Interfaces →  ABAP and XML →  Transformations for XML →  ST - Simple Transformations 

ST - Structure of ST Programs

Other versions: 7.31 | 7.40 | 7.54


<?sap.transform simple?> 
<tt:transform [template="tmpl"]

  [<tt:type name="..." [...]>

  [<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 [name=="..."]>



An ST program must consist of valid XML data, structured as follows.

  • The first line <? ... ?> serves to identify the transformation type (ST). It does not need to be entered because the syntax check inserts it automatically.
  • The elements of namespace "" 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.
  • Possible elements of an ST program are:
  • A main template defined with tt:template and any number of subtemplates. A template is a pattern for the XML data into which ABAP data is serialized or from which data is deserialized, respectively.
These elements can be in any order.


In this documentation and in the example programs, double quotation marks (") are used as outer quotation marks and single quotation marks (') as inner quotation marks. However, as usual in XML, this is not mandatory. For example, 'not-initial(ref("X.Y"))' can be written instead of "not-initial(ref('X.Y'))".

Executable Example

Example of an ST program


ST - tt:transform, Root Element

ST - tt:type, tt:front, tt:node, Type Definitions

ST - Data Declarations

ST - tt:template, Main Template

Simple Transformation, Example of an ST Program