AplikaceAplikace
Nastavení

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
Následující verzeObě strany příští revize
pojmy:dotazovaci_jazyk [2013/10/03 12:20] – [Dotazovací jazyk užívaný v ČNK] Václav Cvrčekpojmy:dotazovaci_jazyk [2016/03/19 18:22] – [Dotazovací jazyk užívaný v ČNK] Michal Křen
Řádek 3: Řádek 3:
 Dotazovací jazyky jsou jazyky používané v informatice k dotazování databázových systémů; každý takový systém používá nějaký dotazovací jazyk s přesně definovanou syntaxí.  Dotazovací jazyky jsou jazyky používané v informatice k dotazování databázových systémů; každý takový systém používá nějaký dotazovací jazyk s přesně definovanou syntaxí. 
  
-Při práci s korpusy se dotazovací jazyk používá pro zadávání dotazů v [[pojmy:korpusovy_manazer|korpusových manažerech]], konkordančních programech apod. I tady se jednotlivé jazyky většinou liší, přestože typicky vycházejí z [[pojmy:regularni_vyrazy|regulárních výrazů]], které dále rozšiřují a adaptují pro svoje potřeby [FIXME opravdu? jaké jazyky a jak se vlastně liší?]+Při práci s korpusy se dotazovací jazyk používá pro zadávání dotazů v [[pojmy:korpusovy_manazer|korpusových manažerech]], konkordančních programech apod. I tady se jednotlivé jazyky většinou liší, přestože typicky vycházejí z [[pojmy:regularni_vyrazy|regulárních výrazů]], které dále rozšiřují a adaptují pro svoje potřeby.
  
 ====== Dotazovací jazyk užívaný v ČNK ====== ====== Dotazovací jazyk užívaný v ČNK ======
  
-Dotazovací jazyk užívaný v korpusech ČNK provozovaných na [[pojmy:korpusovy_manazer|korpusovém manažeru]] Manatee se nazývá **CQL (corpus query language)** a je jen mírně modifikovanou verzí původního jazyka CQL vytvořeného pro [[pojmy:korpusovy_manazer|korpusový manažer]] CWB. Jeho základním kamenem je dotaz na jednu pozici (slovo) v korpusu:+Dotazovací jazyk užívaný v korpusech ČNK provozovaných na korpusovém manažeru [[pojmy:korpusovy_manazer#manatee|Manatee]] se nazývá **[[https://www.sketchengine.co.uk/corpus-querying/|CQL (corpus query language)]]** a je modifikovanou verzí původního jazyka CQL vytvořeného pro korpusový manažer [[pojmy:korpusovy_manazer#cwb|CWB]]. Jeho základním kamenem je dotaz na jednu pozici (slovo) v korpusu:
  
-''[atribut="hodnota"]''+''[atribut=<nowiki>"</nowiki>hodnota<nowiki>"</nowiki>]''
  
-kde atributem se myslí [[pojmy:atributy_pozicni|atribut poziční]] (word, lemma, tag apod.), hodnotou je pak hledaný výraz sám, nebo vzor specifikovaný pomocí [[pojmy:regularni_vyrazy|regulárního výrazu]]. Součástí dotazu můžou být i omezení na [[pojmy:atributy_strukturni|strukturní atributy]] (věta, doc, opus), u nichž je možné specifikovat i další hodnoty (např. u opusů rok vydání, žánr, autor apod.). Omezení na strukturní atributy se na rozdíl od omezení na atributy poziční uvádějí ve špičatých závorkách.+kde atributem se myslí [[pojmy:atributy_pozicni|atribut poziční]] (word, lemma, tag apod.), hodnotou je pak hledaný výraz sám, nebo vzor specifikovaný pomocí [[pojmy:regularni_vyrazy|regulárního výrazu]]. Součástí dotazu můžou být i omezení na [[pojmy:atributy_strukturni|strukturní atributy]] (věta, doc, opus), u nichž je možné specifikovat i další hodnoty (např. u opusů rok vydání, žánr, autor apod.). Omezení na strukturní atributy se na rozdíl od omezení na atributy poziční uvádějí [[kurz:zobrazeni_dotazu#jak_vypada_tzv_vertikala|ve špičatých závorkách]] (např. ''<s id=%%"10"%%/>''); viz podrobnější a úplnější popis [[https://www.sketchengine.co.uk/corpus-querying/|jazyka CQL]]. CQL je formální jazyk, jenž má přesnou (a konečnou) definici. CQL podporuje některé prvky tradičních [[pojmy:regularni_vyrazy|regulárních]] jazyků((Např. kvantifikátory, kulaté závorky a logické operátory.)), ale i rozšířené, specificky korpusové, příkazy jako je ''[[pojmy:within|within]]'', ''[[pojmy:meet|meet]]'', ''[[pojmy:union|union]]'' nebo ''[[pojmy:containing|containing]]'', které pracují se strukturou korpusu.
  
-CQL je formální jazyk, jenž má přesnou (a konečnou) definici. CQL podporuje některé prvky((Např. kvantifikátory, kulaté závorky a logické operátory.)) tradičních [[pojmy:regularni_vyrazy|regulárních]] jazyků, ale i rozšířené, specificky korpusové, příkazy jako je ''[[pojmy:within|within]]'', ''[[pojmy:meet|meet]]'', ''[[pojmy:union|union]]'' nebo ''[[pojmy:containing|containing]]'', které pracují se strukturou korpusu. +Dotaz na více pozic současně (tedy sekvenci slov či širší kontext) vznikne prostým zřetězením dotazů na jednotlivé po sobě následující pozice. Např. dotaz ''[lemma=<nowiki>"</nowiki>mít<nowiki>"</nowiki>][][lemma=<nowiki>"</nowiki>srdce<nowiki>"</nowiki>]'' hledá všechny výskyty lemmat //mít// a //srdce//, mezi nimiž se vyskytuje libovolná pozice (tj. slovo nebo interpunkce).
- +
-Dotaz na více pozic současně (tedy sekvenci slov či širší kontext) vznikne prostým zřetězením dotazů na jednotlivé po sobě následující pozice. Např. dotaz ''[lemma=<nowiki>"</nowiki>mít<nowiki>"</nowiki>][][lemma=<nowiki>"</nowiki>srdce<nowiki>"</nowiki>] hledá všechny výskyty lemmat //mít// a //srdce//, mezi nimiž se vyskytuje libovolná pozice (tj. slovo nebo interpunkce). +
- +
-(FIXME sem patří třeba ten poslední příklad z tabulky na stránce regulárních výrazů!)+
  
 Následující příklad dotazovacího jazyka korpusového manažeru Manatee najde všechny doklady spojení typu „bez chuti a bez zápachu“, „bez práce, bez peněz“ apod. vyskytující se v korpusu uvnitř jedné věty (struktura ''<s/>'', viz [[pojmy:atributy_strukturni|strukturní atributy]]):  Následující příklad dotazovacího jazyka korpusového manažeru Manatee najde všechny doklady spojení typu „bez chuti a bez zápachu“, „bez práce, bez peněz“ apod. vyskytující se v korpusu uvnitř jedné věty (struktura ''<s/>'', viz [[pojmy:atributy_strukturni|strukturní atributy]]): 
  
-''[lemma="bez"] [tag="N.*"] []{0,1} [lemma="bez"] [tag="N.*"] within <s/>''+''[lemma=<nowiki>"</nowiki>bez<nowiki>"</nowiki>] [tag=<nowiki>"</nowiki>N.*<nowiki>"</nowiki>] []{0,1} [lemma=<nowiki>"</nowiki>bez<nowiki>"</nowiki>] [tag=<nowiki>"</nowiki>N.*<nowiki>"</nowiki>] within <s/>''
  
 Každou pozici v sekvenci zde zastupuje jedna hranatá závorka, případně doplněná kvantifikátorem ve složených závorkách. První pozici vyhovují všechna slova lemmatizovaná jako "bez", druhé pozici vyhovují všechna substantiva (tedy slovní tvary opatřené morfologikých tagem začínajícím písmenem "N" za nímž následuje libovolná sekvence libovolných znaků), třetí pozici vyhovuje libovolné jedno (či žádné) slovo, čtvrtá pozice je opět omezena lemmatem "bez", pátá opět pouze morfologickou značkou substantiva. Direktiva "within" omezuje celý dotaz na rámec jednoho strukturního atributu typu "<s/>" (tedy jedné věty). Pro tento účel lze využít též direktivu ''containing''. Každou pozici v sekvenci zde zastupuje jedna hranatá závorka, případně doplněná kvantifikátorem ve složených závorkách. První pozici vyhovují všechna slova lemmatizovaná jako "bez", druhé pozici vyhovují všechna substantiva (tedy slovní tvary opatřené morfologikých tagem začínajícím písmenem "N" za nímž následuje libovolná sekvence libovolných znaků), třetí pozici vyhovuje libovolné jedno (či žádné) slovo, čtvrtá pozice je opět omezena lemmatem "bez", pátá opět pouze morfologickou značkou substantiva. Direktiva "within" omezuje celý dotaz na rámec jednoho strukturního atributu typu "<s/>" (tedy jedné věty). Pro tento účel lze využít též direktivu ''containing''.
  
 Při práci s korpusovým manažerem je vhodné znát použitý dotazovací jazyk a jeho možnosti. Ačkoli některá uživatelská rozhraní umožňují zadávat dotaz i bez znalosti konkrétního dotazovacího jazyka, bývají v tomto případě možnosti práce s korpusem omezeny, což je dáno snahou o uživatelský komfort a srozumitelnost rozhraní, která je vždy na úkor plného využití bohatých kombinací možností vyhledávání. Při práci s korpusovým manažerem je vhodné znát použitý dotazovací jazyk a jeho možnosti. Ačkoli některá uživatelská rozhraní umožňují zadávat dotaz i bez znalosti konkrétního dotazovacího jazyka, bývají v tomto případě možnosti práce s korpusem omezeny, což je dáno snahou o uživatelský komfort a srozumitelnost rozhraní, která je vždy na úkor plného využití bohatých kombinací možností vyhledávání.
 +
 ==== Související odkazy ==== ==== Související odkazy ====
  
-<WRAP round box 50%> +<WRAP round box 49%> 
-[[pojmy:regularni_vyrazy|Regulární výrazy]] • [[manual:pokrocile_dotazy|Manuál: Pokročilé dotazy]] • [[pojmy:atributy_pozicni|Poziční atributy]] • [[http://trac.sketchengine.co.uk/wiki/SkE/CorpusQuerying|Corpus Querying at sketchengine.co.uk]]+[[pojmy:regularni_vyrazy|Regulární výrazy]] • [[kurz:pokrocile_dotazy|Kurz: Pokročilé dotazy]] • [[pojmy:atributy_pozicni|Poziční atributy]] • [[kurz:pokrocile_dotazy#co_v_korpusu_znamena_pozice|Co znamená pozice]] • [[https://www.sketchengine.co.uk/corpus-querying/|Corpus Querying at sketchengine.co.uk]] • [[pojmy:case-sensitive|Case-sensitive vs. case-insensitive]]
 </WRAP> </WRAP>
 +