我有以下xml文档
XML
<Wix>
<Fragment>
<DirectoryRef Id="TARGETDIR">
<Component Id="JA" Name="MY_XYZ">
<File/>
</Component>
<Component Id="ZH" Name="MY_ABC">
<File/>
</Component>
</Fragment>
<Fragment>
<ComponentGroup Id="COMPREF">
<ComponentRef />
<ComponentRef />
</ComponentGroup>
</Fragment>
</Wix>
这里我想读取组件属性Name的值,并使用该值来设置ComponentRef的属性。所以componentref应该是这样的
所需输出
<ComponentRef SomeAttr="MY_XYZ"/>
<ComponentRef SomeAttr="MY_ABC"/>
如何使用XSLT实现这一目标?
答案 0 :(得分:0)
根据您的其他需求,您可以使用strip-space和apply-templates来使用position()
来使用ComponentRef
的{{1}}子元素的索引来查找{{1}具有相同索引的子项:
ComponentGroup
或者您需要将第二个模板写为
Component