eXist:是否可以将XQuery模块存储在XML文件中?

时间:2011-02-08 00:49:32

标签: module xquery exist-db

您可以在eXist中存储模块,例如以下内容,例如/modules/my.xqm下:

module namespace my = "http://www.example.com/";
declare function my:answerToTheUltimateQuestion() as xs:integer { 42 }

然后将其导入查询,例如:

import module namespace my="http://www.example.com/" 
                        at "xmldb:exist:///db/modules/my.xqm";
my:answerToTheUltimateQuestion()

不是将XQuery存储在“文本文件”中,是否可以将其存储在XML文件中,而XML文件只是XQuery的包装器?我正在考虑一个类似于将查询发送到eXist(<exist:query><exist:text>)时使用的包装器。这样可以更容易地使用期望存储在数据库中的XML数据的工具来操作XQuery模块。

1 个答案:

答案 0 :(得分:3)

您可以将XQueryX格式的XQuery存储到eXist-db中,然后使用eXist-db中的XQueryX W3C规范中的小XQuery和XSLT将其转换为XQuery并执行它。