每当我运行以如下方式开始的XSLT页面时,就会发生标题错误:
<?xml version="1.0" encoding="windows-1256"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:include href="../header.xsl"/> <xsl:template match="/"> <xsl:call-template name="pstyle"/> <xsl:call-template name="Validation"/> <xsl:variable name="strLang"> <xsl:value-of select="//lang"/> </xsl:variable> <!-- ////////////// Page Title ///////////// --> <title> <xsl:value-of select="//ListStudentFinishedExam.Title"/> </title>
注意:我删除了第一行之前的所有前导空格,但仍会发生错误!
基于Xerces的工具将发出以下错误
The processing instruction target matching "[xX][mM][lL]" is not allowed.
当在XML文件顶部以外的任何地方遇到XML声明时。
这是有效的诊断消息;在这种情况下,其他XML解析器应发出类似的错误消息。
要更正此问题,请检查以下可能性:
<?xml ?>
解决方法:在XML声明之前删除空格或任何其他可见内容。
解决方法:使用HTML上BOM表上W3C页面建议的技术删除BOM 。
<?xml ?>XML
解决方案:以 <?xml不区分大小写的方式搜索,然后从文件中删除除最上面的XML声明之外的所有声明。
<?xml