您好,我正在尝试使用XSLT样式表方法将XML文档元素放入表格格式。
XML文档
<?xml version="1.0"?>
<?xml-stylesheet href="Assignment2.xsl" type="text/xsl"?>
<cars orderid="199564"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="Assignment1.xsd">
<make>Chevy</make>
<model>Colorado</model>
<year>2017</year>
<color>Silver</color>
<engine>
<number_of_cylinders>6</number_of_cylinders>
<fuel_system>fuel injected</fuel_system>
</engine>
<number_of_doors>4</number_of_doors>
<transmission_type>automatic</transmission_type>
<accessories>
<number_of_cylinders>8</number_of_cylinders>
<fuel_system>fuel injected</fuel_system>
</accessories>
</cars>
XLS样式表(包含表格格式)
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2> Car Information </h2>
<table border="1">
<tr>
<th> Make</th>
<th> Model> </th>
<th> Year </th>
<th> Color </th>
<th> No. of Cylinders </th>
<th> Fuel_System </th>
<th> Number of Doors </th>
<th> Transmission Type </th>
</tr>
<xsl:for-each select="cars">
<tr>
<td><xsl:value-of select="make"/></td>
<td><xsl:value-of select="model"/></td>
<td><xsl:value-of select="year"/></td>
<td><xsl:value-of select="color"/></td>
<td><xsl:value-of select="engine/number_of_cylinders"/></td>
<td><xsl:value-of select="engine/fuel system"/></td>
<td><xsl:value-of select="number_of_doors"/></td>
<td><xsl:value-of select="transmission_type"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
我观看了这段YouTube视频https://www.youtube.com/watch?v=BujLy71JY1k,介绍了如何在5分钟内创建XSLT。我看到那个家伙在XML文件本身中将XLS样式表文件链接到XML的位置。起初我以为我错过了这一部分,所以我回去尝试了一下,但并没有解决问题。我对此可能是错的,但我相信我的XML文档和XLS文件的格式都正确且正确。我在这里错过了哪些步骤?
P.S。我认为这没有什么太大的区别,但是我的桌面上的同一目录中同时包含XLS样式表文件和XML文档文件。
当我尝试加载XML文件时,我不断收到此错误消息XML Error loading stylesheet: X Path parse failure: operator expected message
文件路径的位置=(C:\ Users \ Drake \ Desktop \ Exercise 7.4)
Location of the XML and XLS Stylesheet file
谢谢您的反馈Drake!
答案 0 :(得分:0)
替换
<td><xsl:value-of select="engine/fuel system"/></td>
使用
<td><xsl:value-of select="engine/fuel_system"/></td>