Sehr geehrte Damen und Herren,
 
ich bitte um Unterstützung bei der Lösung einer kleinen Herausforderung.
Ich habe ein Modul in das Verzeichnis „BaseXRepo“ eingefügt. Hier ist den Inhalt der Datei:
 
xquery version "1.0";
module namespace m = 'http://basex.org/modules/hello';
declare function m:getGroups() {
  for $re in //email-group
  return $re
};
declare function m:say() {
 'hallo world!'
};
 
Nun möchte ich die Funktion getGroups() abfragen:
 
import module namespace m = 'http://basex.org/modules/hello' at 'mail-dispather.xqm';
m:getGroups()
 
Und ich bekomme die Fehlermeldung:
 
Error:
Stopped at /home/admin/BaseXRepo/mail-dispather.xqm, 6/14:
[XPDY0002] root(): no context value bound.
Stack Trace:
- /home/admin/BaseXRepo/request.xq, 3/13
Compiling:
- rewriting descendant-or-self step(s)
- simplifying flwor expression
Query:
import module namespace m = 'http://basex.org/modules/hello' at 'mail-dispather.xqm'; m:getGroups()
Optimized Query:
declare function m:getGroups() { root()/descendant::email-group };
m:getGroups()
Query plan:
<QueryPlan compiled="true">
  <StaticFunc name="m:getGroups">
    <IterPath>
      <Root/>
      <IterStep axis="descendant" test="email-group"/>
    </IterPath>
  </StaticFunc>
  <StaticFuncCall name="m:getGroups" tailCall="false"/>
</QueryPlan>

Ich mache alles aus dem BaseXGUI. Die Daten (datas.xml) habe ich aus dem Properties-Fenster "Database properties" importiert.
Ich verwende BaseX 8.3.1 Beta.Das Artikel  http://docs.basex.org/wiki/Repository habe schon auch gelesen.
 
 
Wenn ich aber direkt den Inhalt der Funktion „getGroups()“ ausführe, dann alles funktioniert wunderbar.
 
Ich verstehe nicht, woran liegt das Problem. Oder wie meinen Aufruf der Funktion richtig aussehen muss?
 
Ich bitte um Hilfe