On-Error

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.


On-Error

Syntax:

argument ::=([‘text’] | ‘structure’) expression

Mit der Anweisung ‘on-error’ kann eine Fehlerbehandlung in das Dokument eingebaut werden. Wenn eine TAL-Anweisung einen Fehler hervorruft, versucht der TAL-Interpreter zuerst im selben Element eine ‘on-error’-Anweisung zu finden, dann im einschließenden Element, und so weiter. Die erste ‘on-error’-Anweisung die gefunden wird, wird ausgeführt. Die ‘on-error’-Anweisung verhält sich genau wie die ‘content’-Anweisung.

Die einfachste ‘on-error’-Anweisung hat als Ausdruck einen String oder ‘nothing’. Eine etwas komplexere Fehlerbehandlung ruft etwa ein Skript auf, das den Fehler genauer untersucht und dann entweder eine Fehlermeldung ausgibt oder einen Ausnahmefehler (exception) erzeugt um den Fehler nach außen weiterzuleiten.

Beispiele:

<p tal:on-error=“string: Fehler! Dieser Paragraph ist fehlerhaft!”>

Mein Name ist <span tal:replace=”here/SlimShady” />. <br/>

(Mein Login ist <b tal:on-error=”string: Benutzername ist nicht definiert!” tal:content=”user”>unbekannt</b>)

</p>

Im oberen Beispiel wird ‘here/SlimShady’ einen Fehler auslösen, die ‘on-error’-Anweisung fängt diesen ab und ersetzt den ganzen Paragraphen mit dem Text ‘Fehler! Dieser Paragraph ist fehlerhaft!’. Kann ‘here/SlimShady’ korrekt ausgewertet werden, aber bei der Auswertung von ‘user’ tritt ein Fehler auf, dann ersetzt ‘Benutzername ist nicht definiert!’ das Wort ‘unbekannt’, aber der Rest des Paragraph wird völlig normal behandelt.