Mercurial > hg > mpdl-group
view software/eXist/webapp/mpdl/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 |
line wrap: on
line source
xquery version "1.0"; import module namespace mpdl-time = "http://www.mpiwg-berlin.mpg.de/ns/mpdl/util/time" at "../util/time.xql"; declare namespace request="http://exist-db.org/xquery/request"; let $language := request:get-parameter("language", "") let $lemmaName := request:get-parameter("lemma", "") let $formName := request:get-parameter("form", "") let $luceneQuery := request:get-parameter("query", "") let $currentTimeBegin := util:system-time() let $lemmas := if ($formName != '') then mpdltext:get-lemmas-by-form-name($language, $formName) else if ($lemmaName != '') then mpdltext:get-lemma($language, $lemmaName) else mpdltext:get-lemmas-by-lucene-query($language, $luceneQuery) let $orderedLemmas := if (empty($lemmas)) then ("no lemmas found for your query") else for $lemma in $lemmas/lemmas/lemma let $lemmaText := concat($lemma/lemma-name, " (", $lemma/provider, ")") let $orderedForms := for $form in $lemma/forms/form let $liForm := <li>{$form/form-name} ({$form/provider})</li> order by $form/form-name return $liForm let $lemmaLi := <li><b>Lemma: </b>{$lemmaText} <ul>{$orderedForms}</ul> </li> order by $lemma/lemma-name return $lemmaLi let $queryResultHeaderStr := if ($formName != '') then <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Form={$formName}</h3> else if ($lemmaName != '') then <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Lemma={$lemmaName}</h3> else <h3>Mpdl-Donatus: Lemmas and forms: Result of your query: Language={$language}, Query={$luceneQuery}</h3> let $currentTimeEnd := util:system-time() let $neededTime := mpdl-time:duration-as-ms($currentTimeEnd - $currentTimeBegin) let $retHtmlResult := <html> <head> <title>Lemmas and forms</title> </head> <body> {$queryResultHeaderStr} <table align="right"> <td align="right">[<i>This is a MPDL <a href="http://archimedes.fas.harvard.edu/cgi-bin/donatus">Donatus</a> and <a href="http://snowball.tartarus.org/">Snowball</a> service</i>] <a href="../info.xql?info=donatus" onclick="window.open("../info.xql?info=donatus", "InfoWindow", "menubar=no,width=500,height=500,toolbar=no");return false"><img src="../images/info.png" valign="bottom" width="15" height="15" border="0" alt="MPDL Donatus service"/></a></td> </table> <p/> {$orderedLemmas} <p/> (* in parentheses the data provider of the lemma/form) <hr/> <p/> Elapsed time: {$neededTime} ms, see the <a href="/exist/xquery.xml">XQuery documentation</a> and the <a href="lemma.xql?_source=yes">XQuery source</a> of this page, if you find a bug <a href="https://itgroup.mpiwg-berlin.mpg.de:8080/tracs/mpdl-project-software/newticket">let us know</a> </body> </html> return $retHtmlResult