Changeset 246


Ignore:
Timestamp:
03/17/10 21:19:03 (14 years ago)
Author:
ljo
Message:

cmd-model-xqm - Some tidying up before changing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • MDService/trunk/xquery/cmd-model.xqm

    r174 r246  
    88import module namespace util="http://exist-db.org/xquery/util";
    99
    10 declare variable $cmd-model:commonFreqsPath as xs:string {"/db/common/clarin/freqs"};
    11 declare variable $cmd-model:cmdiMirrorPath as xs:string {"/db/cmdi-mirror"};
     10declare variable $cmd-model:cmdiDatabaseURI as xs:string := "xmldb:exist:///db";
    1211
    13 declare variable $cmd-model:typeActorPath as xs:string {"MDGroup/Actors/Actor"};
    14 declare variable $cmd-model:typeActorPath0 as xs:string {"Actor"};
     12declare variable $cmd-model:commonFreqsPath as xs:string := "/db/common/clarin/freqs";
     13declare variable $cmd-model:cmdiMirrorPath as xs:string := "/db/cmdi-mirror";
    1514
    16 declare variable $cmd-model:typeActorPathElementPrefix as xs:string {"actor"};
    17 declare variable $cmd-model:typeSuffix as xs:string {"Value"};
    18 declare variable $cmd-model:docTypeSuffix as xs:string {"Values"};
     15declare variable $cmd-model:typeActorPath as xs:string := "MDGroup/Actors/Actor";
     16declare variable $cmd-model:typeActorPath0 as xs:string := "Actor";
     17declare variable $cmd-model:typeActorRolePath as xs:string := "MDGroup/Actors/Actor/Role";
    1918
    20 declare variable $cmd-model:xmlExt as xs:string {".xml"};
     19declare variable $cmd-model:docTypeModelTrees as xs:string := "ModelTrees";
     20declare variable $cmd-model:docTypeTerms as xs:string := "Terms";
     21declare variable $cmd-model:docTypeSuffix as xs:string := "Values";
     22
     23declare variable $cmd-model:xmlExt as xs:string := ".xml";
    2124
    2225declare function cmd-model:elem($collection as xs:string, $path as xs:string, $depth as xs:integer) as element() {
     
    99102:)
    100103declare function cmd-model:store-result($coll-names as xs:string+, $entries as element()*, $type-name as xs:string, $depth as xs:integer) as xs:string {
    101 if (fn:exists($coll-names[2])) then
    102   (: Det gÀller fler Àn en samling. :)
    103   xdb:store($cmd-model:commonFreqsPath, cmd-model:make-compound-doc-name($coll-names, $type-name, $depth), cmd-model:make-doc-element-of-type($type-name, $coll-names, $entries, $depth))
    104 else
    105 (: Det gÀller endast en samling. :)
    106 let $dummy := util:log('debug', fn:concat('Stores ', $type-name, ' in ', $coll-names))
    107 return xdb:store($coll-names, cmd-model:make-doc-name($coll-names, $type-name, xs:string($depth), fn:false()), cmd-model:make-doc-element-of-type($type-name, (), $entries, xs:string($depth)))
     104  let $clarin-writer := fn:doc("/db/clarin/writer.xml"),
     105    $dummy := xdb:login($cmd-model:cmdiDatabaseURI, $clarin-writer//write-user/text(), $clarin-writer//write-user-cred/text())
     106    return
     107   
     108      if (fn:exists($coll-names[2])) then
     109        (: Det gÀller fler Àn en samling. :)
     110        xdb:store($cmd-model:commonFreqsPath, cmd-model:make-compound-doc-name($coll-names, $type-name, $depth), cmd-model:make-doc-element-of-type($type-name, $coll-names, $entries, $depth))
     111      else
     112        (: Det gÀller endast en samling. :)
     113        let $dummy := util:log('debug', fn:concat('Stores ', $type-name, ' in ', $coll-names))
     114        return xdb:store($coll-names, cmd-model:make-doc-name($coll-names, $type-name, xs:string($depth), fn:false()), cmd-model:make-doc-element-of-type($type-name, (), $entries, xs:string($depth)))
    108115};
    109116
     
    158165
    159166(:
    160   Skapa elementnamn för dokumentet av typ. Finns den inte sÃ¥ felar returen, sÃ¥
    161   att inget hÀnder obemÀrkt.
     167  Skapa elementnamn för dokumentet av typ.
    162168:)
    163169declare function cmd-model:get-doc-type-element-name($type-name as xs:string) as xs:string {
    164   if ($type-name eq $cmd-model:typeActorPath) then
    165     fn:concat($cmd-model:typeActorPathElementPrefix, $cmd-model:docTypeSuffix)
    166   else if ($type-name eq $cmd-model:typeActorPath0) then
    167     fn:concat($cmd-model:typeActorPathElementPrefix, $cmd-model:docTypeSuffix)
    168   else
    169     ()
     170  let $name-last := text:groups($type-name, "/(\w+)$")[last()],
     171    return
     172    if (fn:empty($name-last)) then $cmd-model:ModelTrees else $cmd-model:Terms
     173
    170174};
Note: See TracChangeset for help on using the changeset viewer.