Re: [xsl] Calling subdocuments with processing directives

Subject: Re: [xsl] Calling subdocuments with processing directives
From: Steven Ericsson-Zenith <steven@xxxxxxxxxxxxx>
Date: Fri, 26 Oct 2007 11:33:41 -0700
It is because there is no defined order that I find it counter intuitive to have to make what is essentially and order specification. From a functional point of view a key really should aggregate IMHO.

With respect,
Steven

--
Dr. Steven Ericsson-Zenith
Institute for Advanced Science & Engineering
http://iase.info
http://senses.info



On Oct 26, 2007, at 10:41 AM, Michael Kay wrote:

The "default" you refer to is on retrieval. It is not clear
to me why that context is relevant in the case of keys. Why
do you have to specify the source of the value? That seems
very odd to me. The name of the key includes the source path?

The key definition includes a pattern - a condition that nodes must satisfy
in order to be eligible. You seem to be suggesting that you would like the
search in some sense to be global - to search all known documents. There
seems to be something of a closed world assumption there. All documents
previously loaded using the document() function? But what does "previously"
mean in XSLT - there's no defined order of execution.


Consider

<xsl:variable name="doc1" select="document('foo.xml')"/>
<xsl:variable name="bbb" select="key('k', 93.7)"/>

Should $doc1 be searched? Why? It typically isn't loaded until it's needed,
and if no-one ever refers to $doc1 then it never will be loaded.


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

Current Thread