XSLT:从子元素复制属性
输入:
<a q='r'>
<b x='1' y='2' z='3'/>
<!-- other a content -->
</a>
期望的输出:
<A q='r' x='1' y='2' z='3'>
<!-- things derived from other a content, no b -->
</A>
有人能给我一个食谱吗?
Input:
<a q='r'>
<b x='1' y='2' z='3'/>
<!-- other a content -->
</a>
Desired output:
<A q='r' x='1' y='2' z='3'>
<!-- things derived from other a content, no b -->
</A>
Could someone kindly give me a recipe?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
简单的。
如果您没有要处理的
的其他子项,则不需要
。请注意,
将源节点插入到输出中,未更改,|
一次选择多个不相关的编辑:如果您需要缩小复制的属性以及保留的属性,请使用此(或其变体):
或者甚至
注意括号如何使谓词应用于所有匹配的节点。
Easy.
The
<xsl:apply-templates />
is not necessary if you have no further children of<a>
you want to process.Note
<xsl:copy-of>
to insert source nodes into the output unchanged|
to select several unrelated nodes at onceEDIT: If you need to narrow down which attributes you copy, and which you leave alone, use this (or a variation of it):
or even
Note how the parentheses make the predicate apply to all matched nodes.
XSL
输出
XSL
output