[ 
https://issues.apache.org/jira/browse/SOLR-1298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12794250#action_12794250
 ] 

Uri Boness commented on SOLR-1298:
----------------------------------

{quote}I think they should be inline, as they are just values associated with a 
document. I think putting it in some other list is sticking too literally to 
what Lucene calls a field, which I don't think Solr has to do that. One could 
easily imagine a Solr component that brought in a database or other storage 
repository for supplementary fields and it should all be seamless to the 
client.{quote}

I definitely agree that one shouldn't see a field in Solr as a field in Lucene. 
That said, I think do have a tendency to see a field in Solr as somehow bound 
to the Solr schema. 

One thing to notice is that eventually we end up with the same discussion 
regarding this feature in the context of different issues, let it be 
highlighting or field collapsing. In some cases it feel just "right" to return 
the data as a field in a document, in other places it feels "right" to have as 
something else. It is true that when you interact with solr directly (specially 
if you do it manually) you certainly know what queries you send, what functions 
you request and what you should expect in the result. But from experience, a 
lot of times you try to automate things a bit and creating a well structured 
and descriptive protocols is the safe way to enable that. 

{quote}I don't want to have to go look it up in some other list while I am 
iterating over my results when all the other values I'm displaying/using are 
right there associated with the document.{quote}

Having a sub-section under each documents still associates it with the 
document. The way I see it, It's like OOP... you can have a Person class that 
holds all the information of the person it it as primitive fields, or you can 
group related data, like address info, int a separate Address class. 

{quote}That being said, it could be useful to add an attribute that indicates 
it is a generated name{quote}

That's one way to group fields together, but if you're already doing that, then 
why not go all the way? If you need to distinguish between generated and 
non-generated names, why not make it simpler and just separate the two in a 
different list? (To continue the analogies line I started above :-)) it's like 
XML, you can have a single level hierarchy were each element defines attributes 
to relate it to other elements, but a more suitable solution would just be to 
group all related elements under one parent element.

{quote}I'd even argue that highlighter results should be inline, too, but that 
is a different issue and a bigger can of worms since it has a well used API 
already.{quote}
In some cases it might be (well it just is) more appropriate to have the 
highlighting inlined. In other cases it might not be possible, specially with 
some of the latest requests to have highlighting functionality available for 
arbitrary text loaded from anywhere (which I believe will lead for a 
highlighting component/requestHandler that will be independent of the query 
component).

{quote}Not saying this is right or wrong, but I think it would be useful to 
document here the rationale about why not to do it. Is it just b/c that method 
is expected to do, more or less, what the Lucene IndexSearcher does?{quote}
I guess so... I guess SolrIndexSearcher is in fact a Lucene IndexSearcher which 
is the source for this association. In some ways I think it's also relates a 
bit to the response structure (not directly though, but conceptually)... if the 
IndexSearcher represents Lucene and the document contains fields coming from 
other sources as well, perhaps this functionality of gathering all these fields 
(/metadata ;-)) should be done in a higher level where SolrIndexSearcher just 
serves as on "field source". The main reason why Chris's patch puts this 
functionality in the doc() method of the SolrIndexSearcher is simply because 
it's the easiest and the simplest solution right now... and I don't thing 
there's nothing wrong with that... simple is good! Even with this solution as 
it is, the "field sources" are still abstracted away in the form of a 
"FieldValues" or "DocumentMutator", so architecture-wise I don't see leaving it 
as is will compromise anything.

> FunctionQuery results as pseudo-fields
> --------------------------------------
>
>                 Key: SOLR-1298
>                 URL: https://issues.apache.org/jira/browse/SOLR-1298
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Grant Ingersoll
>            Assignee: Grant Ingersoll
>            Priority: Minor
>             Fix For: 1.5
>
>         Attachments: SOLR-1298-FieldValues.patch, SOLR-1298.patch
>
>
> It would be helpful if the results of FunctionQueries could be added as 
> fields to a document. 
> Couple of options here:
> 1. Run FunctionQuery as part of relevance score and add that piece to the 
> document
> 2. Run the function (not really a query) during Document/Field retrieval

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to