> However, when using text index instead of full text the results are the same
> for both, except that RESTXQ takes almost forever

What about the original query: Has it been slow as well, or do you
think this is a new problem?


> 2015-05-18 14:28 GMT+02:00 Christian Grün <christian.gr...@gmail.com>:
>>
>> It could be that your URL is decoded in a wrong way.. What happens if
>> you run the following function with REST and RESTXQ and "føre" as
>> word?
>>
>>   declare
>>     %rest:path("/test/encoding/{$word}")
>>   function page:test-encoding($word) {
>>     string-to-codepoints($word)
>>   };
>>
>> Thanks,
>> Christian
>>
>>
>> string-to-codepoints()
>> > REST output (2 first lines):
>> >    føre
>> >    fø - re 219
>> >
>> > RESTXQ
>> >    føre
>> >    fo - re 123
>> >
>> > The first word quoted is "føre" in both cases and is what the scripts
>> > see,
>> > so the full text is given the same in both cases. Could it be that
>> > within
>> > RESTXQ the full text index is treated differently?
>> >
>> > I will work closer on a  self contained example, but thought this might
>> > point to something.
>> >
>> > Cheers
>> > Lars
>> >
>> >
>> > 2015-05-18 13:44 GMT+02:00 Lars Johnsen <yoon...@gmail.com>:
>> >>
>> >> Hi Christian - and thanks for fast response. Latest version 8.11 is in
>> >> use
>> >> (same behaviour as previous). Let me see if I can make a self contained
>> >> example.
>> >>
>> >> best,
>> >> Lars
>> >>
>> >> 2015-05-18 13:40 GMT+02:00 Christian Grün <christian.gr...@gmail.com>:
>> >>>
>> >>> Hi Lars,
>> >>>
>> >>> hm, that's difficult to tell. All I can say is that this sounds
>> >>> unusual, so I'm coming up with my standard questions: Do you think you
>> >>> could build us a little example that allows us to reproduce the
>> >>> problem? Have you tried the latest version of BaseX?
>> >>>
>> >>> Best,
>> >>> Christian
>> >>>
>> >>>
>> >>> On Mon, May 18, 2015 at 1:35 PM, Lars Johnsen <yoon...@gmail.com>
>> >>> wrote:
>> >>> >
>> >>> > I am running a web script in two identical versions (identical as in
>> >>> > "cut
>> >>> > and paste"), one via RESTXQ and one vi REST. The response is
>> >>> > different,
>> >>> > and
>> >>> > I wondered what may be the trouble.
>> >>> >
>> >>> > For example the output (the URLs only works locally) for
>> >>> >     http://ljohnsen:8984/hyphens/mellom
>> >>> > is the same as
>> >>> >      http://ljohnsen:8984/rest?run=hyphen-show.xq&word=mellom
>> >>> >
>> >>> > which is a set of hyphenation data:
>> >>> >     mellom
>> >>> >     mel - lom 17005
>> >>> >     Mel - lom 144
>> >>> >     mel - lom. 50
>> >>> >
>> >>> > but if "mellom" is exchanged with "nasjonalbiblioteket" only  the
>> >>> > REST
>> >>> > version shows any result, which then is the same as I get
>> >>> > experimenting
>> >>> > in
>> >>> > the GUI.
>> >>> >
>> >>> > The actual script is added below, and which runs in both versions
>> >>> > (identical apart form the rest and restxq interfaces), it uses full
>> >>> > text
>> >>> > search, but results differ when run under the REST-regime.
>> >>> >
>> >>> > All the best
>> >>> > Lars G Johnsen
>> >>> > National Library of Norway
>> >>> >
>> >>> > module namespace page = 'http://basex.org/modules/web-page';
>> >>> >
>> >>> > declare
>> >>> >   %rest:path("/hyphens/{$word}")
>> >>> >   %output:method("html")
>> >>> >
>> >>> > function page:show-hyphens($word) {
>> >>> >    let $db := db:open('hyphen-data')
>> >>> >      let $hyphens :=  for $hyp in $db/hyphens/hyphens[full contains
>> >>> > text
>> >>> > {$word}]
>> >>> >       group by $first := $hyp/first, $second := $hyp/second
>> >>> >       let $count := count($hyp)
>> >>> >       order by xs:int($count) descending
>> >>> >       return element p {
>> >>> >         attribute freq {$count},
>> >>> >         $first, " - ", $second, $count
>> >>> >       }
>> >>> >
>> >>> >      let $total := sum($hyphens//@freq)
>> >>> >      let $div := element div {
>> >>> >        element p {$word},
>> >>> >        for $hyp in $hyphens
>> >>> >        return element div {
>> >>> >           attribute class {"hyph"},
>> >>> >           attribute style {"font-size:", 1
>> >>> > +round(xs:int($hyp//@freq/data())
>> >>> > div $total,1) || "em"},
>> >>> >           $hyp
>> >>> >
>> >>> >          }
>> >>> >      }
>> >>> >      return
>> >>> >      <html encoding="UTF-8">
>> >>> >     <head>
>> >>> >         <meta http-equiv="Content-Type" content="text/html"
>> >>> > charset="UTF-8"
>> >>> > />
>> >>> >         <title>Orddelinger</title>
>> >>> >     </head>
>> >>> >     <body>{$div}
>> >>> >     </body>
>> >>> >     </html>
>> >>> >
>> >>> > };
>> >>
>> >>
>> >
>
>

Reply via email to