我开始学习 xml 和 xsl,但由于某种原因,我无法让 xpath 在 xsl 中为我工作。我的 xml 文档的结构是否错误,或者为什么游戏 14 的价格没有显示在表格中?
我的 xsl 尝试非常简单:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy® -->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My Games</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Game Name</th>
<th>Price</th>
</tr>
<tr>
<td><xsl:value-of select=
"Xboxspellen/Spellen/Spel[14]/Spelnaam"/></td>
<td><xsl:value-of select=
"Xboxspellen/Spellen/Spel[14]/Prijs"/></td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
xml 代码的较短版本:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="Xboxspellen.xsl"?>
<Xboxspellen xmlns="http://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3schools.com
Xboxspellen.xsd">
<Genres>
...
<Genre id="Adv">
<Genrenaam>Adventure</Genrenaam>
<Spel idref="12"/>
<Spel idref="13"/>
<Spel idref="14"/>
</Genre>
</Genres>
<Spellen>
...
...
<Spel id="14">
<Spelnaam>Omerta: city of gangsters</Spelnaam>
<Uitgever>Kalypso</Uitgever>
<Prijs>49.98</Prijs>
<Leeftijd>16</Leeftijd>
<Aankoop>
<Dag>28</Dag>
<Maand>04</Maand>
<Jaar>2011</Jaar>
</Aankoop>
<Afbeelding>spel14.jpg</Afbeelding>
</Spel>
</Spellen>
</Xboxspellen>
我已经尝试了几个小时,但似乎没有找到答案,如果有人可以帮助我,我将非常感激:D