目前,我通过外部变量将 2 个数据库的名称提供给我的主 xql 文件。我想将这些值传递给我的任何 XQL 模块。
例如,我可以有一个主脚本导入模块“mylib”
import module namespace mylib = "http://example.org/mylib" at "myLib.xqm";
declare variable $dbName external;
$mylib:print()
然后我用 dbName 外部变量提供主脚本,它可以工作,但我想以某种方式将它传递给我的模块
module namespace mylib = "http://example.org/mylib";
declare variable $mylib:dbName external;
declare function mymod:print() as xs:string {
$mymod:dbName
};
如何将本地 dbName 的值绑定到模块的实例 $myLib:dbName?
我试过了 :
- 使主文件中的变量成为全局变量,以便任何导入的模块都可以读取它们
- 在模块中声明相同的变量并尝试从主类中分配它们,例如声明变量 $mylib:dbname := $dbname
- 将模块变量声明为外部唯一,在我的主脚本中从它们中获取值,然后尝试从那里读取它
任何明显简单的解决方案?或者我是否必须为任何模块静态定义相同的值?