2014-02-12 64 views
0

我試圖使用XSLT複製XML。我的輸入XML包含CDATA部分。輸出去除CDATA並保留其內容。我想只做一個輸入XML(包括CDATA標籤)的精確副本。善意幫助。在目標xml中刪除CDATA

回答

0

只要CDATA不包含任何具有特殊含義的字符,在保持內容完整的情況下剝離CDATA不會改變任何內容,只要涉及XML語義。所以從XML處理器的角度來看,您創建一個精確的副本。如果你想保持字節不變,不要使用XML解析器。

+0

我的輸入XML屬於特定的架構。 CDATA包含另一個XML。所以我的輸出在驗證時可能不是正確的。有沒有什麼辦法可以直接發送輸入。或者可以是我可以在我的xsl中使用的任何Java代碼?我必須在xsl中完成它。請幫忙。 –

0

您可以嘗試在<xsl:output>元素上使用cdata-section-elements屬性。該屬性採用空白分隔的元素名稱列表(QNames),其文本節點子節點應該使用CDATA節輸出。

欲瞭解更多信息,請參閱http://www.w3.org/TR/xslt#output