Emacs nXML模式支持XSLT 2.0

13

我在emacs中编辑XSLT 2.0文档时,版本号出现“属性值无效”的错误,即:

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

如果我将“2.0”替换为“1.0”,在emacs中我就不会得到错误提示(但接下来处理样式表时会出现错误)。

emacs不支持XSLT 2.0吗?有没有外部模式可以使用?最糟糕的情况是,即使我只是忍受这个错误,nXML是否仍然可以帮助我正确地处理文档的其他部分?

1个回答

17

Norman Walsh的xslt20.rnc模式应该可以解决问题。请参见https://github.com/ndw/xslt-relax-ng

您可以将xslt.rnc注册为XSLT 1.0和2.0的模式文档(它引用了xslt10.rnc和xslt20.rnc)。


非常完美,感谢您的快速回复!我之前看到过一些旧的关于这些文件的参考资料,但找不到下载它们的网站。我只是将它们复制到了emacs已经有一个单独的xslt.rnc文件的目录中,看起来似乎可以工作...希望这样做是正确的。 - Marc Stober
那个目录是什么?我的emacs没有任何xslt.rnc文件,或者我找不到它们,在nXML模式下也有完全相同的问题。 - Marcus Junius Brutus
模式文件应该放在一个目录中,可以通过文档描述的方式被nXML定位:http://www.gnu.org/software/emacs/manual/html_node/nxml-mode/Locating-a-schema.html - mzjn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接