Formát OpenSearch – díl 2.
|
OpenSearch je otevřený formát založený na XML, jehož vývoj iniciovala a podporuje firma Amazon. V současné době existuje Draft 3 verze 1.1, kterou implementují i nejnovější verze oblíbených prohlížečů Internet Explorer 7 a Firefox 2.0 nebo vyhledávač A9 právě od Amazonu. OpenSearch je sada specifikací z nichž nejdůležitější jsou formáty OpenSearch Description a OpenSearch Response. Tyto formáty jsou určeny k popisu vyhledávaciho stroje a popisu nalezených výsledků.
OpenSearch Description
Tento formát je, jak už název napovídá, určen k popisu vyhledávacího stroje. Základní elementy patří do jmenného prostoru http://a9.com/-/spec/opensearch/1.1/
a kořenovou značkou je OpenSearchDescription
. Tato obsahuje následující subelementy:
- ShortName
- Název vyhledávacího stroje
- Musí být v dokumentu právě jednou a jeho obsah je omezen na 16 znaků čistého textu.
- Description
- Popis vyhledávacího stroje
- Musí být v dokumentu právě jednou a jeho obsah je omezen na 1024 znaků čistého textu.
- Url
- URL hledaného datazu
- Musí být v dokumentu alespoň jednou, nejedná se o párovou značku, obsah je definován následujícímí atributy.
- povinný atribut template definuje šablonu url datazu, šablona je parametrizována pomocí OpenSearch URL template syntaxe, povinný je parametr
{searchTerms}
, který je nahrazován hledanou frází- povinný atribut type určuje MIME typ výstupu hledání
- nepovinné atriuty indexOffset a pageOffset slouží k posunutí indexu prvního výsledku nebo první stránky, oba jsou přednastaveny na jedničku. Ovlivňují počítání nepovinných parametrů
{startIndex?}
a{startPage?}
. - Musí být v dokumentu alespoň jednou, nejedná se o párovou značku, obsah je definován následujícímí atributy.
- Contact
- Nepovinný element definující kontakt na adminstrátorara. Element může obsahovat pouze e-mailovou adresu a v dokumentu se může vyskytovat maximálně jednou.
- Tags
- Nepovinný element obasující klíčová slova oddělená mezerou. Délka je omezena na 255 znaků a element se může v dokumentu vyskytovat maximálně jednou.
- LongName
- Název vyhledávacího stroje ve formě čitelné pro lidi
- Může se v dokumentu vyskytovat maximálně jednou a měl by být preferovaný pro zobrazování před ShortName. Délka je omezena na 48 znak.
- Image
- Ubsahuje URL obrázku, grafické ikonky, spojené s vyhledávačem.
- Počet výskytů není omezen, jednotlivé obrázky se mohou lišit ve velikosti a MIME typu, které jsou specifikovány následujícími volitelnými atributy.
- Atribut width určuje šířku obrázku
- Atribut height určuje šířku obrázku
- Atribut type určuje MIME typ obrázku
- Počet výskytů není omezen, jednotlivé obrázky se mohou lišit ve velikosti a MIME typu, které jsou specifikovány následujícími volitelnými atributy.
- Language
- Definuje jazyk výsledku hledání, obsah může obsahovat pouze zkratku jazyka podle XML nebo asterix (*) pro všechny jazyky.
- InputEncoding
- Znaková sada přijímaná vyhledávacím strojem. Pokud nejí určeno použije se UTF-8 kódování.
- OutputEncoding
- Znaková sada výstupu hledání.
Sepecifikace definuje ještě několik dalších elementů pro definici práv k dokumentu, ochrana mladistvích apod. které se používají ve specifických případech a jejich použití není zas tak běžné. Nyní si ještě doplníme výčet URL parametru.
OpenSearch URL parameters
Parametry se používají v atributu template
značky Url
a jsou nahrazovány konkrétními daty dotazu. Syntaxe parametru je velice jednoduchá: název pramatru je uzavřen ve složených závrokách a nepovinnost parametru je vyjádřena otazníkem před uzavírací závorkou. Příklad: {povinnyParametr}
a {nepovinnyParametr?}
. Parametry mohou být rozšířeny o vlastní sady pomocí XML jmenných prostorů. Ukázka <Url xmlns:moje="urn:moje-rozsireni" template="http://example.com/?q={searchTerms}&neco={moje:neco}" ...
.
- searchTerms
- Parametr je nahrazen hledanou frází
- count
- Parametr je nahrazen počtem výsledků na stránku
- startIndex
- Parametr je nahrazen indexem výsledku
- startPage
- Parametr je nahrazen číslem stránky
- language
- Parametr je nahrazen jazykem
- inputEncoding
- Parametr je nahrazen vstupním kódováním
- outputEncoding
- Parametr je nahrazen výstupním kódováním
Ukázku kódu najdete v prvním díle této mini série. Tímto bych ukončil popis formátu OpenSearch Description a příště bych rád něco o formátu OpenSearch Response.
Okomentováno