У меня есть XML-файл, который я использую XSL для преобразования в HTML-страницу.Я хотел бы перебрать файл XML, который содержит много родительских узлов, а затем перебрать дочерние узлы и отобразить результат в таблице HTML.
До сих пор я мог проходить через родительский узел и успешно возвращать их, но когда я вложил туда for-each цикл, чтобы вернуть атрибуты дочернего узла, я заканчиваювозвращает атрибуты всех дочерних узлов в документе, а не атрибуты, специфичные для родительского узла.
Может кто-нибудь пролить немного света на это.
XML:
<AdminReports xmlns="30/11/2011 09:25:58">
<AdminReport ID="1">
<DataSourceInformation DataSourceID="12" Value="DSI_50"/>
</AdminReport>
<AdminReport ID="2">
<DataSourceInformation DataSourceID="23" Value="DSI_30"/>
</AdminReport>
<AdminReport ID="3">
<DataSourceInformation DataSourceID="34" Value="DSI_20"/>
</AdminReport>
</AdminReports>
XSL:
<table border="1" cellspacing="2" width="800" bgcolor="white">
<xsl:for-each select="/*/*[name()='AdminReport']">
<tr bgcolor="9acd32">
<table><th>Admin Report Num:</th></table>
<table><th><xsl:value-ofselect="@ID"/> </th></table>
</tr>
<tr>
<xsl:for-each select="/*/*/*[name()='DataSourceInformation']">
<table><th>Data Report ID:</th></table>
<table><th><xsl:value-of select="@DataSourceID"/></th></table>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>