正在修剪的XSLT空白元素
问题描述:
快速问题。我有一些XML正在修剪的XSLT空白元素
<someXML>
<someNode> </someNode>
<someNode>asdlkjf </someNode>
</someXML>
当我将XSLT应用于此时,第一个节点被修剪为空。第二个是好的,尾随空白不修剪,因为我保留空白:
<someXML>
<someNode></someNode>
<someNode>asdlkjf </someNode>
</someXML>
我的问题是,为什么是第一个节点越来越截断?这听起来很荒谬,但空白节点很重要,需要维护。我正在使用Xalan 2.7.1。这是XSL的工作方式还是有解决方法?
谢谢!
答
使用此XSLT指令:
<xsl:preserve-space elements="*"/>
如果这没有帮助,这意味着XML解析器剥离只有空白文本节点。
为了防止这种情况,在XML文档中使用xml:space="preserve"
属性:
<someXML>
<someNode xml:space="preserve"> </someNode>
<someNode>asdlkjf </someNode>
</someXML>
+0
+1完整答案。 – 2010-12-22 21:03:34
问得好,+1。看到我的答案有两种可能的解决方案 – 2010-12-22 19:05:40