#162: Tagging autosuggest
-------------------------+--------------------------------------------------
 Reporter:  vengmark     |       Owner:  vengmark
     Type:  enhancement  |      Status:  new     
 Priority:  major        |   Milestone:  v1.0    
Component:  WebTag       |     Version:  v0.99.1 
 Keywords:               |  
-------------------------+--------------------------------------------------
 When users edit the tagging input field, they should be aided by an
 autosuggestion feature:
 * Must take into account only information accessible to the user by normal
 means (don't base suggestions on other users' tags).
 * Must be related to the partial tag entered in the input field.
 * Suggestions must replace the partial tag when selected.
 * Should include both the user's tags and all the official keywords in the
 suggestion calculation.
 * Should show only a manageable number of suggestions (max 10, perhaps).
 * Should not list tags which are already in the tag input for the current
 record, including the identical match for the text entered.
 * The list of suggestions should be navigable with both mouse and
 keyboard.
 * The list of suggestions should be updated on screen less than one second
 after modifying the partial tag entered, for reasonable tag/keyword
 collection sizes.
 * Calculation on the client should be favored instead of sending more data
 from the server, since the latter is a potentially huge bottleneck.
 * Suggestions should be cached on the client. The cache should be emptied
 when the user saves the tags or navigates away from the web page.

 Requirements which might change:
 * Tag suggestions should be shown completely before keyword suggestions.
 Suggestions should thereafter be sorted alphabetically.
 * Suggestions should show their use count (for only the current user in
 the case of tags).
 * The use count should be shown in parentheses after the suggestions.

 Possible enhancements:
 * The most used tags could be pre-cached. Successful pre-caching should be
 signaled to the server when searching for suggestions, to minimize network
 transfer. Could perhaps fetch the entire set of suggestions, and do all
 autosuggest lookups on the client?

 Non-requirements:
 * Show only suggestions saved with the same language as the display
 language (IMO a very confusing feature).

-- 
Ticket URL: <http://invenio-software.org/ticket/162>
Invenio <http://invenio-software.org>

Reply via email to