2017-12-23 5 views
1

私はexist-dbとXQueryの新機能です。存在-dbカーディナリティのパラメータ

exist-db私はこのサイトマップを持っています:カタログ「registranten」にはカタログ「data」(xml-files)と2つのファイル「regBasic.xql」と「regSearch.xql」が含まれています。私はスクリプトregSearch.xqlを使用してXML-ファイルを検索しようとしています

xquery version "3.0"; 

declare option exist:serialize "method=xhtml media-type=text/html"; 
declare variable $pageTitle := "Resultat"; 
declare variable $searchphrase := request:get-parameter("searchphrase",()); 

<html> 
    <head> 
     <meta HTTP-EQUIV="Content-Type" content="text/html; charset=UTF-8"/> 
     <title>{$pageTitle}</title> 
    </head> 
    <body> 
     <h1>{$pageTitle}</h1> 
     <p>Søgestreng eller søgeord: "{$searchphrase}"</p> 
     <ul> 
     { 
      for $p in collection("/db/registranten/data")//grundtvig/indholdsregest/p[ft:query(., $searchphrase)] 
      return 
       <li> 
        from: {string(root($p)/grundtvig/filnavn)}<br/> 
        <i>$p</i> 
       </li> 
     } 
     </ul> 
    </body> 
</html> 

私は、スクリプトを評価するとき、私はこのエラーを取得:「exerr:ERROR XPTY0004:パラメータ2の実際のカーディナリティを関数のシグネチャで宣言されたカーディナリティと一致しません。ft:query(ノードnode()として、$ query(item)node()期待される基数: 100、source:/db/apps/registranten/regSearch.xql] "

スクリプトの意味は何ですか?

答えて

3

あなたの$searchphrase変数は空のシーケンスです。要求しているリクエストパラメータをrequest:get-parameter()に設定していない可能性があります。

関連する問題