Java eXist db查询:文件:移动返回错误
我开始为我的工作与eXide合作,我不得不说,文档非常差。。。我无法找到此问题的解决方案: 错误:XPTY0004正在检查调用文件中的函数参数1:move($position,$destination):XPTY0004:参数1的实际基数与函数签名中声明的基数不匹配:file:move($original as item(),$destination as item())xs:boolean。应为基数:正是1,得到0。[在第8行第24列,来源:xquery版本“3.1”;导入模块名称空间文件=”http://exist-db.org/xquery/file“让$log登录:=xmldb:login('/db',admin','')用于集合('/db/fao/fao)中的$doc-resolution@lime.com')let$position:=文档uri($doc)[包含(,'main.xml')]let$destination:=替换($position,'main.xml','main'))返回文件:移动($position,$destination)] 我做错了什么?问题是:Java eXist db查询:文件:移动返回错误,java,xml,xquery,exist-db,Java,Xml,Xquery,Exist Db,我开始为我的工作与eXide合作,我不得不说,文档非常差。。。我无法找到此问题的解决方案: 错误:XPTY0004正在检查调用文件中的函数参数1:move($position,$destination):XPTY0004:参数1的实际基数与函数签名中声明的基数不匹配:file:move($original as item(),$destination as item())xs:boolean。应为基数:正是1,得到0。[在第8行第24列,来源:xquery版本“3.1”;导入模块名称空间文件=”
xquery version "3.1";
import module namespace file = "http://exist-db.org/xquery/file";
let $log-in := xmldb:login('/db', '*********', '*********')
for $doc in collection('/db/******/******@*****.****')
let $position := document-uri($doc)[contains(., 'main.xml')]
let $destination := replace($position, 'main.xml', 'main')
return file:move($position,$destination)
谢谢。您可以尝试以下方法 XQuery
...
let $position := base-uri($doc)[ends-with(., 'main.xml')]
您需要检查分配给
$position
变量的值。