Re[7]: xsl:copy without some nodes
От: akotlyarov Россия  
Дата: 21.09.08 18:34
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, akotlyarov, Вы писали:


A>>Упс. Вдь можно использовать alias .. Я думаю тогда не будет конфликтов ?


L>Alias? А что это такое? Ты сейчас про xslt говоришь или про что-то другое?



Я про то что если в существующий шаблон


<xsl:template match='/'>
 some text : <xsl:value-of select='//searchString'/> --     что то выводится.

?????????????
</xsl:template>


вставить код "вырезки" xml то получится такой вот шаблон


<xsl:template match='/'>
 some text : <xsl:value-of select='//searchString'/> --     что то выводится.

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


Это ведь не валидно.

P.S. то что выделено курсивом — уже сформировано перед вставкой блока который выводит чать xml.

Но в w3c recommendation я прочитал что можно сделать так

<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:axsl="http://www.w3.org/1999/XSL/TransformAlias">

<xsl:namespace-alias stylesheet-prefix="axsl" result-prefix="xsl"/>

<xsl:template match="/">
<axsl:stylesheet>
<xsl:apply-templates/>
</axsl:stylesheet>
</xsl:template>

<xsl:template match="block">
<axsl:template match="{.}">
<fo:block><axsl:apply-templates/></fo:block>
</axsl:template>
</xsl:template>

</xsl:stylesheet>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.