Hallo,
Im XSLT 1.0 ist xsl:message relativ begrenzt. In XSLT 2.0 (da funktioniert xsl:message auf ähnliche Weise wie xsl:result-dokument*) bekommt es mit dem select-Attribut mehr Möglichkeiten.
Wie das Ergebnis von xsl:message dann aber ausgegeben wird, * = hängt von der Implementierung ab. Die Spez. schlägt hier tatsächlich nur etwas vor (alert-Box bzw. einen Eintrag in einer Logdatei).Viele XSLT-Prozessoren - vor allem die in Java - haben eigene Erweiterungen, die sind dann in der jeweiligen Dokumentation zu finden. Ob diese aber ermöglichen aus dem Transformationsprozess heraus etwas auszulesen?
Auf dem "normalen" Weg ginge das nur, wenn du deine eigene Java-Anwendung schreibst und darin dann die Transformation mitverfolgst und auf Ereignisse reagierst.
Aus der laufenden Transformation brauche ich nicht zugreifen. Allerdings möchte ich, sobald die Transformatin fertig ist, entscheiden können, ob Fall a) oder Fall b) vorliegt. Dies geht per Rückgabewert (setProperty und setOutputParameter scheinen mir laut Beschreibung nicht dafür geeignet) oder per Exception (bei einem SAX-Parser z.B. kann ich eine CustomAbortException werfen, welche den Pars-Vorgang abbricht und welche ich außerhalb abfangen kann.)
Ich muss mir den Xalan mal genauer ansehen, ob man so etwas wie einen Message-Handler schreiben kann, der die xsl:message auswertet.
Danke für die Infos
Dietmar