I am trying to use the XstlProcessor Class in PHP (version 5.5.19) to perform a xls-transformation. If I execute the script and the result gets printed, only the old xml file with no transformation is printed and it says "This XML file does not appear to have any style information associated with it.".
Part of the script which should perform the transformation:
$xml = new DomDocument;
$xml->load("tmp.xml");
$xsl = new DomDocument;
$xsl->load("bookings.xsl");
$proc = new XsltProcessor;
$proc->importStyleSheet($xsl);
$html = $proc->transformToXML($xml);
if(!$html) die('XLST processing error
');
echo $html;
The XSL-file
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>Booking Overview</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Date</th>
<th>Name</th>
<th>Surname</th>
<th>Street</th>
<th>City</th>
<th>Country</th>
<th>Brand</th>
<th>Model</th>
</tr>
<xsl:for-each select="bookings/booking">
<tr>
<td><xsl:value-of select="@bdate" /></td>
<td><xsl:value-of select="customer/name"/></td>
<td><xsl:value-of select="customer/surname"/></td>
<td><xsl:value-of select="address/street"/></td>
<td><xsl:value-of select="address/city"/></td>
<td><xsl:value-of select="address/country"/></td>
<td><xsl:value-of select="vehicle/brand"/></td>
<td><xsl:value-of select="vehicle/model"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
The XML-file
<?xml version="1.0" encoding="UTF-8"?>
<!-- all bookings-->
<bookings>
<!--booking-->
<booking bdate ="2015-01-14">
<customer>
<name>Josef</name>
<surname>Mongo</surname>
</customer>
<address>
<street>Alberstrasse</street>
<city>Graz</city>
<country>Austria</country>
</address>
<vehicle>
<brand>Audi</brand>
<model>R8</model>
</vehicle>
</booking>
<!--booking-->
<booking bdate ="2014-07-23">
<customer>
<name>Hannelore</name>
<surname>Metutschnik</surname>
</customer>
<address>
<street>Moserhofgasse</street>
<city>Graz</city>
<country>Austria</country>
</address>
<vehicle>
<brand>Fiat</brand>
<model>Punto</model>
</vehicle>
</booking>
<!--booking-->
<booking bdate ="2014-11-20">
<customer>
<name>Josef</name>
<surname>Mongo</surname>
</customer>
<address>
<street>Alberstrasse</street>
<city>Graz</city>
<country>Austria</country>
</address>
<vehicle>
<brand>BMW</brand>
<model>M6</model>
</vehicle>
</booking>
<!--booking-->
<booking bdate ="2014-11-23">
<customer>
<name>Onder</name>
<surname>Graf</surname>
</customer>
<address>
<street>Mariahilferstrasse</street>
<city>Wien</city>
<country>Austria</country>
</address>
<vehicle>
<brand>BMW</brand>
<model>M6</model>
</vehicle>
</booking>
<!--booking-->
<booking bdate ="2014-11-23">
<customer>
<name>Onder</name>
<surname>Graf</surname>
</customer>
<address>
<street>Mariahilferstrasse</street>
<city>Wien</city>
<country>Austria</country>
</address>
<vehicle>
<brand>BMW</brand>
<model>M6</model>
</vehicle>
</booking>
</bookings>