题
我的问题是,我XML文件包含段的XHTML内,并同时通过它通过XSLT我喜欢它呈现的那些片段不重整。
我已经试图包段在CDATA但是它不工作自从不到和大于翻译来 < 并>而不是被呼应。
什么XSL需要这样做?
解决方案
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
这个被称作"身份的转变"在 XSLT说明书.
其他提示
我跑在这个问题和复制的肯定是最容易使用。身份工作,但是这5行代码,你会需要调用这一模板,不仅把它定义为是在你的XSLT document(否则你可能不会得到什么您预期在你的输出。)
我的主要问题实际上是复制的内容的标签,而不是标签的本身。它实际上很容易解决,但它花了我一点时间找出(也许是因为QtXmlPatterns崩溃相当一点!)
因此,下述副本的签名这里所有的儿童:
<xsl:copy-of select="this/tag/here"/>
但是,最通常你不要这么做因为 <here> 实际上容器,换句话说,它不应该出现在的输出。在这种情况下你可以简单地这样做:
<xsl:copy-of select="this/tag/here/*"/>
这份所有儿童现在标签名 <here>.
假设你xhtml是在一个元素YYY
xsl:副本的
不隶属于 StackOverflow