Don,
To me it seems as if there is only one document in your index, and moreover
the only document has mutifield courseName and mandatory fields (this means
you will get the same result even if you query +courseName:art +mandatory:N).
Do you think you can share how you create your domain objects and how you
push them into index?

Did you check you transaction logic? Are you sure you indexed all the domain
objects you wanted?

Lukas

http://blog.lukas-vlcek.com/


On Thu, Jul 30, 2009 at 9:10 PM, Donal Murtagh <domur...@yahoo.co.uk> wrote:

> Basically the classes I'm indexing have the following relationships:
>
> Student 1------* Attendance 1------* Course
>
> The
> only root class is Student, i.e. only instances of this class can be
> returned from a search. I have a Student object graph that could be
> represented in JSON as follows:
>
> {
>  name: Bob,
>  attendances: [
>    {mandatory: N, course: {name: cooking}},
>    {mandatory: Y, course: {name: art}}]
> }
>
> When I search for an instance of Student using the query:
>
>  "+courseName:cooking +mandatory:Y"
>
> Bob
> is returned because, because he attends a course named "cooking" and he
> attends a mandatory course (named "art).. But what I really want to
> search for is students that attend a mandatory cooking course. It
> doesn't appear to be possible to do this based on the responses
> provided here:
>
> http://stackoverflow.com/questions/1202422/lucene-query-syntax/1203186#1203186
>
> I
> opened the Student index in Luke, exported it to XML and have appended
> the results here:
> http://pastebin.com/m6e5bbcf3
>
> I don't really know how to interpret this
> myself, but thanks in advance for any further help you can provide.
>
> - Don
>
>
>
>

Reply via email to