Features/Plain Query Format: Difference between revisions
No edit summary |
|||
| (68 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
<noinclude>{{GoogleTrans-en}}{{TOCright}}</noinclude> | <noinclude>{{GoogleTrans-en}}{{TOCright}} | ||
[[Category:Feature Page Incomplete]] | |||
[[Category:FeatureObsoleted|Plain Query Format]]</noinclude> | |||
<!-- All fields on this form are required to be accepted. | <!-- All fields on this form are required to be accepted. | ||
| Line 8: | Line 10: | ||
== Summary == | == Summary == | ||
Provide simple string query format for Datastore find() method to cover all kinds of requests. | Provide a simple string query format for the Datastore find() method to cover all kinds of requests. | ||
== Owner == | == Owner == | ||
* Name: | * Name: ? | ||
* Email: | * Email: ? | ||
== Current status == | == Current status == | ||
* Targeted release: | * Targeted release: ? | ||
* Last updated: | * Last updated: Tue Aug 25 07:59:58 UTC 2009 | ||
* Percentage of completion: | * Percentage of completion: 90%, core part was implemented within [[Version support for datastore/Proposal]] | ||
== Detailed Description == | == Detailed Description == | ||
Let users create complex queries with all possible terms (see Xapian [http://xapian.org/docs/glossary.html glossary]) including system ones. Users can use in query string [[#System prefixes|system]] prefixes and predefined set of [[#Users predefined prefixes|custom]] prefixes. | |||
Prefixes in query string could look like | |||
<prefix>:<one-word-value> | |||
<prefix>:"<multi-word-value>" | |||
Values for system prefixes, Sugar fills on its own, i.e., if ''title'' metadata field is ''My activity'', user can type ''title:"My activity"'' in query string to search ''My activity'' substring only within ''title'' fields. | |||
Values for [[#Users predefined prefixes|custom]] prefixes user should place to ''tags'' metadata field in the same form like in query string. | |||
==== System | If value is multi-worded, any of these words could be used in query, e.g., ''title:My'' or ''title:activity''. | ||
==== System prefixes ==== | |||
{| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | {| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | ||
|-style="background:#787878; color: white;" | |-style="background:#787878; color: white;" | ||
! Datastore field | ! Datastore field | ||
! Flags | ! Flags/Parameters | ||
! Dublin Core | |||
! Notes | ! Notes | ||
|- | |- | ||
| '' | | ''uid'' | ||
| | | | ||
| | | [http://dublincore.org/documents/dces/#identifier identifier] | ||
| | |||
| | |||
|- | |- | ||
| ''bundle_id'' | | ''bundle_id'' | ||
| | | | ||
| | | | ||
| | | postponed until we decide to use Journal to represent activities | ||
|- | |- | ||
| ''mime_type'' | | ''mime_type'' | ||
| | |||
| [http://dublincore.org/documents/dces/#format format] | |||
| | |||
|- | |- | ||
| ''title'' | | ''title'' | ||
| '' | | sorted | ||
| [http://dublincore.org/documents/dces/#title title] | |||
| | |||
|- | |||
| ''activity'' | |||
| | |||
| | |||
| | |||
|- | |- | ||
| ''activity_id'' | | ''activity_id'' | ||
| | |||
| | |||
| | |||
|- | |- | ||
| ''timestamp'' | | ''timestamp'' | ||
| | | ranged sorted | ||
| | |||
| | |||
|- | |- | ||
| ''keep'' | | ''keep'' | ||
| | |||
| | |||
| | |||
|- | |||
| ''tags'' | |||
| | |||
| | |||
| see [[#Users predefined terms]] | |||
|- | |- | ||
| ''filesize'' | | ''filesize'' | ||
| | | ranged sorted | ||
| | | | ||
| postponed for [[Features/Unified Browser for Objects]] | |||
|- | |- | ||
| ''participant'' | | ''participant'' | ||
| '' | | sorted | ||
| | | | ||
| | |||
|- | |||
| ''description'' | |||
| | |||
| [http://dublincore.org/documents/dces/#description description] | |||
| | |||
|- | |- | ||
|} | |} | ||
==== Users predefined | ==== Users predefined prefixes ==== | ||
{| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | |||
|-style="background:#787878; color: white;" | |||
! Datastore field | |||
! Flags/Parameters | |||
! Dublin Core | |||
! Notes | |||
|- | |||
| ''contributor'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#contributor contributor] | |||
|- | |||
| ''coverage'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#coverage coverage] | |||
|- | |||
| ''creator'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#creator creator] | |||
|- | |||
| ''date'' | |||
| ranged sorted | |||
| [http://dublincore.org/documents/dces/#date date] | |||
|- | |||
| ''language'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#language language] | |||
|- | |||
| ''publisher'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#publisher publisher] | |||
|- | |||
| ''relation'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#relation relation] | |||
|- | |||
| ''rights'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#rights rights] | |||
|- | |||
| ''source'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#source source] | |||
|- | |||
| ''subject'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#subject subject] | |||
|- | |||
| ''type'' | |||
| sorted | |||
| [http://dublincore.org/documents/dces/#type type] | |||
|- | |||
| ''track'' | |||
| ranged sorted | |||
|- | |||
| ''disc'' | |||
| ranged sorted | |||
|- | |||
|} | |||
==== Result set control parameters ==== | |||
New find() method still has optional dictionary argument to control final result set. | |||
{| border=1 cellpadding=3 style="border: 1px solid white; border-collapse: collapse; background: #e3e4e5;" | |||
|-style="background:#787878; color: white;" | |||
! Dictionary key | |||
! Notes | |||
|- | |||
| ''offset'' | |||
|- | |||
| ''limit'' | |||
|- | |||
| ''order_by'' | |||
|- | |||
| ''lang'' | |||
| to setup stemming | |||
|} | |||
== Benefit to Sugar == | == Benefit to Sugar == | ||
* | * Feature lets users specify exact metadata fields to search for. | ||
== Scope == | == Scope == | ||
Datastore | * implementation in Datastore | ||
== How To Test == | == How To Test == | ||
| Line 110: | Line 210: | ||
== User Experience == | == User Experience == | ||
* feature just expands query dictionary | |||
== Dependencies == | == Dependencies == | ||
Just regular glucose dependencies. | |||
== Contingency Plan == | == Contingency Plan == | ||
| Line 122: | Line 224: | ||
* [http://www.xapian.org/docs/queryparser.html Xapian query language] | * [http://www.xapian.org/docs/queryparser.html Xapian query language] | ||
* [http://dublincore.org/documents/usageguide/ Using Dublin Core] | |||
* [http://lcweb2.loc.gov/diglib/loc.terms/relators/dc-relators.html Relator Terms and Dublin Core Elements] | |||
== Release Notes == | == Release Notes == | ||
| Line 128: | Line 232: | ||
== Comments and Discussion == | == Comments and Discussion == | ||
* See [[{{TALKPAGENAME}}|discussion tab for this feature]] <!-- This adds a link to the "discussion" tab associated with your page. This provides the ability to have ongoing comments or conversation without bogging down the main feature page --> | * See [[{{TALKPAGENAME}}|discussion tab for this feature]] <!-- This adds a link to the "discussion" tab associated with your page. This provides the ability to have ongoing comments or conversation without bogging down the main feature page --> | ||