Hi Marco,

I am trying to patch for collapse component support (till now no luck)..
In mean time I would like to know the 2nd and 3rd option you mentioned
(logic in solrj)..

with regards

On Thu, May 6, 2010 at 2:36 PM, Marco Martinez <
mmarti...@paradigmatecnologico.com> wrote:

> Hi Jonty,
>
> I think you have three possible solutions:
>
>
>   1. Use the collapse component with your name field for not have any
>   duplicates documents.
>   2. Create a simple logic in your index with flags, like one flag to
>   determine the first element of the same document (in your example you
> will
>   have three differents documents and the fist one wiill have this
> flag=true).
>   If the search only have name, you will have to set this flag to true, if
>   not, the dept or the student will be defined and you will have one
> document
>   returned.
>   3. Do a post-processing of your data.
>
> Maybe you will have more solutions but these are what i have thought right
> now.
>
> Regards,
>
>
> Marco Martínez Bautista
> http://www.paradigmatecnologico.com
> Avenida de Europa, 26. Ática 5. 3ª Planta
> 28224 Pozuelo de Alarcón
> Tel.: 91 352 59 42
>
>
> 2010/5/6 Jonty Rhods <jonty.rh...@gmail.com>
>
> > thanks
> >
> > :General solution is to index 3 different SolrDocument in your example.
> id
> > and name fields will repeat themselves. All fields will be single-valued.
> >
> > if I am indexing 3 different field then if user is searching by name +
> dept
> > then it will return duplicate value.. is there any other best possible
> > way..?
> >
> > thanks
> > On Thu, May 6, 2010 at 1:34 PM, Ahmet Arslan <iori...@yahoo.com> wrote:
> >
> > >
> > > > recently I start to work on solr, So I am still very new to
> > > > use solr. Sorry
> > > > if I am logically wrong.
> > > > I have two table, parent and referenced (child).
> > > >
> > > > for that I set multivalue field following is my schema
> > > > details
> > > >  <field name="id" type="string" indexed="true"
> > > > stored="true" required="true"
> > > > />
> > > >
> > > >
> > > >    <field name="name" type="text"
> > > > indexed="true" stored="true"/>
> > > >
> > > >    <field name="dept" type="text"
> > > > indexed="true" stored="true"
> > > > multiValued="true"/>
> > > >    <field name="city" type="text"
> > > > indexed="true" stored="true"
> > > > multiValued="true"/>
> > > >
> > > > indexed data details:
> > > >
> > > > <doc>
> > > >
> > > >   <arr name="dept">
> > > >     <str>student1</str>
> > > >     <str>student2</str>
> > > >     <str>student3</str>
> > > >   </arr>
> > > >
> > > >   <arr name="city">
> > > >     <str>city1</str>
> > > >     <str>city2</str>
> > > >     <str>city3</str>
> > > >   </arr>
> > > >  <str name="id">1</str>
> > > >
> > > >  <arr name="name">
> > > >    <str>name of emp</str>
> > > >   </arr>
> > > >
> > > > </doc>
> > > >
> > > > now my question is :
> > > > When user is searching by city2 then I want to return
> > > > employee2 and their id
> > > > (for multi value field).
> > > > something like:
> > > >
> > > > <doc>
> > > >
> > > >   <arr name="dept">
> > > >
> > > >     <str>student2</str>
> > > >
> > > >   </arr>
> > > >
> > > >   <arr name="city">
> > > >
> > > >     <str>city2</str>
> > > >
> > > >   </arr>
> > > >  <str name="id">1</str>
> > > >
> > > >  <arr name="name">
> > > >    <str>name of emp</str>
> > > >   </arr>
> > > >
> > > > </doc>
> > > >
> > >
> > > I had a similar need before. AFAIK you cannot do it with multivalued
> > > fields. The indexing order is preserved in multivalued field. May be
> you
> > can
> > > post-process returned fields and capture correct position of matched
> city
> > > field, and use this index to display correct dept value. But this is
> easy
> > if
> > > you are using string or integer type for city and dept.
> > >
> > > General solution is to index 3 different SolrDocument in your example.
> id
> > > and name fields will repeat themselves. All fields will be
> single-valued.
> > >
> > >
> > >
> > >
> > >
> >
>

Reply via email to