1

次の XSL を使用して XML を変換しています。

  <xsl:for-each select="rule">
        <xsl:for-each select="tooling/tools/tool">
          <Cell ss:StyleID="style_8_DarkBlueHeading">
            <Data ss:Type="String">
            <xsl:value-of select="current()"/>
          </Data>
          </Cell>
        </xsl:for-each>
  </xsl:for-each

問題の XML の 2 つのサンプル ノードは次のとおりです。

    <rule id="scr0001" type="Software/Firmware">
    <tooling>
      <tools>
        <tool coverageLevel="Full" checkers="" comment="">PC-Lint v9.00</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">RSM v7.75</tool>
        <tool coverageLevel="Full" checkers="" comment="">Insight v9.2</tool>
        <tool coverageLevel="Full" checkers="" comment="">Logiscope v6.6</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">Compass/ROSE v0.9.5a</tool>
        <tool coverageLevel="Full" checkers="" comment="">TBsecure v8.1.1</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">Code sonar v3.5</tool>
      </tools>
    </tooling>
    </rule>
    <rule id="scr0002" type="Software/Firmware">
    <tooling>
      <tools>
        <tool coverageLevel="Unknown" checkers="" comment="">Insight v9.2</tool>
        <tool coverageLevel="None" checkers="" comment="">FxCop v10.0</tool>
        <tool coverageLevel="None" checkers="" comment="">CodeIt.Right v2.0</tool>
        <tool coverageLevel="None" checkers="" comment="">dotTEST v9.2.1</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">Splint v3.1.2</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">Compass/ROSE v0.9.5a</tool>
        <tool coverageLevel="Full" checkers="" comment="">TBsecure v8.1.1</tool>
        <tool coverageLevel="Unknown" checkers="" comment="">Code sonar v3.5</tool>
      </tools>
    </tooling>
    </rule>

「ツール」ノードの一部は共通であり、一部は独自のものであることがわかります。私が達成しようとしているのは、生成された Excel ファイルでツール ノードの一意のセットを取得することです。

現在、Excel ファイルにはすべてのノードが列としてリストされています。

ご指導いただければ幸いです。

よろしく

4

0 に答える 0