Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将属性添加到<;html>;使用XSLT2.0的根元素_Html_Xslt_Lang_Xsl Stylesheet - Fatal编程技术网

将属性添加到<;html>;使用XSLT2.0的根元素

将属性添加到<;html>;使用XSLT2.0的根元素,html,xslt,lang,xsl-stylesheet,Html,Xslt,Lang,Xsl Stylesheet,是否可以使用XSLT2.0将xml:lang或lang属性放入html根元素 问题是,xsl:stylesheet唯一允许的属性是:id,排除结果前缀,扩展元素前缀,版本,当然还有xmlns。任何xslt处理器都会忽略其他属性 我希望一定有办法扩展元素 非常感谢 代码(本例中为xhtml): 结果如下所示: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1

是否可以使用XSLT2.0将
xml:lang
lang
属性放入html根元素

问题是,
xsl:stylesheet
唯一允许的属性是:
id
排除结果前缀
扩展元素前缀
版本
,当然还有
xmlns
。任何xslt处理器都会忽略其他属性

我希望一定有办法扩展元素

非常感谢

代码(本例中为xhtml):


结果如下所示:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:fn="http://www.w3.org/2005/xpath-functions"
  xmlns:tst="http://www.ma-buwi-fh.de"
  xmlns="http://www.w3.org/1999/xhtml">

您将
样式表
元素(XSLT样式表的根元素)误认为是
html
(html文档的根元素)

您引用的属性是
样式表
元素所允许的属性。参见本规范的相关部分

因此,在输出的
html
元素上指定
lang
属性,而不是在
样式表
元素上

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">

  <xsl:template match="/">
    <html lang="EN">
      <!--HTML content-->
    </html>
  </xsl:template>
</xsl:stylesheet>


如果您想让任何人诊断您的实际问题,您必须显示您的XSLT代码。

在了解到您的假设是错误的之后,您不应该编辑您的问题。这使得在回答中很难遵循推理。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">

  <xsl:template match="/">
    <html lang="EN">
      <!--HTML content-->
    </html>
  </xsl:template>
</xsl:stylesheet>