Skrýt
Nastavení

Menu: Dotaz

Formulář pro vytváření dotazu

Pomocí volby Dotaz → Zadat nový dotaz je možné kdykoli začít nové hledání v korpusech. Kliknutím na tuto volbu předchozí vyhledaný dotaz, případně výsledky na něm vytvořené, opustíme a začínáme s novým hledáním. Následující text se zabývá především pokládáním dotazu do jednojazyčných korpusů, specifika zadávání dotazů do paralelního korpusu InterCorp popisuje podrobněji bonusová lekce základního kurzu práce s ČNK.

Po kliknutí na položku Zadat nový dotaz se uživateli zobrazí základní menu pro dotazování. V rámci tohoto formuláře je možné zvolit korpus, v němž se bude vyhledávat, a typ dotazu, který bude použit. Samotný dotaz je vkládán do vstupního řádku. Součástí formuláře je i interaktivní mezinárodní klávesnice pro zápis speciálních znaků (zejména pro vyhledávání v nečeských textech a pro vkládání speciálních znaků dotazovacího jazyka CQL). Dříve položené dotazy je možné vyvolat jednak přímo v menu, jednak pomocí odkazu Předchozí dotazy nad dotazovacím řádkem.

Volba korpusu

Volba korpusu vhodného pro řešení dané výzkumné otázky je důležité rozhodnutí, které je nutné učinit ještě před samotným započetím výzkumu. Spektrum korpusů dostupných v projektu ČNK se neustále rozšiřuje, bylo proto nutné způsob výběru korpusu v rozhraní KonText přizpůsobit jejich rostoucímu počtu.

Výběr korpusů: vlajkové a oblíbené korpusy

Po kliknutí na jméno korpusu (ve výchozím nastavení je jím vždy aktuální reprezentativní korpus synchronní psané češtiny, v současnosti SYN2015) se objeví rámeček pro výběr pracovního korpusu, který má dvě hlavní části:

  1. Můj seznam se zrychlenou volbou korpusů na jedno kliknutí. Tato zrychlená volba obsahuje jednak oblíbené korpusy, jejichž výběr je plně na uživateli, a dále tzv. vlajkové korpusy: přednastavený seznam několika korpusů, které ČNK považuje za reprezentanty jednotlivých oblastí své produkce. Jejich soustředění do jednoho místa pak usnadňuje volbu korpusu zejména uživatelům, kteří s ČNK pracovat teprve začínají. Oblíbené korpusy je možné zvolit buď na stránce se všemi dostupnými korpusy, nebo při práci s nimi v okamžiku zadávání dotazu (takové korpusy jsou signalizovány žlutou hvězdičkou).
  2. Všechny korpusy s možností výběru na základě jména a tzv. štítků, které korpusy charakterizují (typický korpus má štítků několik, např. SYN2015: psaný, synchronní, čeština, řada SYN, reprezentativní). Hledáte-li tedy například webový korpus češtiny, stačí zvolit štítky čeština + webový a objeví se všechny takové korpusy, které má ČNK v nabídce. Vyhledávání je možné zpřesňovat také zadáním části jména korpusu nebo jeho popisu do vyhledávacího řádku, výsledný seznam korpusů se přitom podle takto zadaných klíčových slov nebo jejich částí interaktivně filtruje. Je však třeba mít na paměti, že seznam z prostorových důvodů zobrazuje pouze prvních 25 položek; je-li seznam příliš dlouhý, je potřeba dotaz zpřesnit přidáním dalšího štítku nebo vyhledáním části jména korpusu.

Příklad: Uživatel hledá v záložce Všechny korpusy současnou verzi anglické části paralelního korpusu InterCorp. Zvolí nejprve štítky InterCorp a současná verze (pro výběr více štítků je třeba zároveň stisknout klávesu Ctrl/Command), v seznamu se objeví prvních 25 korpusů vyhovujících zadané podmínce, ačkoli InterCorp zahrnuje mnohem více jazyků. K nezobrazeným korpusům se lze dostat dalším filtrováním pomocí zadání části názvu či jazyka (pozor: názvy jednotlivých jazykových mutací korpusu InterCorp jsou anglicky!). Nalezený korpus lze kliknutím vybrat a začít v něm vyhledávat. Pomocí hvězdičky jej lze zároveň označit jako oblíbený; tím je tento korpus zařazen na seznam oblíbených korpusů a lze se k němu rychle a snadno dostat na jedno kliknutí.

Typ dotazu

Typ dotazu Nač je vhodný Jak funguje Co umí Příklady
Základní dotaz pro orientační a rychlé hledání Vyhledá vložený výraz jako slovní tvar bez ohledu na velikost písmen; jde-li zároveň o základní slovníkový tvar (lemma), vyhledají se také všechny jeho tvary. bez regulárních výrazů (RE), case-insensitive (nerozlišuje malá a velká písmena) černý kočka > černá kočka, černou kočku, černých koček…
černá kočka > černá kočka
Lemma pro analýzu celého paradigmatu/lexému Vyhledá všechny tvary přiřazené k danému lemmatu. RE, case-sensitive (rozlišuje malá a velká písmena), možnost upřesnit slovní druh černý > černý, černému, černá, černé, černými…
kočka > kočka, kočku, koček, kočkám…
Fráze pro víceslovnou kombinaci slovních tvarů Vyhledá zadanou frázi složenou z konkrétních slovních tvarů. RE, case-sensitive černý pes > černý pes
český pes > český pes
černého psa > černého psa
Slovní tvar pro analýzu izolovaných slovních tvarů Vyhledá zadaný slovní tvar. RE, case-in/sensitive (možnost volby Shoda velikosti) jakkoli > jakkoli
jakkoliv > jakkoliv
jakkoli.* > jakkoli, jakkoliv, Jakkoli, JAKKOLIV…
Část slova pro vyhledání řetězce znaků kdekoli ve slově Vyhledá po sobě následující znaky v rámci jednoho slova. RE, case-sensitive pra > praděda, praxe, doprava, lepra…
křá > pookřát, křáp, Jiskřákovi…
CQL pro vyhledání všeho, co lze pomocí korpusového manažeru vyhledat CQL je Corpus Query Language, korpusový dotazovací jazyk (do něhož si rozhraní KonText samo interně převádí všechny předchozí typy dotazů). RE, case-sensitive, CQL syntax [lemma="kočka"] > kočka, kočku, koček, kočkám…
[word="černá"] > černá
[lemma="číst"][tag="N.*"] > číst levity, četli článek, nečtete noviny…

Volbou korpusu a typu dotazu se může částečně měnit i podoba formuláře:

  1. Korpusy, které nemají lemmatizaci, neumožňují použít lemma jako typ dotazu.
  2. Některé typy dotazu (pouze ty, u kterých je to smysluplné) dovolují uživateli specifikovat, zda má být dotaz vyhodnocen s ohledem na velikost písmen (case-sensitive), nebo bez ohledu na velká/malá písmena (case-insensitive).
  3. V případě typu dotazu lemma a word je možné specifikovat i slovní druh (poziční atribut pos).
  4. Dotaz typu CQL umožňuje vkládat i interaktivně generované morfologické značky (u korpusů, které jsou takto značkovány) či podmínky specifikující texty, v nichž se má hledat (podmínka within).
  5. Zcela specifický je způsob kladení dotazu při vyhledávání v korpusech paralelních.

Každý dotaz je možné dále specifikovat na základě kontextu, v němž se hledaný výraz nachází, a dokumentů, v kterých se v rámci korpusu má hledat.

V momentě, kdy je dotaz zadán, je možné spustit vyhledávání buď kliknutím na tlačítko Hledat, nebo stisknutím klávesy Enter, pokud je kurzor umístěn v zadávacím řádku.

Specifikovat kontext

Formulář pro hledání v kontextu

Každý dotaz je možné dále specifikovat s ohledem na kontext (textové okolí), v němž se hledané slovo nebo fráze vyskytuje. Ke specifikaci slouží kontextová nabídka, která se nachází ve spodní části dotazovacího formuláře (v základním nastavení je skryta, je třeba ji aktivovat kliknutím).

Ve své podstatě je hledání v kontextu dodatečným filtrováním základní konkordance, která je specifikována dotazem v hlavní části formuláře. Uživatel má možnost nastavit rozsah kontextu, na nějž bude dodatečná filtrovací podmínka aplikována, typ dotazu, případně i slovní druh.

Obecně je možné říci, že libovolné hledání v kontextu lze převést na běžné hledání a následné filtrování (pomocí pozitivního nebo negativního filtru). Libovolné filtrování je ale také možné uskutečnit pomocí dotazovacího jazyka a provést totožnou operaci pouze v rámci jednoho kroku. Platí tedy, že vždy vede vícero cest k jednomu výsledku a záleží plně na uživateli, kterou možnost považuje za nejpohodlnější.

Omezit hledání

Formulář pro hledání v ad hoc vytvořeném subkorpusu

Potřebujeme-li hledat jen v úzce vymezené skupině textů z celého korpusu, máme dvě možnosti. Buď vytvoříme vlastní virtuální subkorpus, který bude pak možné vybrat v rámci nabídky korpusů, nebo dotaz omezíme nějakými podmínkami (typicky pomocí příkazu within). První možnost volíme zpravidla v situacích, kdy víme, že subkorpus budeme potřebovat delší dobu, nebo když je jeho specifikace složitá. Druhou možnost pak užíváme při ad hoc hledání v rámci nějakých jasně daných kategorií textů, které jsou specifikovány základními strukturními atributy.

Formulář nového dotazu poskytuje zjednodušení ve formě dodatečného formuláře Omezit hledání, který je umístěn pod kontextovým hledáním a aktivuje se podobně jako (výše popsaná) specifikace kontextu kliknutím.

V rámci tohoto formuláře je možné zaškrtnout ty hodnoty vybraných strukturních atributů, které nás zajímají. Formulář neobsahuje všechny strukturní atributy, pouze ty nejpoužívanější v daném korpusu (např. při hledání v SYN2015 jsou to txtype_group, txtype, genre, srclang). Použité zkratky je možné dohledat v příslušné sekci seznamů.

V jednom ze sloupců se objevuje seznam konkrétních textů (opusů nebo dokumentů), které odpovídají specifikované podmínce. V případě, že si z nabídky zvolíme nějaké kategorie, můžeme si zobrazit soupis textů, které takovéto podmínce odpovídají, pomocí tlačítka Zúžit výběr (pokud odpovídající seznam textů není příliš dlouhý). Sloupec se seznamem textů se přepočítá podle aktuálně zaškrtnutých kritérií. Takto můžeme pokračovat do té doby, než budeme spokojeni s vymezením dat, která k hledání chceme použít.

Pro podrobnější specifikaci je třeba buď použít podmínku within v rámci CQL dotazu, nebo vytvořit nový virtuální subkorpus.

Předchozí dotazy

Položka zobrazí přehled posledních kladených dotazů (zkrácený seznam dříve kladených dotazů je přístupný i přímo z dotazovacího formuláře prostřednictvím odkazu nad vstupním řádkem). Tyto dotazy lze filtrovat podle aktuálně používaného korpusu či podle typu dotazu a také lze zobrazit pouze dotazy archivované. Kliknutím na odkaz Upravit a vyhledat vložíme dříve specifikované zadání do dotazovacího formuláře a dotaz můžeme buď beze změny ihned vyhodnotit, nebo jej dále modifikovat (např. změnit korpus, na němž bude vyhodnocen, typ dotazu nebo specifikovat jeho kontext). Kliknutí na volbu Archivovat umožňuje dotaz pojmenovat a trvale jej uložit do archivu položených dotazů.

Seznam slov

Základním výstupem jakéhokoli dotazu je konkordance, tj. seznam všech výskytů (tokenů) odpovídajících dotazu spolu s jejich textovým okolím. Funkce Seznam slov naproti tomu vyhodnocuje dotaz tak, že výsledkem je seznam různých slov (typů), které dotazu odpovídají, spolu s jejich absolutní frekvencí, ARF nebo počtem dokumentů, v němž se hledaný jev vyskytuje. Funkce Seznam slov je tak analogická frekvenční distribuci, její výhodou je však rychlost a výpočetní nenáročnost, protože mezikrok přes konkordanci není u Seznamu slov potřeba.

Formulář pro vytváření seznamu slov

Ve formuláři je možné nastavit různé parametry hledání:

  • korpus (příp. jeho subkorpus), v kterém budeme seznam slov vytvářet
  • atribut (poziční nebo strukturní), který má být v seznamu vypsán
  • regulární výraz, kterému mají výsledná slova odpovídat (není-li zadán, seznam bude obsahovat všechny položky v korpusu, pokud odpovídají ostatním specifikacím ve formuláři)
  • minimální frekvence
  • výrazy pro pozitivní filtr – soubor1) se seznamem předvybraných slov, která ve výsledném seznamu chceme vidět (tzv. whitelist)
  • výrazy pro negativní filtr – soubor2) se seznamem předvybraných slov, která z výsledného seznamu chceme vyloučit (tzv. blacklist)
  • včetně číslic a interpunkce – volba rozšiřující hledání i na slova, která nejsou složena pouze z alfabetických znaků

Mezi nastaveními druhu výstupu najdeme kromě volby mezi absolutní frekvencí, ARF a počtem dokumentů také volbu konkrétního výstupního atributu či atributů. Tyto atributy přitom nemusejí být shodné s pozičním atributem zvoleným v horní části formuláře, na který jsou aplikovány všechny výše uvedené filtry. To umožňuje vytvořit např. frekvenční seznam všech sloves tak, že v horní části zadáme atribut tag, na něj podmínku na sloveso jako V.*, a zvolíme typ výstupu lemma – příklad takového zadání ukazuje obrázek.

Pokud je specifikace seznamu slov obecná a/nebo zvolený korpus rozsáhlý, může vyhodnocení této funkce trvat i několik minut.


1) , 2)
Seznam musí být ve formátu prostého textového souboru (.txt) v kódování UTF-8 s jednou položkou na každém řádku. Pro položky seznamu se používá přesné porovnávání, nikoliv porovnávání pomocí regulárních výrazů.