我正在尝试在 java 程序中运行一些 Xquery 代码,为此我正在使用 Saxon 免费的 java 库。
现在由于某种原因,当我运行此代码时,我收到重复的“重复函数定义”错误——我从 xqueryfunctions.com 下载的“Functx”Xquery 库发生了这个错误。
我不明白这里有什么问题?我直接调用 FunctX 库中的一些函数。
下面给出的是错误日志的一部分——它还提到了“重复函数”的行号——但是,当我转到 2 个行号时,我看到一个行号对应于该函数的开头,而其他行号关闭了该功能。
我正在使用的库位于此 URL -
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.com/functx-1.0.xq
下面给出了错误日志的一部分 -
Error on line 2488 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...ion the duration :) declare#:
Duplicate definition of function functx:total-days-from-duration (see line 2
484 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
Error on line 2502 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...ion the duration :) declare#:
Duplicate definition of function functx:total-hours-from-duration (see line
2498 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
Error on line 2516 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...ion the duration :) declare#:
Duplicate definition of function functx:total-minutes-from-duration (see lin
e 2512 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
Error on line 2530 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...ion the duration :) declare#:
Duplicate definition of function functx:total-months-from-duration (see line
2526 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
Error on line 2544 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...ion the duration :) declare#:
Duplicate definition of function functx:total-seconds-from-duration (see lin
e 2540 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
Error on line 2558 column 4 of functx-1.0.xq:
XQST0034 XQuery static error near #...e string to trim :) declare#:
Duplicate definition of function functx:total-years-from-duration (see line
2554 in
http://e0aad1ab954aa14b69e0-bd55729d8fadb0b3214bfee0a8fb65e0.r16.cf1.rackcdn.c
om/functx-1.0.xq)
现在,查看如上所示的最后一个错误——functx-1.0.xq 中重复函数定义错误的行号是“2558”和“2554”
来自文件 functx-1.0.xq 的第 2554-2558 行的相关代码现在给出如下——
declare function functx:total-years-from-duration
( $duration as xs:yearMonthDuration? ) as xs:decimal? {
$duration div xs:yearMonthDuration('P1Y')
} ;
如何解决此错误?