On Sat, Feb 13, 2010 at 11:18 PM, Peter S <pete...@hotmail.com> wrote:
> > Hello Solr-dev, > > > I've now implemented a QParserPlugin/QParser for tagging functionality in > my internal Solr environment, and this is working very nicely. > > > The type of functionality offered by tagging isn't currently in Solr, so I > was thinking this might be a good plugin to contribute to the project. > Before preparing the plugin for ASF-readiness, it would be great to get > feedback, comments etc. on what the Solr dev experts think of including this > sort of thing. If it's deemed useful for inclusion, I'll go ahead and create > a JIRA issue and prepare the code for ASF. > > > Here is a quick precis of what tagging offers: > > > > First off, for your typical user-based searching of 'shopping cart' or > google-type doc-scored searching, tagging is probably not what you want. > Dismax provides a much better fit for this type of searching. > > Tagging provides a means of entering a tag into a query, which, on the > server (in the plugin) translates to some configured subquery that is > actually executed by Solr. > > There are a number of cool use-cases for this - the 2 most salient of which > are these: > > 1. To provide a known 'key' at query time, that translates into subqueries > that the user couldn't/wouldn't/shouldn't know at query time. > > For example, I use this to supply a tag called: 'admins', which, when > entered into a query, will actually query for all documents that have some > reference to all administrators/root users in the searched index(es). The > [securely logged-in] person searching won't know who all the root users are > (and the list will change over time), only that he/she wishes to find out > information pertaining to their activity. > > 2. To provide subquery 'shortcuts' for often used, usually lengthy and/or > complicated queries. > > For example, if every morning, as part of your job, you need to search for: > > ((this AND that) OR (theother AND NOT somethingelse)) AND timestamp:[then > TO now] . . . > > A tag can be made, say, 'mysearchtag' which equates to the above query. > > This tag can then be used as a query, and/or embedded in other queries. > > This is quite handy for automated searching and/or saved searches etc. > > This allows server administrators to control the content that gets returned > by these queries, thus reducing client-side maintenance. > > Additionally, for distributed searches, evaluated tags can, if desired, > produce different queries for different shards (e.g. the list of root users > are different on different machines). > > Any comments, concerns, opinions etc. on a contributuion of this type would > be greatly appreciated. > > Thanks Peter. It definitely sounds useful for some use-cases. Can you open a Jira issue and give a patch? -- Regards, Shalin Shekhar Mangar.