我在XSLT 1.0中建立无冗余依赖关系时遇到问题。我有一个节点类型a
,节点类型b
。 a
依赖于b
- 如果我遇到a
,并且没有b
已经存在,我应该插入一个。此外,我不应该改变任何其他情况。在xslt中建立依赖关系
输入:
<variables>
<var Value="a"/>
</variables>
输出:
<variables>
<var Value="a"/>
<var Value="b"/>
</variables>
我有困难的是,我不知道如何寻找a
和b
相同的模板内。我可以搜索a
,并用a
和b
来代替它,但是当我们都在那里时,我发现自己有冗余。我可以搜索a
或b
,并与一个和b替换的第一个实例,但这时如果我只有b,我会包括一个没有希望。我不知道如何搜索a,然后,如果我找到它,搜索同级节点b
。
好问题,+1。请参阅我的答案,以获得采用最基本的XSLT设计模式的完整,简短且简单的解决方案。也提供了广泛的解释。 :) – 2011-02-14 14:06:57