XSL进行过滤重复



我正在尝试使用XSL生成PDF。但是我不想要重复(不应背对背显示它),而只是为了值=启动。

下面是我显示查询结果(String_1列)的XSL片段。

    <xsl:for-each select="root/query1/row">
                            <fo:table-row height="0.9cm">
                            <xsl:if test="event_name = 'Started'">
                                   <fo:table-cell border-style="solid" border-width="0.5pt" 
                                    number-columns-spanned="5">
                                        <fo:block font-family="Courier" color="Blue" font-size="10pt" font-weight="normal" text-align="center">
                                           <xsl:value-of select="string_1"/>
                                        </fo:block>
                                    </fo:table-cell>    
                                </xsl:if>
    </xsl:for-each>

eg,我的查询1可能会给出:

String_1

=======

开始

进行

完成

开始

开始

进行

进行

完成

我的pdf应该是

==========

开始

进行

完成

开始

进行

进行

完成

对不起,如果我没有提供太多信息。我是XSL的新手。

我不知道,您的输入XML的样子如何,但是您应该能够从此XML

适应
<root>
<query1>
<row>
<string_1>Started</string_1>
</row>
<row>
<string_1>In Progress</string_1>
</row>
<row>
<string_1>In Progress</string_1>
</row>
<row>
<string_1>In Progress</string_1>
</row>
<row>
<string_1>Complete</string_1>
</row>
</query1>
</root>

和此XSLT:

  <xsl:template match="/">
    <xsl:for-each select="root/query1/row">
 #>   <xsl:if test="not(preceding-sibling::*[1]=string_1)">
        <fo:table-row height="0.9cm">
          <!-- <xsl:if test="event_name = 'Started'"> -->
          <fo:table-cell border-style="solid" border-width="0.5pt" number-columns-spanned="5">
            <fo:block font-family="Courier" color="Blue" font-size="10pt" font-weight="normal" text-align="center">
              <xsl:value-of select="string_1" />
            </fo:block>
          </fo:table-cell>
          <!-- </xsl:if> -->
        </fo:table-row>
  #>  </xsl:if>
    </xsl:for-each>
  </xsl:template>

我通过#>突出显示了重要的行。我已经评论了似乎在启动 nodes上进行不同格式的if statement。

preceding-sibling::*[1]为您提供了最后一个处理的节点。它与当前节点的string_1进行了比较。如果它不同(not()),则应成为输出的一部分。

相关内容

  • 没有找到相关文章

最新更新