【问题标题】:eXist-db query: file:move returning erroreXist-db 查询:文件:移动返回错误
【发布时间】:2020-11-18 16:17:09
【问题描述】:

我开始使用 eXide 来完成我的工作,我不得不说文档很差……我找不到解决这个问题的方法:

err: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"; let $log-in := xmldb:login('/db', 'admin', '') for $doc in collection('/db/lime-fao/fao-resolution@lime.com') let $position : = document-uri($doc)[contains(., 'main.xml')] 让 $destination := replace($position, 'main.xml', 'main') 返回文件:move($position,$destination )]

我做错了什么?这是查询:

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)

谢谢。

【问题讨论】:

  • 您需要检查分配给$position 变量的值。

标签: java xml xquery exist-db


【解决方案1】:

您可以尝试以下方法。

XQuery

...
let $position := base-uri($doc)[ends-with(., 'main.xml')]

【讨论】:

    猜你喜欢
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多