Я только изучаю XML и XSL, поэтому, пожалуйста, потерпите меня, если это глупый вопрос. Кажется, я не могу найти простой ответ на этот вопрос, поэтому я предполагаю, что совершаю простую ошибку, которую люди, которые пишут руководства, не подумают над этим.
У меня есть следующий XML (здесь только фрагмент), который я извлек из w3c для изучения:
<catalog>My CD Collection
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
</catalog>
А затем следующий XSL:
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="/">
<h2><xsl:value-of select="catalog" /></h2>
</xsl:for-each>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="artist" /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
По какой-то причине XSL не читает закрывающий тег h2 и не читает тег открывающей таблицы, переводя все это в один огромный заголовок.