У меня есть xml для сложного автомобильного элемента, и я не могу создать его XSL. Это дает мне несоответствующий результат, потому что у него сложный элемент двигателя, а у «двигателя» сложный элемент «топлива». Вот мой xml:
<?xml version="1.0" encoding="utf-8"?>
<Cars>
<Car Color="Silver">
<Brand>Ford</Brand>
<Model>Fusion</Model>
<Year>2018</Year>
<VIN>12345678</VIN>
<Engine Valves="16">
<Fuel>
<Type>Gas</Type>
<MPG>26</MPG>
</Fuel>
<Size>1.8</Size>
<Cylinders>4</Cylinders>
</Engine>
<Owners>
<Owner>
<First>Rana</First>
<Last>Ibrahim</Last>
</Owner>
<Owner>
<First>Mohamed</First>
<Last>Elsekhily</Last>
</Owner>
</Owners>
</Car>
<Car Color="Red">
<Brand>BMW</Brand>
<Model>XS</Model>
<Year>2019</Year>
<VIN>98765432</VIN>
<Engine Valves="">
<Fuel>
<Type>Gas</Type>
<MPG>20</MPG>
</Fuel>
<Size>2.1</Size>
<Cylinders>3</Cylinders>
</Engine>
<Owners>
<Owner>
<First>Jone</First>
<Last>Smith</Last>
</Owner>
<Owner>
<First>Anne</First>
<Last>Arlond</Last>
</Owner>
</Owners>
</Car>
</Cars>
Моя пробная версия xsl:
`<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html><body>
<h1>Cars</h1>
<table border="1">
<tr bgcolor="yellow">
<td><b>Brand</b></td>
<td><b>Model</b></td>
<td><b>Year</b></td>
<td><b>VIN</b></td>
<td><b>Engine</b></td>
</tr>
<xsl:for-each select="Cars/Car">
<xsl:sort select="Brand" />
<tr style="font-size: 10pt; font-family: verdana">
<td><xsl:value-of select="Brand"/></td>
<td><xsl:value-of select="Model"/></td>
<td><xsl:value-of select="Year"/></td>
<td><xsl:value-of select="VIN"/></td>
<td><xsl:value-of select="Engine"/></td>
</tr>
</xsl:for-each>
</table>
<h1>Engines</h1>
<table border="1">
<tr bgcolor="yellow">
<td><b>Fuel</b></td>
<td><b>Size</b></td>
<td><b>Cylinders</b></td>
</tr>
<xsl:for-each select="Engines/Engine">
<tr style="font-size: 10pt; font-family: verdana">
<td><xsl:value-of select="Fuel"/></td>
<td><xsl:value-of select="Size"/></td>
<td><xsl:value-of select="Cylinders"/></td>
</tr>
</xsl:for-each>
</table>
<h1>Fuels</h1>
<table border="1">
<tr bgcolor="yellow">
<td><b>Type</b></td>
<td><b>MPG</b></td>
</tr>
<xsl:for-each select="Fuels/Fuel">
<tr style="font-size: 10pt; font-family: verdana">
<td><xsl:value-of select="Type"/></td>
<td><xsl:value-of select="MPG"/></td>
</tr>
</xsl:for-each>
</table>
<h1>Owners</h1>
<table border="1">
<tr bgcolor="yellow">
<td><b>First</b></td>
<td><b>Last</b></td>
</tr>
<xsl:for-each select="Owners/Owner">
<xsl:sort select="First" />
<tr style="font-size: 10pt; font-family: verdana">
<td><xsl:value-of select="First"/></td>
<td><xsl:value-of select="Last"/></td>
</tr>
</xsl:for-each>
</table>
</body> </html>
</xsl:template>
</xsl:stylesheet>
`
Любая помощь будет оценена. Мне нужен xsl для того, чтобы создать для него HTML,