こんにちは私は次の入力のサンプルに基づいてテーブルを返そうとしています:
<Table TableLevel="1" TableNumber="1" TableTitle="">
<TableRow TableRowLevel="1" RowTitle="" TableRowNumber="1" class="Even">
<TableHeader width="33" class="tableheadercell">
<Paragraph>Account Name</Paragraph>
</TableHeader>
<TableHeader width="10" class="tableheadercell">
<Paragraph>Type</Paragraph>
</TableHeader>
<TableHeader width="57" class="tableheadercell">
<Paragraph>Additional Information</Paragraph>
</TableHeader>
</TableRow>
<TableRow TableRowLevel="1" RowTitle="" TableRowNumber="2" class="OddLegacy">
<TableCell>
<Paragraph>ANONYMOUS LOGON</Paragraph>
</TableCell>
<TableCell>
<Paragraph>Group</Paragraph>
</TableCell>
<TableCell>
<UnorderedList UnorderedListLevel="1" class="compactList" UnorderedListNumber="1">
<ListItem>comment: ANONYMOUS LOGON</ListItem>
<ListItem>group-id: 7</ListItem>
</UnorderedList>
</TableCell>
</TableRow>
<TableRow TableRowLevel="1" RowTitle="" TableRowNumber="3" class="Even">
<TableCell>
<Paragraph>Administrators</Paragraph>
</TableCell>
<TableCell>
<Paragraph>Group</Paragraph>
</TableCell>
<TableCell>
<UnorderedList UnorderedListLevel="1" class="compactList" UnorderedListNumber="1">
<ListItem>group-id: 544</ListItem>
</UnorderedList>
</TableCell>
</TableRow>
</Table>
次に、私のXSLT:
<xsl:variable name="whiteuserxml">
<item>ANONYMOUS LOGON</item>
</xsl:variable>
<xsl:for-each select="Table">
<table>
<xsl:for-each select="TableRow[not(TableCell/Paragraph = $whiteuserxml/item)]">
<xsl:choose>
<xsl:when test="count(TableCell) = 0"/>
<xsl:otherwise>
<tr>
<xsl:for-each select="TableHeader">
<td><b><xsl:apply-templates select="*"/></b></td>
</xsl:for-each>
<xsl:for-each select="TableCell">
<td><xsl:apply-templates select="*"/></td>
</xsl:for-each>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</table>
</xsl:for-each>
必要な出力:
<table>
<tr>
<td>Administrators</td><td>Group</td><td>the other stufflist</td>
</tr>
</table>
私が抱えている問題は、テーブルが空になった場合にテーブルが作成されるのを防ぐことができず、テーブルに正当な行が含まれているかどうかを判断するまでに、テーブル名を追加するには遅すぎるということです。