atom feed10 messages in com.marklogic.developer.generalRe: [MarkLogic Dev General] How to ge...
FromSent OnAttachments
McBeath, Darin W (ELS-STL)Sep 14, 2010 1:05 pm 
Mary HolstegeSep 14, 2010 1:22 pm 
McBeath, Darin W (ELS-STL)Sep 15, 2010 8:02 am 
Lee, DavidSep 15, 2010 8:21 am 
McBeath, Darin W (ELS-STL)Sep 15, 2010 8:33 am 
Mary HolstegeSep 15, 2010 8:39 am 
Michael BlakeleySep 15, 2010 8:41 am 
Geert JostenSep 15, 2010 8:44 am 
Darin McBeathSep 15, 2010 8:57 am 
Darin McBeathSep 15, 2010 12:59 pm 
Subject:Re: [MarkLogic Dev General] How to get accurate fragment counts using xdmp:estimate when the QName is a variable
From:McBeath, Darin W (ELS-STL) (
Date:Sep 15, 2010 8:02:54 am

Thanks Mary. That was pretty dumb on my part. But, I still do have a question
based on my more complex example.

Basically, I want to get fragment counts where a fragment contains a given
element, attribute, and value for that attribute. I was thinking that I could
do XPath such as below wrapped in a xdmp:estimate.

xdmp:estimate(//*[node-name(.)=$eQName and string(./@*[node-name(.) = $aQName])
= $value])

But, this always seems to return me the number of fragments in the DB. I did
verify that

//*[node-name(.)=$eQName and string(./@*[node-name(.) = $aQName]) = $value]

Only returns the nodes which I want ... so, unlike last time it would appear the
query is at least written correctly. Perhaps, what I'm trying to do with XPath
and an accurate estimate is not currently possible. I believe that I have the
necessary indexes enabled that should support an accurate estmate.

I did verify that something explicit such as the following returns the correct


This makes me believe that my indexes are configured correctly.

I will likely drop back and try a cts:element-attribute-value-query or xdmp:eval
the XPath expression (such as above) ... but, I'm curious as to whether I'm
still doing something wrong above or whether this is really not possible. I
also can't really create range indexes on the element/attribute as I'm trying to
make this a fairly generic solution whereby one could query on any



-----Original Message----- From: Mary Holstege [] Sent: Tuesday, September 14, 2010 4:22 PM To: General Mark Logic Developer Discussion; McBeath, Darin W (ELS-STL) Subject: Re: [MarkLogic Dev General] How to get accurate fragment counts using
xdmp:estimate when the QName is a variable

On Tue, 14 Sep 2010 13:05:58 -0700, McBeath, Darin W (ELS-STL) <> wrote: ...

The following query returns me the value I would expect.


However, if I have a variable $eQName which is essentially the QName for skos:ConceptScheme


returns me every fragment in the DB.

I think the problem is that your query isn't doing what you think it is. It equivalent to //"skos:ConceptScheme", the value of which is the string "skos:ConceptScheme" repeated for every element in the database. So the estimate is correct, but it isn't what you want.

The only way to get the result you wany from the path is something like //*[fn:node-name(.)=$eQName].