Next a few comments on the Query Result view and Resource Query sections:

On 22/11/12 11:08, Andrej Golcov wrote:
Hi all,

I've just added first draft of proposal for search improvements. So, let's
discuss it :)

I suggest that we agree on functional requirements and then pass to
possible implementation.

Regards, Andrej


On 22 November 2012 11:32, Apache Bloodhound <
[email protected]> wrote:

Page "Proposals/BEP-0004" was added by andrej
Content:
-------8<------8<------8<------8<------8<------8<------8<------8<--------

= BEP 4 : Improved search architecture #overview
[snip]

=== Query Result view

Query Result view represents consistent view of query result for different
resources. Result may be represented as
   - All resources result tab - default, common for all resources columns
e.g. name and description
   - Resource result tabs - resource specific fields are shown e.g. id,
status, summary for ticket.
   - Query Result view can be instructed to limit result to specific
resource type e.g. show only tickets in result. In this case, resource tabs
can be omitted.

Presumably, this would be a part of the new query syntax so that it can be relatively easy to filter before getting to this page.
User can refine search conditions either by editing query or by using
Query Builder.

I would like to see others comment on the mockup for the query builder. Consistency with other views suggest that there may be space on the right hand side, replacing the activity area - I assume that we will not be displying activity on any search/query screen.

User can specify what fields should be selected and in what results order
should be applied. A new order type is introduced for free-text search:
score

Query Result view should support facets (
http://searchhub.org/2009/09/02/faceted-search-with-solr/)  for example:
   - All resources result tab can show facets for resource type and product
   - Ticket result tab can show facets for products and ticket status

Facets seem to me to be a very important enhancement.

Other nice to have features in no particular order:
   - Possibility to save a query for specific user and sharing of saved
queries
   - Search highlighting

Saved/stored queries have been discussed in the mailing list before a few times so I think this is probably an expectation beyond the ability to put a search macro on a wiki page. I think that this should probably be considered separately of this solution but we should make sure that such stored queries support any implementation that arises from this.

Search highlighting might also be worth separating out so that we make sure that we focus on getting searches done correctly, even if it turns out it is just a small enhancement on top. I assume that this is referring to terms being highlighted when you click on a link result here so it is probably out of scope of the Query result view section anyway.

=== Resource Query

New Resource Query should provide the following functionality:
   - free-text search support
   - facet support
   - it is a superset of TracQuery functionality
So we can embed TracQuery syntax within the new queries?
   - basic query expressions AND, OR, NOT, search by specific field, search
[FROM TO] - TBD (can be similar to SQL or lucene/solr like)

I think that this could also be considered from the point of view of a set operation syntax which could be interesting. Not sure if it is worth it of course. Anyway, in addition to logical operators, we do need to be able to express a grouping syntax to build more advanced expressions from the basics.

It would also be nice if we were able to express these queries relatively easily in a query string so that it is possible to just write your query directly in a link and be understandable.
   - search through different resources not only tickets: wiki, milestones,
changesets and other pluggable resources
   - search through all resource fields
   - search through attachments, history and comments
   - multi-product aware - apply security context etc
   - order by free-text score. Score calculation can be configured, for
example if found in summary: id: score:100, score*10, in keywords: score*5,
in components: score*3 …

I would probably suggest that we keep configurability of scores in mind but don't provide the interface to change it until a bit later. A bit of clarification might be helpful here too. Presumably term found in summary would be score*=100 rather than just assigned 100. In addition, we could consider modifying the score based on the date. There is a further possibility of including fairly simple "favour [something]" (e.g. "newer", "older", etc) radio boxes to adjust the scoring dynamically as I am not convinced that users should be expected to adjust these values for themselves at the moment.

Nice to have features
   - Support search in attachments of specific types e.g word, exel etc.
I seem to remember that you get this in solr for free but I am not so sure about the others.

Cheers,
    Gary

Reply via email to