RE: IDREFS

> I have an application that uses ID/IDREFS (note the plural) I
> know that the
> id() function will pull a list of refs apart for me which is
> great but it
> doesn't seem to work with implementations I've tested of the
> <xsl:key>.
> What I want to do is index all the references to IDs in any attribute.
> <xsl:key> works well with the single IDREF values and I would
> have thought
> that <xsl:key use="id(@ideref)"/> would have also created
> unique entires
> for each value in the list of refs - is this an
> implementation problem or
> is id() and <xsl:key> not meant to work together?

The implementations you've tried are working as specified in XSLT 1.0;
unlike ID values, key values can contain spaces, so a key value is regarded
as a single value, not as a set of space-separated values.

It's too early to say how the introduction of schema data types in XSLT 2.0
is likely to affect this, but thanks for the input.

A personal response, not necessarily representative of XSL WG.

Mike Kay

Received on Wednesday, 4 July 2001 08:51:57 UTC