<?xml version="1.0" encoding="utf-8"?>
<order>
<press_mow>
<mow_section_id>1</mow_section_id>
<mow_webs>
<mow_web>
<web_number>1</web_number>
</mow_web>
</mow_webs>
</press_mow>
<press_mow>
<mow_section_id>1</mow_section_id>
<mow_webs>
<mow_web>
<web_number>1</web_number>
</mow_web>
</mow_webs>
</press_mow>
<press_mow>
<mow_section_id>2</mow_section_id>
<mow_webs>
<mow_web>
<web_number>1</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
</mow_webs>
</press_mow>
<press_mow>
<mow_section_id>2</mow_section_id>
<mow_webs>
<mow_web>
<web_number>1</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
</mow_webs>
</press_mow>
<press_mow>
<mow_section_id>2</mow_section_id>
<mow_webs>
<mow_web>
<web_number>1</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>2</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
<mow_web>
<web_number>3</web_number>
</mow_web>
</mow_webs>
</press_mow>
</order>
尝试使用 menchian 分组创建唯一的 mow_webs/mow_web/web_number 列表,但是在每个 press_mow 中,我要么只得到 123 一次,要么每个 press_mow 中的所有数字都无法看到我做错了什么,非常感谢任何帮助。
期望的输出
1 = 1
1 = 1
2 = 1,2,3
2 = 1,2,3
2 = 1,2,3
花了几个小时查看此方法的所有解释,并且以前使用效果很好,但在这种情况下看不到我的错误是什么。尝试了以下两种不同的方法。只能使用 xml 1.0。如果我犯了错误,这是我第一次提前道歉。
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:key name="webnoB" match="mow_web" use="web_number" />
<xsl:key name="webnoC" match="mow_webs" use="mow_web/web_number" />
<xsl:template match="order">
******在这里测试********
<xsl:for-each select="press_mow">
SecIdA:<xsl:value-of select="mow_section_id"/>/
<xsl:for-each select="mow_webs">
<xsl:for-each select="mow_web[count(. | key('webnoB', web_number) [1]) = 1]">
WebNoA:<xsl:value-of select="web_number"/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
**************
<xsl:for-each select="press_mow[count(. | key('webnoC', web_number)[1]) = 1]">
secidB:<xsl:value-of select="mow_section_id"/>/
<xsl:for-each select="mow_webs">
<xsl:for-each select="mow_web">
WebNo.B:<xsl:value-of select="web_number"/>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
******TESTING HERE********
</xsl:template>