W3C home > Mailing lists > Public > xsl-editors@w3.org > July to September 2000

Support of XPointer by XPath/XSLT

From: Eric van der Vlist <vdv@dyomedea.com>
Date: Wed, 13 Sep 2000 08:28:48 +0200
Message-ID: <39BF1EA0.D5E25E7@dyomedea.com>
To: xsl-editors@w3.org
As applications using XPointer (such as XLink and XInclude) are being
developed, I think it will become necessary to be able to derefence
XPointers links within XSLT transformations to retrieve the node-sets
they point and I'd like to suggest adding a new function to implement
this feature.

It's a point I have recently submitted [1] to the
www-xml-linking-comments@w3.org mailing list.

When you find in your source document something like:

<elt xlink:href="doc.xml#id"...
<elt xlink:href="doc.xml#xpointer(//book[isbn='0836217462'])"...
or even 
<elt xlink:href="#xpointer(//book[isbn='0836217462'])"...

it seems quite natural to want to be able to retrieve the node pointed
by "@xlink:href".

XPointer can be seen as an extra level of granularity added on top of
"usual" URIs and using the document() function could seem natural.

However, the fact that a XPointer expression equal to "#id" is pointing
to the node whose ID is "id" in the current document while document("")
is pointing to the current stylesheet could, IMHO, make it quite
confusing if we said that the current document() function was to be used
with XPointers as an argument.

Whatever solution is chosen (using the document() function or adding a
new function), the support of XPointer in XSLT/XPath would require
supporting variable XPath since XPointer is built on XPath and allowing
to write whatever-function(@xlink:href) where
@xlink:href="#xpointer(//book[isbn='0836217462'])" is in fact allowing a
variable XPath expression.

Best regards,



Eric van der Vlist       Dyomedea                    http://dyomedea.com
http://xmlfr.org         http://4xt.org              http://ducotede.com
Received on Wednesday, 13 September 2000 02:27:46 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:44:20 UTC