Saxon HE 9与Beckers Merge.xslt

时间:2013-12-10 11:07:42

标签: xml xslt merge saxon

我尝试使用saxon9He.jar和Oliver Becker的merge.xslt合并一些xml文件。

在大多数情况下,合并是成功的,但是对于某些元素,实际数据合并在一起,例如:

我期待两种格式为

的文件
<book>
     <publishedDate>
         2013-11-06
     </publishedDate>
 </book>
 <book>
    .....

然而,我得到的是在同一元素中合并在一起的多个发布日期 e.g。

<book>
     <publishedDate>
         2013-11-0622-04-1223-05-05
      </publishedDate>
 </book>
      .....

在某些情况下,可能有二十或三十种不同的元素合并在一起。虽然其他人按照我的要求出来,这很奇怪......

目前我通过脚本调用它如下

java -jar saxon9he.jar f1.xml merge.xslt with=f2.xml > result.xml

xslt是:http://www2.informatik.hu-berlin.de/~obecker/XSLT/merge/merge.xslt.html

有人能告诉我是否有任何标志会强制子元素单独合并? 或者,任何人都可以指出我正确的方向来修改xslt以实现我需要的输出吗?

1 个答案:

答案 0 :(得分:0)

(摘自评论部分以结束问题。)

此XSLT代码(http://www2.informatik.hu-berlin.de/~obecker/XSLT/merge/merge.xslt.html)与Saxon 5.4.1兼容。由于他们的XSLT处理器行为不是“一成不变”并且可能随新版本而改变,这可能会导致您的问题。

如果您提供完整的XML输入示例(在某种程度上减少了长度和复杂性但仍然包含您所面临的问题),我们可以检查其他版本的Saxon。

另一方面,正如@Michael Kay所建议的那样,目前还不清楚这个样式表的目的是否符合您的要求。