Re: Accessing a node name from within <xsl:attribute>

Subject: Re: Accessing a node name from within <xsl:attribute>
From: Nick Browne <NickBrowne@xxxxxxxxxxxxxxx>
Date: Thu, 06 Jul 2000 22:09:14 +0100
Kate, in IE5 try  :

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl";>
 <xsl:template match="/">
  <xsl:apply-templates select="metainfo/*"/>
 </xsl:template>
 <xsl:template match="metainfo/*">
 <xsl:element name="META">
    <xsl:attribute name="name"><xsl:node-name/></xsl:attribute>
    <xsl:attribute name="content"><xsl:value-of
select="text()"/></xsl:attribute>
  </xsl:element>
  </xsl:template>
</xsl:stylesheet>

xsl:node-name is an MS 'special'.

A more compliant version is :

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

 <xsl:template match="metainfo">
  <xsl:apply-templates/>
 </xsl:template>
 <xsl:template match="metainfo/*">
  <xsl:element name="META">
   <xsl:attribute name="name"><xsl:value-of select="name()"/></xsl:attribute>
   <xsl:attribute name="content"><xsl:value-of
select="text()"/></xsl:attribute>
  </xsl:element>
 </xsl:template>
</xsl:stylesheet>

Though the latter definitely doesn't work with IE5. Probably OK with the latest
MSXML release though !


Nick Browne
Slipstone Ltd

Kate Olding wrote:

> Hello
>
> I am new to XSL. I am looking into transforming XML into HTML using XSL for
> displaying in Internet Explorer 5. To create the meta tags I want to copy
> the element name used to be the value of the name attribute and then use

etc.



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


Current Thread