We have an API Data Page
generating HTML page as in the image below. The XSLT transformation has XsltEngine set as XslTransform. When we switch it to XslCompiledTransform (which is automatic from version 2025.3), the HTML page stops to work.
The transformation looks like this…
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:AS="http://schema.advantages.cz/AsapFunctions"
xmlns:date="http://exslt.org/dates-and-times" exclude-result-prefixes="AS date">
<xsl:template match="ROOT">
<ROOT>
<html>
<head>
<title>A</title>
<script src="../../ttdcust/js/jquery-1.9.1.min.js" />
<script src="../../ttdcust/js/apiSubstrateOutput.js" />
<script src="../../ttdcust/js/jquery-ui.min.js" />
<script src="../../ttdcust/js/jquery-ui-timepicker-addon.js" />
<script src="../../ttdcust/js/jquery.dataTables.min.js" />
<script src="../../ttdcust/js/dataTables.bootstrap.min.js" />
<link rel="stylesheet" href="../../ttdcust/css/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/substrateOutput.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/jquery-ui-timepicker-addon.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/dataTables.bootstrap.min.css" />
</head>
<body>
<h1>Dodavatel Tereos TTD, a.s.</h1>
</body>
</html>
</ROOT>
</xsl:template>
</xsl:stylesheet>
The transformation result in Architect looks like this:
<?xml version="1.0" encoding="utf-8"?>
<ROOT>
<html>
<head>
<title>A</title>
<script src="../../ttdcust/js/jquery-1.9.1.min.js" />
<script src="../../ttdcust/js/apiSubstrateOutput.js" />
<script src="../../ttdcust/js/jquery-ui.min.js" />
<script src="../../ttdcust/js/jquery-ui-timepicker-addon.js" />
<script src="../../ttdcust/js/jquery.dataTables.min.js" />
<script src="../../ttdcust/js/dataTables.bootstrap.min.js" />
<link rel="stylesheet" href="../../ttdcust/css/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/substrateOutput.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/jquery-ui-timepicker-addon.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="../../ttdcust/css/dataTables.bootstrap.min.css" />
</head>
<body>
<h1>Dodavatel Tereos TTD, a.s.</h1>
</body>
</html>
</ROOT>
The output in browser depends on engine type of transformation.
If the transformation engine is XslTransform the html source in browser looks like this :
You can see the
<head>, <body>, <root>
elements are in different places, but the code syntax is correct. The page is shown in the browser.
If the transformation engine is XslCompiledTransform the html source in browser looks like this :
You can see the
<head>, <body>, <root>
elements are in different places as well, but there are also extra end elements and the code syntax is incorrect - see the arrows in the picture. The page is NOT shown in the browser - blank page.The XslTransform result is from version 2024.7.0.3446
The XslCompiledTransform result is from version 2025.3.0.3759