lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alice Wong <>
Subject Re: Associated values for a field and its value
Date Thu, 03 Oct 2013 22:04:51 GMT

That's an interesting idea. The only drawback is we have to re-parse the
doc and find where it matches and what the associated values are. It could
be a performance issue if the doc becomes bigger and more complex.

I am wondering if there is a way to index a value a1 for a field A and
store a different value "1,2" associated with a1 in Lucene. Or there might
be a hack for this?


On Thu, Oct 3, 2013 at 1:49 PM, Michael Sokolov <> wrote:

> On 10/02/2013 07:12 PM, Alice Wong wrote:
>> Hello,
>> We would like to index some documents. Each field of a document may have
>> multiple values. And for each (field,value) pair there are some associated
>> values. These associated values are just for retrieving, not searching.
>> For example, a document D could have a field named A. This field has two
>> values a1 and a2.
>> It is easy to index D, adding term a1 and a2 to field A, so either query
>> "A=a1" or "A=a2" will return D.
>> Assuming we have other values associated with (A,a1) and (A,a2) for D. We
>> would like to retrieve these associated values depending on whether "A=a1"
>> or "A=a2" is queried.
>> For example, if query "A=a1" returns D, we would like to return values 1
>> and 2. And if query "A=a2" returns D, we want to return values 3 and 10.
>> Is it possible to do this with Lucene? Initially we want to hack postings
>> to return associated values, but this seems quite complex.
>> Thanks!
>>  Why not store a (nonindexed) text field with some internal structure
> (XML, JSON, CSV) that you can analyze after retrieving.  For example,
> <D>
>   <A>
>      <value>a1</value>
>      <associated-values>
>        ... whatever you want ...
>      </associated-values>
>   </A>
> </D>
> If you use Lux (, which is XML query support on top of Lucene,
> you can do this all automatically, and retrieve the results with a simple
> query like:
> /D[A=a1]/associated-values
> plus if you want to pull out the values and manipulate them, you have
> XQuery to do it with.
> -Mike

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message