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: Changing an attribute wherever it may occur


>      Is there a way to change an attribute in any occurrence 
> in a given
> element, including children?  I have been able to do it 
> recursively, with a
> little knowledge of where the attributes might be, but is it 
> possible to do
> it all at once?  I want to assume that I don't know where the 
> attribute
> will be at.

If you base your stylesheet on the identity template rule

<xsl:template match="node()|@*">
  <xsl:copy>
  <xsl:apply-templates select="@*"/>
  <xsl:apply-templates/>
  </xsl:copy>
</xsl:template>

Then you can define any special processing in additional templates, e.g.

<xsl:template match="@fred">
  <xsl:attribute name="bill">
  <xsl:value-of select="."/>
  </xsl:attribute> 
</xsl:template>

Mike Kay

 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]