2013-12-10 115 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所建議的,目前還不清楚這個樣式表的用途是否完全符合您的要求。