环境:eXist 4.2.1-xquery 3.1-xslt 3.0-TEI-XML文档
我正在尝试使用eXide界面对带有XSL文件和HTML输出的TEI-XML文档进行转换。
直到现在,我一直在Oxygen中开发XML文档及其XSL转换。消除氧气中的转化或使用终端,都可以正常工作。现在,我正在使用eXist(将包含数千个TEI-XML文档)准备一个Web应用程序。
我正在尝试使用以下xquery测试在eXist中触发相同的转换:
let $result := transform:transform(doc("xmldb:exist://db/apps/deheresi/resources/documents/ms609_0001.xml"), doc("xmldb:exist://db/apps/deheresi/resources/documents/document_style.xsl"), ())
return $result?output
eXide仅向我返回此信息:
exerr:ERROR Unable to set up transformer: Stylesheet compilation failed: 62 errors reported [at line 3, column 16]
我是eXist DB的新手,还无法弄清楚如何获取错误原因。
如何在eXist中访问错误详细信息(详细日志?)? (我搜索过我的书和在线文档,但没有成功;例如https://exist-db.org/exist/apps/doc/xsl-transform根本无法解决错误。)
对于氧气和末端转化,我使用Saxon 9he。我了解eXist使用相同的内容吗?
注意:我的文档都按照与计算机上的设置相同的eXist集合进行组织,因此所有相对位置均应正常运行?
答案 0 :(得分:3)
首先-将doc
和collection
函数用于数据库中的路径时,您不需要XML:DB URI,而只需使用:
transform:transform(doc("/db/apps/deheresi/resources/documents/ms609_0001.xml"),
doc("/db/apps/deheresi/resources/documents/document_style.xsl"), ())
错误应该位于exist.log
中,默认位置为$EXIST_HOME/webapp/WEB-INF/logs
。否则,您可能会在运行eXist-db的终端会话的“标准输出”上找到它们。
如果您使用YAJSW(服务包装程序)运行eXist-db,则可能还需要检查$EXIST_HOME/tools/yajsw/logs
。