xsl:key and document()

1. the description of xsl:key fails to specify where the nodes that
   are being matched come from.  I assume that they are all the nodes
   in the `primary' source document (does this also include attribute,
   namespace, text and processing instruction nodes?)

2. since the match attribute of xsl:key is a pattern, there does not
   seem to be a way to associate keys with `secondary' source
   documents obtained with the document() function.

   all of the documents that I want to obtain using the document()
   function are really databases of various kinds that would greatly
   benefit from the mechanism offered by xsl:key. (e.g. author
   database, global db for cross document references, db of hilited
   code computed by external tool).

   with templates, it is possible to apply-templates to an explicit
   selection of nodes.  I suggest to provide something similar for
   xsl:key:

        <xsl:apply-keys select="..."/>

   would add the nodes selected by "..." to the node set being
   considered for matching.  There is a built in rule:

        <xsl:apply-keys select="//node()"/>

   I believe this is a conservative extension, and the explicit
   statement of the built in rule above also clarifies the semantics.

Sincerely,

-- 
Dr. Denys Duchier			Denys.Duchier@ps.uni-sb.de
Forschungsbereich Programmiersysteme	(Programming Systems Lab)
Universitaet des Saarlandes, Geb. 45	http://www.ps.uni-sb.de/~duchier
Postfach 15 11 50			Phone: +49 681 302 5618
66041 Saarbruecken, Germany		Fax:   +49 681 302 5615

Received on Monday, 16 August 1999 13:05:25 UTC