Re[6]: скопировать ноду с предками и потомками с помощью xsl
От: embla  
Дата: 29.02.08 15:03
Оценка:
L>
L><?xml version="1.0" encoding="utf-8"?>
L><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
L>  <xsl:output method="xml" indent="yes"/>

L>  <xsl:param name="node-name" />

L>  <xsl:template match="*">
L>    <xsl:choose>
L>      <xsl:when test="@name = $node-name">
L>        <xsl:copy-of select="."/>
L>      </xsl:when>
L>      <xsl:when test=".//*[@name = $node-name]">
L>        <xsl:copy>
L>          <xsl:copy-of select="@*"/>

L>          <xsl:apply-templates select="*"/>
L>        </xsl:copy>
L>      </xsl:when>
L>    </xsl:choose>
L>  </xsl:template>
L></xsl:stylesheet>
L>


а как изменить значение атрибута только у потомков искомой ноды?
понимаю, что надо использовать <xsl:attribute name="attr">, но не получается установить только у потомков
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.