A couple of things here,

You need to query for you elements in the thesaurus namespace.

declare namespace thesaurus = "http://marklogic.com/xdmp/thesaurus";;

You also are already at the "entry" element when you defined the variable 
$synEntry.  Note, the query is now  fn:count($synEntry/thesaurus:synonym)  
(skip the entry and add the namespace).

Try the following:

xquery version "1.0-ml";

declare namespace thesaurus = "http://marklogic.com/xdmp/thesaurus";;

let $synEntry := <entry xmlns="http://marklogic.com/xdmp/thesaurus";>
          <term>zinc</term>
          <part-of-speech>noun</part-of-speech>
          <qualifiers>
            <qualifier>vicinity</qualifier>
          </qualifiers>
          <synonym>
            <term>zinc chelate</term>
          </synonym>
          <synonym>
            <term>zinc content</term>
          </synonym>
          <synonym>
            <term>zinc dust</term>
          </synonym>
          <synonym>
            <term>zinc isotopes</term>
          </synonym>
          <synonym>
            <term>zinc radioisotopes</term>
          </synonym>
          <synonym>
            <term>zinc retention</term>
          </synonym>
          <synonym>
            <term>zincum</term>
          </synonym>
          <synonym>
            <term>zn</term>
          </synonym>
        </entry>

let $synonymsCount := fn:count($synEntry/thesaurus:synonym)

return $synonymsCount




[cid:[email protected]]

Brad Rix


Senior Developer


+1 (303) 542-2172  |  Office

+1 (303) 915-2771  |  Mobile


[email protected]


http://www.flatironssolutions.com
IM:   AIM:   BradRix   MSN:  [email protected]






From: [email protected] 
[mailto:[email protected]] On Behalf Of Srinivas Mandadapu
Sent: Tuesday, November 10, 2009 9:29 AM
To: General Mark Logic Developer Discussion
Subject: [MarkLogic Dev General] question regarding a code snippet..

xquery version "1.0-ml";

let $synEntry := <entry 
xmlns="http://marklogic.com/xdmp/thesaurus";<http://marklogic.com/xdmp/thesaurus>>
          <term>zinc</term>
          <part-of-speech>noun</part-of-speech>
          <qualifiers>
            <qualifier>vicinity</qualifier>
          </qualifiers>
          <synonym>
            <term>zinc chelate</term>
          </synonym>
          <synonym>
            <term>zinc content</term>
          </synonym>
          <synonym>
            <term>zinc dust</term>
          </synonym>
          <synonym>
            <term>zinc isotopes</term>
          </synonym>
          <synonym>
            <term>zinc radioisotopes</term>
          </synonym>
          <synonym>
            <term>zinc retention</term>
          </synonym>
          <synonym>
            <term>zincum</term>
          </synonym>
          <synonym>
            <term>zn</term>
          </synonym>
        </entry>

let $synonymsCount := fn:count($synEntry/entry/synonym)

return $synonymsCount


The synonym count is coming out as "0" instead of "8"...still couldn't figure 
out where I am going wrong.

I really appreciate if someone can help me on this.

Thanks,
Srini


<<inline: image001.gif>>

_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to