Search Service: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(rfe bugs, post method. need summary for opensearch)
Line 22: Line 22:
I am not convinced we want to continue to use Sherlock files. Sherlock is largely a Mac thing, and it is not clear that Apple will continue to support it moving forward. I think it is worth considering using a different, XML or RDF system for storing search metadata on the web. This would allow us to reduce our code size. The customizable search function in Firefox 1.0 was obscure/not-discoverable enough to allow me to say with relative comfort that we do not need to necessarily migrate custom engines over. A new format or an extended Sherlock format may also provide us with the ability to add dynamic fields, such as a timestamp.  
I am not convinced we want to continue to use Sherlock files. Sherlock is largely a Mac thing, and it is not clear that Apple will continue to support it moving forward. I think it is worth considering using a different, XML or RDF system for storing search metadata on the web. This would allow us to reduce our code size. The customizable search function in Firefox 1.0 was obscure/not-discoverable enough to allow me to say with relative comfort that we do not need to necessarily migrate custom engines over. A new format or an extended Sherlock format may also provide us with the ability to add dynamic fields, such as a timestamp.  


* POST method search
The current search box depends totally on the search URL, which is specialized to GET method. In order to search via POST method, the browser side should controll the request (= channel) and display the result. I think, eventually, the backend will be simply a search engine file parser and its management (update etc.) tool.
= User Interface =  
= User Interface =  
== Search Engine Manager ==


The UI would remain largely as it is today but with "Add Engines..." being replaced by a "Customize..." link which would open a search engine manager. This would be a very simple UI with a list of installed engines, [maybe the ability to reorder them], and maybe a remote list of available engines from UMO.  
The UI would remain largely as it is today but with "Add Engines..." being replaced by a "Customize..." link which would open a search engine manager. This would be a very simple UI with a list of installed engines, [maybe the ability to reorder them], and maybe a remote list of available engines from UMO.  
Line 33: Line 37:
* the remote engine list in the Customize UI
* the remote engine list in the Customize UI
* the "Add Keyword for Search" context menu item capturing updates.
* the "Add Keyword for Search" context menu item capturing updates.
* Better UI on failure.


== Searching ==
== Searching ==
Line 39: Line 45:
* From the Search Box, using Aliases to select (when user types a recognized alias, engine flips). When box contents are cleared, reverts to default.  
* From the Search Box, using Aliases to select (when user types a recognized alias, engine flips). When box contents are cleared, reverts to default.  
* From the Location Bar, using Aliases to select
* From the Location Bar, using Aliases to select
= Bugs =
* New File Format
**[https://bugzilla.mozilla.org/show_bug.cgi?id=308674 Bug 308674]Monitor and implement the OpenSearch 1.1 standard
* Post Method
**[https://bugzilla.mozilla.org/show_bug.cgi?id=66363 Bug 66363]Search plugins don't work with the post method
* Search Engine Manager (Provisional)
**[https://bugzilla.mozilla.org/show_bug.cgi?id=232272 Bug 232272]Better management of search engines for toolbar (remove, store in profile, etc) over the current add new engines system
**[https://bugzilla.mozilla.org/show_bug.cgi?id=255545 Bug 255545]search plugins cannot be reordered
* Installation
**[https://bugzilla.mozilla.org/show_bug.cgi?id=124334 Bug 124334]Should display an error message when failing to add a search engine


= Work Estimate =  
= Work Estimate =  


3 Weeks
3 Weeks

Revision as of 18:43, 10 November 2005

Background

Firefox has several "internet search" functions, each distinct. This confuses users, adds to the QA and maintenance burden, and makes it difficult for us to focus on one single source of search for marketing and documentation purposes.

The main sources of confusion are:

  • The Search Box (Sherlock Plugins)
  • Bookmarks Keywords

There are others ("Web Search for" context menu, keyword URL, etc, but these are less important since their uses are more distinct).

We are also carrying a large amount of code around in the Internet Search Service that is no longer used.

A New Internet Search Service

A new Internet Search Service can be implemented offering:

  • a single collection of search engines (1)
  • a single update mechanism
  • an API for obtaining "sanitized search URLs" based on constraints. Constraints include "obtain a URL for engine X, given that Y is default and X is #3 in an ordered list" - this can then be connected to the URL bar and Bookmarks, as required.

I am not convinced we want to continue to use Sherlock files. Sherlock is largely a Mac thing, and it is not clear that Apple will continue to support it moving forward. I think it is worth considering using a different, XML or RDF system for storing search metadata on the web. This would allow us to reduce our code size. The customizable search function in Firefox 1.0 was obscure/not-discoverable enough to allow me to say with relative comfort that we do not need to necessarily migrate custom engines over. A new format or an extended Sherlock format may also provide us with the ability to add dynamic fields, such as a timestamp.

  • POST method search

The current search box depends totally on the search URL, which is specialized to GET method. In order to search via POST method, the browser side should controll the request (= channel) and display the result. I think, eventually, the backend will be simply a search engine file parser and its management (update etc.) tool.

User Interface

Search Engine Manager

The UI would remain largely as it is today but with "Add Engines..." being replaced by a "Customize..." link which would open a search engine manager. This would be a very simple UI with a list of installed engines, [maybe the ability to reorder them], and maybe a remote list of available engines from UMO.

Installation

From one of several access points including:

  • the web, via the .addEngine API
  • the remote engine list in the Customize UI
  • the "Add Keyword for Search" context menu item capturing updates.
  • Better UI on failure.

Searching

  • From the Search Box, using Ctrl+Up/Dn to cycle (but see bug 263146)
  • From the Search Box, using Aliases to select (when user types a recognized alias, engine flips). When box contents are cleared, reverts to default.
  • From the Location Bar, using Aliases to select

Bugs

  • New File Format
    • Bug 308674Monitor and implement the OpenSearch 1.1 standard
  • Post Method
    • Bug 66363Search plugins don't work with the post method
  • Search Engine Manager (Provisional)
    • Bug 232272Better management of search engines for toolbar (remove, store in profile, etc) over the current add new engines system
    • Bug 255545search plugins cannot be reordered
  • Installation
    • Bug 124334Should display an error message when failing to add a search engine

Work Estimate

3 Weeks