Define

Dieses Dokument enthält die TAL Spezifikation 1.4. Das Dokument wurde mit Microsoft Word erstellt und mit WordXML automatisch in XML , HTML und HTMLHelp (.chm) konvertiert. Mit WordXML, dem Word-PlugIn der struktur AG, erweitern Sie Microsoft Word zu einem leistungsfähigen XML-Werkzeug.


Define

Syntax:

argument ::= define_scope[’;’ define_scope]*

define_scope ::= ([‘local’] | ‘global’) define_var

define_var ::= variable_name expression

variable_name ::= Name

Merke: Soll in eine Anweisung ein Semikolon eingefügt werden, muß es durch Verdoppelung escaped werden (’;;’).

Es können zwei Arten von TAL-Variablen definiert werden: lokale und globale. Wird in einer Anweisung eine lokale Variable definiert, kann sie nur innerhalb dieses Elements und den darin enthaltenen Elementen verwendet werden. Wird eine Variable in einem inneren Element neu definiert, so wird die alte Variable innerhalb des Geltungsbereichs der neuen Variable durch diese überdeckt. Eine globale Variable kann nach dem Ort ihrer Definition in jedem Element verwendet werden. Wird eine globale Variable irgendwo neu definiert, wird sie im gesamten Template ersetzt.

Ergibt die Auswertung eines Ausdrucks ‘nothing’, dann hat die Variable den Wert ‘nothing’, und kann so in weiteren Ausdrücken verwendet werden. Beendet die Auswertung eines Ausdrucks die Ausführung der Anweisung, ist die entsprechende Variable nicht (neu) definiert. Falls die Variable eine andere überdeckt bzw. überdecken sollte, bleibt der Wert trotzdem unverändert, falls nicht, wird sie eben gar nicht erzeugt. Jede Variablendefinition ist unabhängig, also können Variablendefinitionen in Anweisungen stattfinden, in denen andere Variablen aufgelöst werden.

Beispiele:

tal:define=“mytitle template/title; tlen python:len(mytitle)”

tal:define=”global company_name string:Digital Creations, Inc.”