繁体   English   中英

XSLT 序列号生成

[英]XSLT Sequence Number Generation

我正在使用 XSLT 2.0 从 XMl 准备一个平面文件。 我的输入 XML 是

<city>
  <family>
    <parent>A</parent>
    <child>A1</child>
  </family>
  <family>
    <parent>A</parent>
    <child>A2</child>
  </family>
  <family>
    <parent>B</parent>
    <child>B1</child>
  </family>
  <family>
    <parent>B</parent>
    <child>B2</child>
  </family>
  <family>
    <parent>B</parent>
    <child>B3</child>
  </family>
  <family>
    <parent>C</parent>
    <child>C1</child>
  </family>


 </city>

Expected Output
-----------------
01 A 
02 B
03 C

我必须对父项进行分组,并且每个父项在平面文件中都有一个条目,并且它应该具有正确的序列号。 我无法正确地生成序列。

假设您使用for-each-group然后输出和格式化position()就足够了:

  <xsl:template match="/">
      <xsl:for-each-group select="city/family" group-by="parent">
          <xsl:value-of select="concat(format-number(position(), '00'), ' ', current-grouping-key(), '&#10;')"/>
      </xsl:for-each-group>
  </xsl:template>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM