--- title: OpenSearch header-includes: - | ```{=html} ``` --- > "We want OpenSearch to do for search what RSS has done for content." > —[A9][quote] OpenSearch has two meanings, because the preferred way to name anything when it comes to computers is to make it as confusing as possible: - OpenSearch was a specification for an XML description of search engines which was particularly used to allow auto-discovery of search engines by web browsers before it got unnecessarily replaced by Chrome's WebExtensions. - OpenSearch is a search engine software licensed under Apache 2.0. The OpenSearch specification used to be hosted by an Amazon subsidiary called A9, and you can still see a trace of it in the XML namespace URL: `http://a9.com/-/spec/opensearch/1.1/`. It then has been hosted on opensearch.org before the domain name got stolen by the search engine software. - [GitHub repo][github] linked on the Wikipedia page with a backup of the OpenSearch site - [Latest archived version at OpenSearch][opensearch-spec] - [Latest archived version at A9][a9] - [Latest archived version of OpenSearch][opensearch] (the spec was moved to GitHub before the site died) I discovered this specification by trying to find out why the official DuckDuckGo Lite and HTML search engines on the SeaMonkey add-ons site were not working properly. If you have gone through other articles on this wiki you probably already know that if there's an XML somewhere, I ought to find or create an XSD for it. A developer at Microsoft seemed to have the same mindset as me in 2008 and [announced an XSD][xsd-blog] on his blog. The linked schema in the blog article points to [a file on Windows Live SkyDrive][xsd-skydrive], and while the file's listing has been archived, the file itself has not, so we are back to square one. So I went ahead and just wrote my own XSDs for OpenSearch, including all of its extensions. ## XSD * [OpenSearch 1.1 Draft 6](./opensearch.xsd) * [OpenSearch Geo Extension 1.0 Draft 2](./geo.xsd) * [OpenSearch Parameter Extension 1.0 Draft 2](./parameters.xsd) * [OpenSearch Referrer Extension 1.0 Draft 1](./referrer.xsd) * [OpenSearch Relevance Extension 1.0 Draft 1](./relevance.xsd) * [OpenSearch Suggestions Extension 1.1 Draft 1](./suggestions.xsd) * [OpenSearch Time Extension 1.0 Draft 1](./time.xsd) ## OpenSearch descriptions I wrote some OpenSearch descriptions myself and am hosting them on this site. If you are using a browser that supports OpenSearch description autodiscovery, you should be able to just click a button near your browser's search features to pick between the available search engines. Some browsers might even be able to automatically update the files if I ever need to change them. If your browser doesn't support autodiscovery, well you can just grab the XML files yourself here: * [DuckDuckGo Lite](./ddglite.xml) * [DuckDuckGo HTML](./ddghtml.xml) * [Mamont (Russian)](./mamont.xml) (FTP search engine) * [Mamont (English)](./mamont-int.xml) (FTP search engine) * [Veronica-2](./veronica2.xml) (Gopher search engine, proxied over HTTP) * [wttr.in](./wttr.xml) (weather forecast) * [Météociel](./meteociel.xml) (weather forecasts from a French association) * [dict.org](./dict.xml) (dictionary) * [Internet Archive](./archive.xml) * [Wayback Machine](./wayback.xml) * [Big Huge Labs Thesaurus](./words.xml) * Alpine Linux * Packages: [browser-supported](./alpine/packages.xml), [with OpenSearch Parameter](./alpine/packages-param.xml) * Package contents: [browser-supported](./alpine/contents.xml), [with OpenSearch Parameter](./alpine/contents-param.xml) * Flagged packages: [browser-supported](./alpine/flagged.xml), [with OpenSearch Parameter](./alpine/flagged-param.xml) ## To-do - Try to retrieve all the search engines that were known to A9 and see if they are still working, or maybe just document their existence - Look around the search engine directories that were known to OpenSearch.org - Learn more about the poorly documented Mozilla extensions to OpenSearch descriptions such as `Param` and `SearchForm` [quote]: http://web.archive.org/web/20050828043300/http://opensearch.a9.com/ [a9]: http://web.archive.org/web/20060821195444/http://a9.com/-/spec/opensearch/1.1/ [opensearch]: http://web.archive.org/web/20191007035316/http://www.opensearch.org:80/Home [opensearch-spec]: http://web.archive.org/web/20180325164414/http://www.opensearch.org:80/Specifications/OpenSearch/1.1 [github]: https://github.com/dewitt/opensearch/ [xsd-blog]: https://weblogs.asp.net/wkriebel/opensearch-xsd [xsd-skydrive]: http://web.archive.org/web/20080828085900/http://cid-fd2e2af28bb0e3b9.skydrive.live.com/self.aspx/Public/OpenSearch.xsd