This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: MSXML3/4 and Version 1.1 support


Hi Andrew,

> Are Version 1.1 extensions not supported by MSXML3/4?? Am I going to
> have to resort to the longwinded namespace solution?

MSXML versions 3 and 4 don't support the XSLT 1.1 working draft. To
get the particular functionality that the example you give uses, you
have to use the msxsl:node-set() extension function to convert the
result tree fragment held by the variable into a node set, as follows:

<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                xmlns:msxsl="urn:schemas-microsoft-com:xslt"
                extension-element-prefixes="msxsl">

...
  <xsl:value-of
     select="msxsl:node-set($directions)/direction[@nr=@direction]"/>
...

</xsl:stylesheet>

Note that the predicate that you're using will always be false,
because the direction elements don't have 'direction' attributes, so
there are none whose 'nr' attribute equals their 'direction'
attribute. You probably meant the 'direction' attribute of the
*current* node, in which case you need:

  msxsl:node-set($directions)/direction[@nr = current()/@direction]

I hope that helps,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]