代码之家  ›  专栏  ›  技术社区  ›  Sai Sooraj

XSLT 1.0中的序列编号

  •  1
  • Sai Sooraj  · 技术社区  · 7 年前

    嗨,需要帮忙吗 元素标记 . 主要地 元素标记 以相同的顺序 座位标签 .

    <book>
    <Seat>
        <seatNumber>12A</seatNumber>
        <Element>1</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12B</seatNumber>
        <Element>3</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12C</seatNumber>
        <Element>4</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12D</seatNumber>
        <Element>5</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12E</seatNumber>
        <Element>7</Element>
        <Number>1</Number>
    </Seat>
    </book>
    

    输出

    <book>
    <Seat>
        <seatNumber>12A</seatNumber>
        <Element>1</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12B</seatNumber>
        <Element>2</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12C</seatNumber>
        <Element>3</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12D</seatNumber>
        <Element>4</Element>
        <Number>1</Number>
    </Seat>
    <Seat>
        <seatNumber>12E</seatNumber>
        <Element>5</Element>
        <Number>1</Number>
    </Seat>
    </book>
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   michael.hor257k    7 年前

    XSLT 1.0

    <xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
    <xsl:strip-space elements="*"/>
    
    <!-- identity transform -->
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>
    
    <xsl:template match="Element">
        <xsl:copy>
            <xsl:number count="Seat"/>
        </xsl:copy>
    </xsl:template>
    
    </xsl:stylesheet>