0
我有下面的XML文件,我正在嘗試編輯它。該文件開發不佳,因此在整個文檔中包含多個名稱空間聲明和關閉根標記。反正有這些額外的命名空間和結束標籤,只留下1名稱空間在文件的頂部和1結束標籤在底部?將多個XML文檔流組合成一個有效文檔
下面是該文件的一個簡化版本:
<?xml version="1.0" encoding="UTF-8"?>
<p:demographic xmlns:p="http://crown.esrd.net/crown"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://crown.esrd.net/crown crown.xsd">
<patient>
<lastName>JOHNS</lastName>
<firstName>JASON</firstName>
<middleInitial>Y</middleInitial>
</patient>
</p:demographic>
<?xml version="1.0" encoding="UTF-8"?>
<p:demographic xmlns:p="http://crown.esrd.net/crown"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://crown.esrd.net/crown crown.xsd">
<patient>
<lastName>CALDWELL</lastName>
<firstName>PENNY</firstName>
<middleInitial>Y</middleInitial>
</patient>
</p:demographic>
該輸入實際上並不是一個有效的XML文件,這使問題標題有點誤導。編輯。 –
...另外,由於輸入不是有效的文檔,因此無法使用XSLT完成(或者,無法單獨使用XSLT完成)。是否有你的問題標記爲「xslt」的原因? –
這是事情 - 以確保正確的方式來做這件事(例如,不要在'CDATA'部分引用''字符串)是_hard_。事實上,如果我打算這樣做,我可能會使用一個真正的XML解析器,記錄文件偏移量以檢測每個錯誤,尋找下面的錯誤並重新運行以識別片段偏移量,爲每個片段提供內容,合併他們......輸出將被保證是正確的,不像更天真的方法,但它也比我要做的StackOverflow上的答案更多的工作。 –