Subject: [xsl] manage errors and terminations, child thread of Re: [saxon] Too many attribute value templates? ++|
From: ac <ac@xxxxxxxxxxxxx>
Date: Fri, 25 Jan 2008 04:55:41 -0500
I find xsl:message with @terminate useful, yet, somewhat radical. It might be nice to also pass it a closure function/template(/or selector of) as attribute/child, to possibly clean things up, in various ways, before dying. error() is fine two but it is just even a little bit more radical. error() may also benefit from the additional closing selector.
Still, the current xslt options are fine, as an application that manages errors, leaves @terminate mostly for testing & debugging, as well as for that application's error management service, after closing and tidying everything up, ready to die. Since tests and debugs may be harder to structure ;-}, and since in such an application, one only shuts down once, error() is probably more useful in other context.
Although interesting, I have some doubts on how much of this is directly related to Saxon. Would you agree that it might now more be relevant on the xsl list, and allow me to throw it there?
Thanks. Cheers, ac
If you want a run-time error in this case, you can simply use xsl:message with @terminate or xsl:sequence with error(). I feel error() is not used often while this is of great help to check some assumptions, while developing and even in production...