Re: [xsl] function-available() test on stylesheet functions

Subject: Re: [xsl] function-available() test on stylesheet functions
From: "John McGowan" <john@xxxxxxxxxxxxx>
Date: Wed, 18 Jul 2007 09:52:45 -0500
I'm trying to optimize a code reuse without duplication situation here.

My current solution, is using saxon:evaluate() to call the potentially
unavailable function inside of a conditional that checks
function-available.  I'm considering doing something different
utilizing import precedence to control what gets used when.

My only problem with that is it causes me to go in a different
direction with how my XSL is stored and executed.  I'm using
middleware to generate most of the xsl, so I'm not really using import
or include that much, because I don't really have anything sitting out
on the filesystem.  It seems like the only way to define duplicate
functions, will be to define them at different import levels, which
will force me to do some re-architecting.

In the long run I think it's what I want though.

/John

On 7/18/07, Michael Kay <mike@xxxxxxxxxxxx> wrote:
The assumption is that as the author of the stylesheet, you know what it
contains.

The idea behind use-when is that it allows you test factors external to the
stylesheet itself, for example information about the XSLT processor or the
environment in which it is operating. If the design required you to look at
the contents of the stylesheet before deciding which parts to filter out, it
would get very circular.

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: john@xxxxxxxxxxx [mailto:john@xxxxxxxxxxx] On Behalf Of
> John McGowan
> Sent: 17 July 2007 21:25
> To: XSL List
> Subject: [xsl] function-available() test on stylesheet functions
>
> I was trying to use function-available() to try to determine
> if a stylesheet function had been defined.  I eventually
> figured out that stylesheet functions are not in the proper
> context to cause
> function-available() to ever be true.
>
> So my question is, is there another way to test to see if a
> stylesheet function exists?
>
> --
> /John




--
/John

Current Thread