Mercurial > hg > mpdl-group
comparison software/eXist/webapp/mpdl/interface/lt/lemma.xql @ 7:5589d865af7a
Erstellung XQL/XSL Applikation
author | Josef Willenborg <jwillenborg@mpiwg-berlin.mpg.de> |
---|---|
date | Tue, 08 Feb 2011 15:16:46 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
6:2396a569e446 | 7:5589d865af7a |
---|---|
1 xquery version "1.0"; | |
2 | |
3 import module namespace mpdl-time = "http://www.mpiwg-berlin.mpg.de/ns/mpdl/util/time" at "../../util/time.xql"; | |
4 | |
5 declare namespace request="http://exist-db.org/xquery/request"; | |
6 | |
7 let $language := request:get-parameter("language", "") | |
8 let $lemmaName := request:get-parameter("lemma", "") | |
9 let $formName := request:get-parameter("form", "") | |
10 let $luceneQuery := request:get-parameter("query", "") | |
11 | |
12 let $currentTimeBegin := util:system-time() | |
13 | |
14 let $lemmas := | |
15 if ($formName != '') | |
16 then mpdltext:get-lemmas-by-form-name($language, $formName) | |
17 else if ($lemmaName != '') | |
18 then mpdltext:get-lemma($language, $lemmaName) | |
19 else mpdltext:get-lemmas-by-lucene-query($language, $luceneQuery) | |
20 let $orderedLemmas := | |
21 if (empty($lemmas)) | |
22 then ("no lemmas found for your query") | |
23 else | |
24 for $lemma in $lemmas/lemmas/lemma | |
25 let $lemmaText := concat($lemma/lemma-name, " (", $lemma/provider, ")") | |
26 let $orderedForms := | |
27 for $form in $lemma/forms/form | |
28 let $formNameText := $form/form-name | |
29 let $providerText := $form/provider | |
30 let $liForm := <li>{$formNameText} ({$providerText})</li> | |
31 order by $form/form-name | |
32 return $liForm | |
33 let $lemmaLi := | |
34 <li><b>Lemma: </b>{$lemmaText} | |
35 <ul>{$orderedForms}</ul> | |
36 </li> | |
37 order by $lemma/lemma-name | |
38 return $lemmaLi | |
39 | |
40 let $queryResultHeaderStr := | |
41 if ($formName != '') | |
42 then <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Form={$formName}</h3> | |
43 else if ($lemmaName != '') | |
44 then <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Lemma={$lemmaName}</h3> | |
45 else <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Query={$luceneQuery}</h3> | |
46 | |
47 let $currentTimeEnd := util:system-time() | |
48 let $neededTime := mpdl-time:duration-as-ms($currentTimeEnd - $currentTimeBegin) | |
49 | |
50 let $retHtmlResult := | |
51 <html> | |
52 <head> | |
53 <title>Lemmas and forms</title> | |
54 </head> | |
55 <body> | |
56 {$queryResultHeaderStr} | |
57 <p/> | |
58 {$orderedLemmas} | |
59 <p/> | |
60 </body> | |
61 </html> | |
62 | |
63 return $retHtmlResult |