Xml 如何在XSLT中为每个循环连接两个不同循环中的适当2个元素?
我有下面的XML代码,我正在尝试将每个关键字与它的gnd_id连接起来,但不知道如何将“for each”和“concatenate”实现在一起 输出应为:Test,4354672-9;测试1,4023299-2 这是我的XML:Xml 如何在XSLT中为每个循环连接两个不同循环中的适当2个元素?,xml,xslt,foreach,concatenation,Xml,Xslt,Foreach,Concatenation,我有下面的XML代码,我正在尝试将每个关键字与它的gnd_id连接起来,但不知道如何将“for each”和“concatenate”实现在一起 输出应为:Test,4354672-9;测试1,4023299-2 这是我的XML: <_nested__objekttyp__schlagworte> <objekttyp__schlagworte> <_id>3146</_id> <lk>
<_nested__objekttyp__schlagworte>
<objekttyp__schlagworte>
<_id>3146</_id>
<lk>
<schlagworte date-created="2016-05-03T16:47:48+02:00" date-last-updated="2016-05-03T22:50:15+02:00">
<_id>23</_id>
<keyword>
<de-DE>Test</de-DE>
</keyword>
<gnd_id>4354672-9</gnd_id>
</schlagworte>
</lk>
</objekttyp__schlagworte>
<objekttyp__schlagworte>
<_id>3147</_id>
<lk>
<schlagworte date-created="2016-05-03T17:11:58+02:00" date-last-updated="2016-05-03T22:45:38+02:00">
<_id>24</_id>
<keyword>
<de-DE>Test1</de-DE>
</keyword>
<gnd_id>4023299-2</gnd_id>
</schlagworte>
</lk>
</objekttyp__schlagworte>
3146
23
试验
4354672-9
3147
24
测试1
4023299-2
这是我的XSLT:
<subject>
<xsl:for-each select="objekttyp/_nested__objekttyp__schlagworte/objekttyp__schlagworte/lk/schlagworte/schlagwort">
<xsl:value-of select="de-DE"/>
</xsl:for-each>
<xsl:for-each select="objekttyp/_nested__objekttyp__schlagworte/objekttyp__schlagworte/lk/schlagworte">
<xsl:if test="position() > 1">, </xsl:if>
<xsl:value-of select="gnd_id"/>
</xsl:for-each>
</subject>
,
这样试试
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:template match="/_nested__objekttyp__schlagworte">
<xsl:for-each select="objekttyp__schlagworte/lk/schlagworte">
<xsl:value-of select="keyword/de-DE" />
<xsl:text>, </xsl:text>
<xsl:value-of select="gnd_id" />
<xsl:if test="position() != last()">
<xsl:text>; </xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
,
;
这里没有真正的理由使用连接;您只需将单个值直接放入输出树。好吧,基于您已经发布的代码处理
似乎很容易实现。如果您想要文本输出,为什么样式表中有主题
元素?@MartinHonnen非常好,谢谢,它可以工作。没想到只有一个决定loop@michael.hor257k主题是一个都柏林核心标签,我的文本输出应该在这个标签中