2013-12-10 75 views
1

我想通过使用saxon9He.jar和Oliver Becker的merge.xslt将一些xml文件合并在一起。撒克逊HE 9与贝克尔Merge.xslt

对于大部分的合并是成功的但是,对于某些要素的实际数据,例如一起合并:

我期待的格式

<book> 
    <publishedDate> 
     2013-11-06 
    </publishedDate> 
</book> 
<book> 
    ..... 

什么,我不过得到的两个文件是在同一元素中合并在一起的多个发布日期 例如

<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

此XSLT代码与Saxon 5.4.1兼容 - 可能是导致此问题的原因。如果您提供了完整的XML输入示例(长度和复杂度有所降低,但仍包含您所面临的问题),我们可以检查其他版本的Saxon。 –

+0

感谢您的回复,我会在其他版本上尝试,并看到结果的感谢提示! – daark

+1

如果问题仍然存在,则需要准确输入XML以获得帮助。 –

回答

0

(从评论部分采取关闭的问题。)

这XSLT代码(http://www2.informatik.hu-berlin.de/~obecker/XSLT/merge/merge.xslt.html)是撒克逊5.4.1兼容。由于XSLT处理器的行为不是“立于不败之地”的,并且可能会随着新版本而改变,所以这可能会导致您的问题。

如果您提供完整的XML输入示例(虽然长度和复杂度有所降低,但仍包含您所面临的问题),但我们可以检查其他版本的Saxon。

在另一个笔记上,正如@Michael Kay所建议的,目前还不清楚这个样式表的用途是否完全符合您的要求。