0

私は XQuery に比較的慣れていません。しかし、私は自分の問題についてかなりの量の調査を行いましたが、何が間違っているのか理解できません。これが私のコードです:

(: XQuery main module :)
xquery version "3.0" encoding "utf-8";

import schema namespace output =  "http://www.w3.org/2010/xslt-xquery-serialization";
import module namespace http = "http://expath.org/ns/http-client";
import module namespace rand = "http://www.zorba-xquery.com/modules/random";

declare variable $URL as xs:string := ();
declare variable $AF_Tok as xs:integer := rand:seeded-random-between(23 (:This is the seed, needs to be randomized too, will fix later.:),
                                                                 0  (:This is the lower bound for every number in the sequence.:),
                                                                 9  (:This is the higher bound for every number in the sequence.:),
                                                                 32 (:This is the number of random numbers in the returned sequence:)
                                                                 );
declare variable $Client_ID as xs:string := ("XXXXX");
declare variable $Client_Secret as xs:string := ("XXXXX");

<test>
    <random_number>{$AF_Tok}</random_number>
</test>

eXist と Sausalito Tools for Eclipse の両方で同じエラーが発生します。誰でもこれをテストして、エラーが発生するかどうか教えてもらえますか? 私は困惑しています、どんな助けもいただければ幸いです。

:6,1: 静的エラー [err:XQST0059]: " http://www.zorba-xquery.com/modules/random ": スキーマ/モジュールのターゲット名前空間が見つかりませんhttp://www.zorba-xquery.com /モジュール/ランダム

これは zorba の問題である可能性があると考えましたが、w3 および expath 名前空間でも同じエラーが発生します。

更新: Mac OS X 10.8 を使用しています。

4

1 に答える 1

0

Zorba モジュールを eXist で単純に使用することはできません。また、HTTP クライアントの EXPath モジュールが eXist でサポートされているとも思えません。プロセッサ (eXist または Sausalito) のドキュメントを参照し、サポートされているモジュールのみを使用してください。それらが組み込みの場合は、import module namespace使用した単純なもので十分ですが、汎用モジュールを含めたい場合は、プロセッサに依存するディレクトリにモジュール ソースを提供する必要もあります。

eXist については、http://exist-db.org/exist/apps/doc/extensions.xmlを参照して、モジュールを含める方法を理解してください。eXist にもランダム関数がありますが、それらは math モジュールに組み込まれています。

于 2013-06-27T07:41:59.913 に答える