1
私は今、XSLT 1.0で働いている、と私はcorrectly.My XMLをグループ化する問題を抱えていますが変更することはできません、それは次のようになります。XSLTグループ固有の兄弟
<Analysis>
<comment>Test 1</comment>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<comment>Start 2nd Phase</comment>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<comment>Test 2</comment>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<comment>Start 2nd Phase</comment>
<Action>
<Result>Failed</Result>
</Action>
<comment>Start 3rd Phase</comment>
<Action>
<Result>Failed</Result>
</Action>
<comment>Test 3</comment>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<comment>Test 4</comment>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
<comment>Start 2nd Phase</comment>
<Action>
<Result>Failed</Result>
</Action>
<Action>
<Result>Passed</Result>
</Action>
</Analysis>
私は現在、印刷されていたコードテストの中で失敗したことが分かったら失敗ですが、それは一度だけ行います。しかし、今は各コメントの下にあります。コメントには「テスト」が含まれているわけではありません。
<xsl:key name="actions" match="Action" use="generate-id(preceding-sibling::comment[1])" />
<xsl:template match="/Analysis">
<table>
<xsl:for-each select="comment">
<tr>
<td>
<xsl:if test="starts-with(text(),'Test')">
<xsl:value-of select="."/>
</xsl:if>
</td>
</tr>
<xsl:if test="key('actions', generate-id())[Result='Failed']">
<tr>
<td>Failed</td>
</tr>
</xsl:if>
</xsl:for-each>
</table>
</xsl:template>
「先行兄弟::コメント[1]」を「テスト」で始まるコメントまたは「テスト」を含むコメントにのみ使用する方法はありますか?重要な情報が散在している重要ではないコメントの数が異なります。上記の例と同じように、私は私が現在持っているコードで、私は任意の助けをいただければ幸いです
取得、しかし
Test 1
Failed
Test 2
Failed
Test 3
Test 4
Failed
ようになり、出力を見てみたいです。
、どうもありがとうございました。 – Dschmied