我是XSLT(2.0)的新手,遇到以下情況。我有XML輸入,看起來像這樣:在另一個XSLT轉換中使用結果
<root>
<elem name="elemName1">
<subel1>value</subel1>
<subel1>value2</subel1>
</elem>
<elem name="elemName2">
<subel1>value</subel1>
<subel1>value2</subel1>
</elem>
<elem name="elemName3">
<subel2>value</subel2>
<subel2>value2</subel2>
</elem>
<referencing>
<something type="elemName1"/>
</referencing>
<referencing>
<something type="elemName2"/>
</referencing>
<referencing>
<something type="elemName3"/>
</referencing>
</root>
我需要兩樣東西:
- 改變屬性包含
<subel1>
從elemNameX
到newelemNameX
- 改變所有
<something>
的type
所有<elem>
元素的名稱屬性來引用這些新名稱。
我已經成功地做到第一步,但我與第二
我想經歷的所有\\something\@type
,並試圖找到\\elem[@name='newelemX']
奮鬥。但我無法匹配在第一步創建的修改後的<elem>
。
是否可以匹配不同模板中的一個模板的結果?
你需要比在本例中呈現之外的其他任何屬性被關注?具體而言,您是否需要提供複製您尚未描繪的任何''或''元素的屬性? –
由於沒有關閉''元素,您的示例XML格式不正確。我假設你打算將這些開始標記中的一些改爲結束標記。 –
是的,''還有其他我需要保留的屬性。 (在實踐中比我的例子稍微複雜一點,實際上,我創建了名爲'newelemNameX'的新元素'',並且引用'newelemNameX'中的'elemNameX',但自從我解決了這部分之後,我簡化了題)。 –
Kejml