If you build range indexes on foo and bar, the entries will contain values 
equivalent to the serialization of data(foo), and data(bar). If all you have is 
a child element string wrapped around the value, you may be fine. But if there 
are multiple elements, you can have results you don't like:

<name>
 <first>Jim</first>
 <last>Smith</last>
</name>

data(/name)
--> JimSmith

I would try it on a sample and see if it yields what you want. Based on your 
example, I think it will.

Kelly


Message: 6
Date: Tue, 28 Jun 2011 11:36:11 -0400
From: Majid Valipour <[email protected]>
Subject: Re: [MarkLogic Dev General] Facet on Field
To: General MarkLogic Developer Discussion
        <[email protected]>
Message-ID: <[email protected]>
Content-Type: text/plain; charset="utf-8"

Hi Abhishek,

Actually my problem is the reverse. I need two facets for two elements that 
have child elements with the same QName i.e., e.g., <foo/> and <bar/> that have 
the <string> child from my example.
I cannot create range index on <foo/> and <bar/> because the text node is not 
their direct child but rather a children of the <string/> element. I suppose 
restructuring the content will fix this problem too but I was hoping to avoid 
doing that. We are able to create word constraint without a content 
reconstruction by defining two fields but as it turned out this solution does 
not work for facets.

Regrads,
Majid
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to