OpenSearch je XML formát, který je používán na tvorbu vyhledávacích modulů do webových prohlížečů. Autor webu, který obsahuje možnost vyhledávání, může vytvořit modul ve formátu OpenSearch, vystavit jej na svém webu a dát tak uživatelům možnost, aby si jej přidali do svého webového prohlížeče. Tím jim bude zpřístupněno vyhledávání na daném webu či službě.

Tento formát je v současné době podporován například Windows Internet Explorer 7.0 a Mozilla Firefoxem 2.0. Tvůrci Firefoxu též pro interní potřebu prohlížeče vytvořili formát MozSearch, který je na OpenSearch založen.

Formát byl ve verzi 1.0 uvolněn březnu 2005 na stránkách A9.com (viz Specifikace v externích odkazech). V současné době existuje návrh verze 1.1.

Funkční vrstvy editovat

  1. Samotné OpenSearch Description XML: obsahuje popis vyhledávacího enginu, cesty k našeptávači, jména webu, popisu webu a mnoha dalších.
  2. OpenSearch RSS (v OpenSearch 1.0) nebo OpenSearch Response (od verze 1.1) což jsou formáty pro zobrazení výsledků hledání.
  3. OpenSearch Aggregators: Což je seznam stránek které smějí zobrazovat výsledky z tohoto konkrétního OpenSearch dokumentu.

Specifikace editovat

Do html se OpenSearch dokument zavádí pomocí tagu <link> v hlavičce.

<head>
 <link rel="search" type="application/opensearchdescription+xml" href="/w/opensearch_desc.php" title="Wikipedie (Česky)" />
</head>

Takto například vypadá OpenSearch dokument používaný českou Wikipedií:

<?xml version="1.0"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>Wikipedie (Česky)</ShortName>
 <Description>Wikipedie (Česky)</Description>
 <Image height="16" width="16" type="image/x-icon">http://cs.wikipedia.org/favicon.ico</Image>
 <Url type="text/html" method="get" template="http://cs.wikipedia.org/w/index.php?title=Speci%C3%A1ln%C3%AD:Search&search={searchTerms}"/>
 <Url type="application/x-suggestions+json" method="GET" template="http://cs.wikipedia.org/w/api.php?action=opensearch&search={searchTerms}"/>
</OpenSearchDescription>

Specifikace dovoluje velké množství dalších tagů, jako například zda stránka obsahuje závadný obsah pro nedospělé:

<AdultContent>true/false</AdultContent>

V našem příkladu stojí za pozornost především řádek

<Url type="application/x-suggestions+json" method="GET" template="http://cs.wikipedia.org/w/api.php?action=opensearch&search={searchTerms}"/>

kde se nachází cesta k našeptávači. Ten je zprostředkován pomocí technologie JSON. Samotné vyhledávání pak většinou probíhá přes web-base script.

Externí odkazy editovat