[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: xsl:import and use-when

Subject: Re: xsl:import and use-when
From: "Rushforth, Peter peter.rushforth@xxxxxxxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 16 May 2014 11:54:30 -0000
Re:  xsl:import and use-when

> -----Original Message-----
> From: Michael Kay mike@xxxxxxxxxxxx [mailto:xsl-list-
> service@xxxxxxxxxxxxxxxxxxxxxx]
> Sent: May 16, 2014 03:59
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re:  xsl:import and use-when
> On 16 May 2014, at 03:09, Abel Braaksma (Exselt) abel@xxxxxxxxxx <xsl-list-
> service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On 16-5-2014 2:49, Rushforth, Peter peter.rushforth@xxxxxxxxxxxxxxxxx
> wrote:
> >> With regard to statically known available documents [2], the spec says
> that statically known documents [3] in the static context [4] are used to
> provide static type information, not to determine which documents are
> available.  But if a document is statically known, it is potentially
available using
> the doc() function, hence I think the use of doc-available() in use-when
> should be legal, although if it isn't it isn't.
> >
> > You are quoting the XPath spec here, which allows enough breath for host
> > languages to provide a list of statically available documents. However,
> > in the section that you also refered to,
> > http://www.w3.org/TR/xslt20/#conditional-inclusion, you should scroll
> > down until the bottom of the first table, there is says:
> >
> > Statically known documents     None
> > Statically known collections     None

I see that now, thanks.

> >
> Actually and rather confusingly, it's the "available documents" in the
> context that matters, not "statically known documents" in the static
> Use-when expressions (and in XSLT 3.0, other static expressions) are
> evaluated during stylesheet analysis, so their dynamic execution occurs
> during the XSLT static analysis (compilation) phase; their dynamic
> has a dynamic context, and it is this that determines the results of doc()
> doc-available().

I see, thanks.

> Saxon still implements the 2.0 restriction on using doc() in use-when
> expressions, despite the relaxation in the spec. I can't see any particular
> reason not to lift the restriction (which can be done by removing one line
> code and adding a load of test cases....). Oh, looking at it more carefully,
I see
> that there would be no document pool maintained across a compilation, so
> multiple calls on doc() to fetch the same document would be grossly
> inefficient.

But useful!

I guess I will try an extension function.


Current Thread


Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
First Name
Last Name
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.