#688: generalization of second-order operators in SEQP
------------------------+----------------------
  Reporter:  valkyrie   |      Owner:  valkyrie
      Type:  task       |     Status:  new
  Priority:  major      |  Milestone:
 Component:  WebSearch  |    Version:
Resolution:             |   Keywords:  syntax
------------------------+----------------------

Comment (by simko):

 Here are some musings on this topic:

 1) Firstly, what about making a new special `country` index?  We can do
 fancy stuff during indexing time so that this index will get populated as
 we like.  For example, the country value can be read from an associated
 Institution record, quite like a conference title can be read from another
 collection when we are indexing a conference contribution.  Doing fancy
 things upon indexing time will permit us to stay simple upon search time,
 which has an advantage of giving the best search-time performance possible
 to the users.

 2) Talking about search time, `collection:field:query` does not look very
 nice for collection names containing spaces such as "ATLAS Notes".  People
 won't be happy to read (or type) expressions like `"ATLAS
 Notes:"author:"Doe, J"` in case this syntax ever pops up someplace that is
 user-visible.  So, if we are to invent a new search syntax to cover more
 second-order operator needs, then we can try to make it easily readable
 and type-able by humans if possible. Concerning another-collection
 searching needs, perhaps via a new reserved search operator `in`, so that
 the queries would look like
 `(country:US in Institutions)`, `(author:"Doe, J" in "ATLAS Notes")`.

 3) The `refersto/citedby` operators are special search operators in that
 they are searching in the citation map.  If we are covering only the need
 to search in other collections, then a new `in` operator can do the job
 nicely.  Note that it can work for any query, not only for collections.
 Dunno how far you wanted to go into generalisations here; thinking of
 `author:doe in (refersto:author:ellis and muon)` and the like, the `in`
 can be extended in this way and the above use case can be covered by
 `collection:"ATLAS Notes"` in the point above.  Note that some of these
 may be achievable via nested parentheses already, so some of these may not
 necessitate such a globalisation.  But it can still be useful.  Perhaps
 you can mention other typical use cases you had in mind so that we can
 design the new syntax better.

-- 
Ticket URL: <http://invenio-software.org/ticket/688#comment:2>
Invenio <http://invenio-software.org>

Reply via email to