鉴于此 XML,我需要使用正确的 @relatedId 填充“标志端”元素,以便我可以使用 xsl:iterate 从标志中重新创建元素。我知道如何创建元素,但我不知道如何在每个标志端正确填充 @associatedId。(由于我们使用的第三方软件,这是必要的。我总是保证相同数量的开始和结束标志,并且适当数量的结束标志将遵循适当数量的开始标志。)
<outer>
hello
<flag-start associatedId="test3"/>
<flag-start associatedId="test"/>
<span>wor<b>---</b>ld</span>
<flag-start associatedId="test4"/>
<flag-end/>
<flag-start associatedId="test2"/>
<flag-end/>
<flag-end/>
<flag-end/>
<flag-start associatedId="test5"/>
<flag-end/>
some more text
</outer>
这是所需的 XML 输出:
<outer>
hello
<flag-start associatedId="test3"/>
<flag-start associatedId="test"/>
<span>wor<b>---</b>ld</span>
<flag-start associatedId="test4"/>
<flag-end associatedId="test4"/>
<flag-start associatedId="test2"/>
<flag-end associatedId="test2"/>
<flag-end associatedId="test"/>
<flag-end associatedId="test3"/>
<flag-start associatedId="test5"/>
<flag-end associatedId="test5"/>
some more text
</outer>