Hi,

Sorry for my delay in responding to this. I find I have to keep saying that I am very happy with the way that search is shaping up. I may make a couple of minor corrections to the text shortly but I'd like to make a few comments and ask a few questions.

The addition of a greater variety of keywords (metatags) does seem a great idea. It is perhaps worth noting that there is already a certain notion of variable substitution in the current queries like this:

   https://issues.apache.org/bloodhound/query?owner=$USER

The character we use to mark these is of no great consequence to me but there may be advantages to retaining consistency with that form. On which note we may as well add 'user' as a synonym for 'me' and 'my'. It may turn out that it is fine for these to be case insensitive too.

I was wondering from the text of the proposal whether there was an intention for these to be possible to use unmarked as well. This might be better to treat as a future enhancement.

The helper functions are perhaps where I got this impression. The syntax for these seems interesting as well. Is the suggestion there that we use something like

   >>> querystring = '1weekago'
   >>> m = re.search('(?P<n>\d+)weeks?ago',querystring)
   >>> int(m.group('n')) if m is not None else 0
   1

to discover relatively simple numeric arguments? Is that considered to be better than a weeksago(N) style?

I like the idea of including ranges and the ability to define open and closed intervals for ranges. If we are already able to make that distinction, I would probably also add the ability to mix open and closed syntax so you can include at one end of the range and exclude at the other. I am also considering whether we should get a bit closer to open and closed interval notation in sets if that is not too confusing for users.

Finally, for now at least, it may also be worth making sure we have operator precedence defined in that document for completeness.

Anyway, this is all looking very good.

Cheers,
    Gary


On 29/11/12 00:35, Olemis Lang wrote:
On 11/28/12, Apache Bloodhound <[email protected]> wrote:
Page "Proposals/BEP-0004/ResourceQuery" was added by andrej
Content:
-------8<------8<------8<------8<------8<------8<------8<------8<--------

[...]
Resource Query component will provide a !ResourceQuery.query method with the
following parameters:
  * '''query''': query string e.g. “bla status:closed” or a parsed
representation of the query . For more information see [#query_syntax Query
syntax].
  * '''sort''': optional sorting
  * '''boost''': optional list of fields with boost values e.g. {“id”: 1000,
“subject” :100, “description”:10}. Used only for score based sorting.
  * '''filters''': optional list of terms. Usually can be cached by
underlying search framework. For example {“type”: “wiki”}
  * '''fields''': list of fields to return
  * optional paging fields: '''rows/start''' or '''page/pagesize''' fields
  * '''facets''' - optional list of facet terms, can be field or expression.

== Resource Query is not a report tool #notreport
As it was discussed on dev mailing list, search and query serve a different
purpose than reports. Resource Query is not intended not provide complex SQL
like expressions linke JOIN, UNION etc. Resource Query will search through
flattened resource representation. Query syntax should support issue tracker
specifics such as search through attachments, related tickets etc.

[...]
Other functions or meta tags can be used in query. Meta tags can be marked
with specific character e.g. “#” (similar to YouTrack special keywords -
http://confluence.jetbrains.com/display/YTD4/Search+and+Command+Attributes#SearchandCommandAttributes-ShortcutKeywords):
  * #me - current user
  * #my - assigned to me
  * #currentProject
  * #ticket, #wiki etc.
  * date and time helper functions e.g. 2weeksago, 1yearago etc.

[...]

This is interesting because it seems to me that these subjects I kept
from original message overlap with a work I'm trying to finish right
now ... so, when I have a result I'll follow with two major concrete
suggestions .
;)


Reply via email to