source: MDService/trunk/xquery/cmd-model.xql @ 287

Last change on this file since 287 was 287, checked in by ljo, 14 years ago

Preparing for searchRetrieve

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1xquery version "1.0";
2
3(:
4 $Id: cmd-model.xql 287 2010-03-25 15:35:06Z ljo $
5:)
6import module namespace request="http://exist-db.org/xquery/request";
7(: import module namespace json="http://www.json.org"; :)
8
9import module namespace cmd-model = "http://spraakbanken.gu.se/clarin/xquery/model"
10at "xmldb:exist:///db/clarin/cmd-model.xqm";
11
12(: path="olac/OLAC/The_LINGUIST_List_Language_Resources", q="MDGroup.Actors.Actor", maxdepth=4 :)
13
14declare function local:cmd-model() as item()* {
15  let $operation :=  request:get-parameter("operation", $cmd-model:queryModel),
16    $cmd-index := request:get-parameter("q", "MDGroup/Actors/Actor"),
17    $cmd-index-path := 
18    if (fn:contains($cmd-index, ".")) then
19      fn:translate($cmd-index, ".", "/") 
20    else
21      $cmd-index,
22    $format := request:get-parameter("format", $cmd-model:responseFormatXml),
23    $collection := fn:concat("/db/cmdi-mirror/", request:get-parameter("collection", "silang_data")),
24    $max-depth as xs:integer := xs:integer(request:get-parameter("maxdepth", 1))
25    return
26      if ($operation eq $cmd-model:getCollections) then
27        cmd-model:get-collections($collection, $format, $max-depth)
28      else if ($operation eq $cmd-model:queryModel) then
29        cmd-model:query-model($cmd-index-path, $collection, $format, $max-depth)
30    else if ($operation eq $cmd-model:searchRetrieve) then
31      let $cql-query := request:get-parameter("query", "MDGroup/Actors/Actor")
32      return cmd-model:search-retrieve($cql-query)
33    else 
34      <error>Unknown operation</error>
35
36};
37
38local:cmd-model()
Note: See TracBrowser for help on using the repository browser.