0
我有一個xml文檔,我正嘗試重新組織和重新格式化。我一直試圖使用氧氣的重構工具來包裝特定元素或元素組。但不是將所需的元素分組在一起,而是單獨包裝每個匹配的元素。我該如何編寫一個XPath表達式,以這種方式定位和分組元素:使用XPath重構氧氣中的xml
使用包裹元素工具將前3個塊元素包裝在一個s元素中。
從這個狀況:
<system>
<n>1057</n>
<chunk>X1</chunk>
<chunk>C6HF5</chunk>
<chunk>Pentafluorbenzol</chunk>
<chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk>
<chunk>Äquimolare Mischung: </chunk>
<chunk/>
<r>[F5]</r>
<c>25°C</c>
<chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk>
向該:
<system>
<n>1057</n>
<s><chunk>X1</chunk>
<chunk>C6HF5</chunk>
<chunk>Pentafluorbenzol</chunk></s>
<chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk>
<chunk>Äquimolare Mischung: </chunk>
<chunk/>
<r>[F5]</r>
<c>25°C</c>
<chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk>
使用XPath表達式:/系統/系統/塊[位置()< 4]〜選擇前3個塊元素並用s標籤包圍它們。然而,當我在重構命令運行此我得到這個:
<system>
<n>1057</n>
<s><chunk>X1</chunk></s>
<s><chunk>C6HF5</chunk></s>
<s><chunk>Pentafluorbenzol</chunk></s>
<chunk>C6H2F41,2,3,5-Tetrafluorbenzol</chunk>
<chunk>Äquimolare Mischung: </chunk>
<chunk/>
<r>[F5]</r>
<c>25°C</c>
<chunk>ΔHM = 1,84 cal/mol Misch. = 7,7 J/mol Misch.</chunk>
凡選擇適當的塊,但單獨包裝每個塊。如果您對如何將s標籤中的所有元素進行分組有所建議,請告訴我們。或者,如果我甚至不應該使用氧氣xml來實現這一點。
您可以在XSLT 3.0樣式表中使用 xsl:template> '來執行這個轉換。 –