i 知道它似乎处于停滞状态,但如何能够看到结果xml? 例如,原xml:
<?xml-stylesheet type="text/xsl" href="root.xsl"?>
<root>
<list>
<a>aaaa</a>
<b>bbbb</b>
</list>
</root>
和相应的斜体:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:param name="evalue">cccc</xsl:param>
<xsl:param name="ename">c</xsl:param>
<xsl:output method="xml" encoding="utf-8"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="list">
<xsl:copy>
<xsl:apply-templates/>
<xsl:if test="not(c)">
<xsl:element name="{$ename}"><xsl:value-of select="$evalue"/></xsl:element>
</xsl:if>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
并且希望看到结果:
<?xml-stylesheet type="text/xsl" href="root.xsl"?>
<root>
<list>
<a>aaaa</a>
<b>bbbb</b>
<c>cccc</c>
</list>
</root>
不:
aaaabbbbcccc
i 审判 per: XML:XSLT
use diagnostics;
use XML::XSLT;
my $xsl= root.xsl ;
my $xmlfile= root.xml ;
my $xslt = XML::XSLT->new ($xsl, warnings => 1);
$xslt->transform ($xmlfile);
print $xslt->toString;
$xslt->dispose();
但它的 t工作,即以前从未使用过xslt,而是错了吗?
预先感谢。