首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将多个值的Xslt映射为一个

将多个值的Xslt映射为一个
EN

Stack Overflow用户
提问于 2021-11-17 18:23:50
回答 1查看 62关注 0票数 0

我有如下所示的源XML

代码语言:javascript
复制
<Input>    
<email-addresses>
    <type>work</type>
    <value>tst@work.com</value>
    </email-addresses>
    <email-addresses>
    <type>personal</type>
    <value>tst@personal.com</value>
    </email-addresses>
</Input>

输出如下所示

代码语言:javascript
复制
<output>
<emailwork>tst@work.com</emailwork>
<emailper>tst@personal.com</emailper>
</output>

我在代码中使用下面的xslt映射来获得上面的输出

代码语言:javascript
复制
 <output>
<xsl:if test "Input/email-address/type='work'">
<emailwork>
<xsl:value of select= "Input/email-address/value">
</emailwork>

</xsl:if>
<xsl:if test "Input/email-address/type='personal'">
<emailper>
<xsl:value of select= "Input/email-address/value">
</emailper>

</xsl:if>
 </output>

但是它总是返回出现在有效负载中的第一个emailaddress。

请帮帮忙

EN

回答 1

Stack Overflow用户

发布于 2022-08-18 12:51:06

您需要在有效负载中迭代,以便xslt能够遍历所有记录。尝试在xslt中添加for-每个循环。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70009679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档