0

我打算使用 xquery/xpath 环境生成一个 HTML5 页面......下面是我的页面模板功能。

(: Displays the page :) declare function mobunpage:display-page($pageinfo as element()) as element() { <!DOCTYPE HTML > <html> {mobunpage:get-head($pageinfo)} <body> {mobunpage:get-foot($pageinfo)} </body> </html> };

我得到了错误:

“加载模块 mobunpage 时发现错误:从 modules/mobunpage.xqm 加载模块时发现错误:意外字符:'!'”

我在 eXist XML 数据库上运行,当我添加没有 doctype 的页面工作正常并显示解析的变量时出现上述错误。任何人都知道如何解决此类错误。转义并不能解决问题并尝试了文档中的几个功能(http://www.w3.org/TR/xpath-functions/),但到目前为止没有运气。肯定会感谢一些帮助。谢谢!

4

1 回答 1

3

<!DOCTYPE HTML >不是有效的XQuery 语法。

如果您的 XQuery 引擎支持定义序列化选项,那么将有选项 doctype-system 和 doctype-public 来设置生成的 XML/HTML 的系统 ID 和公共 ID。它不太可能支持新语法,但您应该能够使用替代 doctype-system="about:legacy-compat" ,如冗长的线程Set HTML5 doctype with XSLT中所述

于 2011-07-19T16:54:34.603 回答