Vyhledávání

V systému RETROBI je vedle základního průchodu katalogem též možné vyhledávat v jednotlivých textových množinách dat. Fulltextové vyhledávání může dle specifikace dotazu prohledávat veškerá textová data v systému. U každého lístku byl před jeho vystavením na web pořízen OCR přepis. Při vyhledávání je možno dle své volby omezit množinu dat, nad nimiž chce vyhledávat (skupina, šuplík, část katalogu atp.), kvalitu těchto dat (vše, jen přepisy, atp.) či blíže specifikovat oblast pro vyhledávání (jednotlivé segmenty či jednotlivá pole).

UPOZORNĚNÍ: Kvalita vyhledávání je podmíněna kvalitou dostupných textových přepisů jednotlivých lístků. Každý lístek je napojen na automatický OCR přepis, ten však nemusí být zcela spolehlivý (špatně čitelné či ručně psané lístky). Verifikované množiny textových dat (upravený OCR přepis, segmentace lístku) vznikají aktivitou registrovaných uživatelů a do jejich schválení za jejich obsah administrátoři systému neručí. Položkový rozpis umožňující hledání dle jednotlivých polí není momentálně systematicky vyplňován. Jakmile bude pro určitou množinu dat plně použitelný, bude tato skutečnost zřetelně oznámena. FULLTEXTOVÉ VYHLEDÁVÁNÍ JE TEDY POUŽITELNÉ SPÍŠE JAKO DOPLNĚK NEŽ PLNOHODNOTNÝ EKVIVALENT PRŮCHODU KATALOGU DLE JEHO ŘAZENÍ.

Možnosti nastavení

Vyhledávání lze omezit dle několika kritérií.

  • Pomocí nabídky "Kde hledat" lze vyhledávací dotaz omezit pouze na vybranou množinu textových dat. V první řadě lze prohledávat veškerá textová data (nabídka "Všude") či název skupiny. Zároveň lze vyhledávání omezit pouze na určitou kvalitu textových dat (nejlepší dostupný přepis, jen segmentace, jen revidovaný přepis OCR, jen původní přepisy), dílčí část lístku vymezenou segmentací (Názvové údaje, Bibliografická citace, Anotace) či konkrétní položky (prozatím předpřipraveno pro Autorské osoby, Odkazované osoby, Všechny osoby).
  • Pomocí zaškrtávátek v nabídce "Omezit" lze vyhledávání omezit na vybranou část / vybrané části katalogu.
  • Pomocí nabídky "Filtr" lze vyhledávání omezit pouze na lístky s určitým statutem.
  • Při vyhledávání lze zároveň aktivovat rozlišení velkých a malých písmen, popř. vyhledávání omezit pouze na stávající schránku.

Jazyk vyhledávacího dotazu

Vyhledávací algoritmus je schopen nalézt jakýkoli znak v jakékoli ucelené sekvenci znaků od mezery do mezery (je možno použít "divoké karty", tj. znaky * a ?) nebo jakoukoli slovní sekvenci oddělenou mezerami (v tomto případě není možno využít "divoké karty"). Tyto dva vyhledávací přístupy nelze v rámci téhož dotazu kombinovat. Vyhledávací engine Lucene je blíže popsán zde.

Interpunkce vyhledávacího dotazu

Divoké karty vs. Ohraničení fráze

ZnakVýznamPříklad dotazuPříklad odpovědi
*Libovolně dlouhá souvislá řada znaků (0-nekonečno)st*lstal, strojil, stůl, stodol
  *st*l*přistáli, ustrojili, stoly, stodola
?Právě jeden libovolný znakst?lstůl, stal, styl
""Ohraničení fráze"písně kosmické"Najde všechny výskyty této slovní sekvence

Hledání pomocí divokých karet a ve slovních sekvencích nelze v jednom dotazu vzájemně kombinovat (tj. např. dotaz "st*l ?idle" engine neumí zodpovědět).

Vzhledem k možnostem výskytu šumů při OCR rekognoskaci doporučujeme pokládat dotaz ve tvaru *hledanýřetězec*.

Vyhledávací znaky

ZnakVýznamPříklad dotazuPříklad odpovědi
""Ohraničení fráze"písně kosmické"Najde všechny výskyty této slovní sekvence (nelze využít divoké karty)
~Podobnoststůl~0.8najde všechna slova podobná výchozímu z 80 %
""~Vzdálenost"písně kosmické"~10najde všechny případy, kdy jsou obě slova vzdálena maximálně n slov od sebe
{ }Exkluzivní interval{1901 TO 1905}Najde všechny případy, kdy se v definované množině textů vyskytuje řetězec spadající do uvedeného intervalu s vyloučením krajních hodnot
[ ]Inkluzivní interval[1901 TO 1905]Najde všechny případy, kdy se v definované množině textů vyskytuje řetězec spadající do uvedeného intervalu včetně krajních hodnot

Znaky pro kombinovaný dotaz

ZnakVýznamPříklad dotazuPříklad odpovědi
+ / AND / &&slučování+Němcová +BabičkaVšechny záznamy, kde se objevují oba řetězce současně
- / NOTnegace+Němcová -BabičkaVšechny záznamy, kde se objevuje první, ale nikoli druhý řetězec
OR / ||alternace+Němcová OR BabičkaVšechny záznamy, kde se objevuje první nebo druhý řetězec
( )výběr části+(Němcová OR Babička) +1855Všechny záznamy, které obsahují třetí a buď první, nebo druhý řetězec

Kombinovaný dotaz lze různě rozvíjet pomocí uzavření jeho části do kulatých závorek ( ).

Pomocí znaků pro kombinovaný dotaz lze v dotazu kombinovat části využívající principu divokých karet a části využívající principu slovní sekvence, tj. engine zodpoví např. dotaz +„Božena Němcová“ +*Babi?ka*.

Před vybranou množinu znaků majících význam při formulaci dotazu (+ - && || ! ( ) { } [ ] ^ " ~ * ? : \) je pro jejich vyhledání nutno před každý jednotlivý z nich zapsat zpětné lomítko.

Omezení pro spolehlivost fulltextového vyhledávání:

  1. Fulltextové vyhledávání nefunguje nad ručně psanými lístky (nemožno získat OCR přepis; týká se cca 1/4 katalogu).
  2. U lístků psaných přes průklepový papír či jinak obtížněji čitelných je vyhledávání v datech limitováno kvalitou přepisu.
  3. Některá omezení vyhledávání (hledání nad segmentací, hledání v položkách, hledání dle stavu lístku) prozatím zmenší množinu dat pro vyhledávání na několik desítek/stovek lístků, relevance použití vyhledávacích filtrů je odvislá od kvantity i kvality uživatelské editace.

Tipy pro fulltextové vyhledávání

  1. V systému jsou uchovávány původní přepisy, aby uživatel mohl při formulaci dotazu případně zohlednit chyby, které se na nich objevují. Problémy se obvykle vyskytují u prvních a posledních písmen slov, obzvlášť vyskytují-li se v ručně psaných hranatých závorkách, velkých písmen, čtení písmen s diakritikou, rozlišování písmen m a n atp.
  2. Při hledání v ucelené sekvenci znaků je možno využít a vzájemně kombinovat tzv. "divoké karty" - ? a *
  3. Doporučujeme užívat * na začátku i na konci dotazu
  4. Možnost kombinovaných dotazů (buď jedním přímým dotazem, nebo s využitím funce schránka)
  5. Možnost hledání číselných rozsahů (dotaz [1900 TO 1905] najde všechny lístky z daného pětiletí; pozn. engine chápe čísla jako "slova" bez ohledu na počet řádů, proto by uvedený dotaz případně v odpovědi nabídl i lístky, na nichž se vyskytuje číslo 19012, 19123654 atp.). Lze uplatnit i na rozsahy abecední [Neruda TO Nezval]
  6. Možnost rozlišovat velká i malá písmena
  7. Možnost využít pravidelností ve struktuře lístku, např. pravidelné umístění znaku = před název titulu: dotaz "= LN"~1 najde všechny lístky, u nichž jsou zdrojem Lidové noviny (odfiltruje případy, kdy je zkratka LN využita v anotaci)

Rozcestník