.
... .
.
.
Poliqarp (for DjVu)
Wprowadzenie do składni kwerend (wersja bardzo wstępna)
Janusz S. Bień
Katedra Lingwistyki Formalnej Uniwersytetu Warszawskiego
12 listopada 2012 IJP UŚ, Katowice
Wcześniejsze prezentacje
Bień, Janusz S. (2011) Skanowane teksty jako korpusy.
Złożone do druku.
http://bc.klf.uw.edu.pl/201/
Bień, Janusz S. (2010) Scanned texts as corpora - a case study.
In: SLAVICORP. CORPORA OF SLAVIC LANGUAGES, 22-23 November 2010, University of Warsaw. (Unpublished) http://bc.klf.uw.edu.pl/173/
http://bc.klf.uw.edu.pl/319/ 2/25
System Poliqarp (dla DjVu)
Polyinterpretation Indexing Query and Retrieval Procesor Procesor kwerend i wyszukiwań
z indeksowaniem wielointerpretacyjnym Podstawowa dokumentacja:
Adam Przepiórkowski (2004):
Korpus IPI PAN. Wersja wstępna
http://nlp.ipipan.waw.pl/~adamp/Papers/2004- corpus/
Adam Przepiórkowski, Aleksander Buczyński, Jakub Wilk (2010): Ściągawka do Narodowego Korpusu Języka Polskiego
http://nkjp.pl/poliqarp/help/en.html
Wersja pełna:
http://eprints.wbl.klf.uw.edu.pl/56/
Dwupoziomowe wyrażenia regularne
Kwerendy
http://poliqarp.sourceforge.net/man/poliqarp- query- syntax.html
query ::= main-query within-part? meta-part?
Przykład metadanych i sekcji (parts):
.Słownik polszczyzny XVI wieku .
.
... .
.
.
Wyszukiwanie może być ograniczone do konkretnych tomów za pomocą warunku meta, np. meta vol=i/X lub meta vol=I/X ogranicza wyszukiwanie do pierwszego tomu, natomiast meta orig=pdfogranicza je do 5 tomów „urodzonych cyfrowo”.
Za pomocą warunku within wyszukiwanie może być ograniczone do sekcji, noszących umowne nazwy: front (tytularia itp.), intro (wstępy zawarte w I tomie), list (listy haseł na początku
poszczególnych tomów), body (hasła), errata (erraty i
uzupełnienia, ta sekcja zawiera się w body), back (końcowe strony tomu), inset (wkładki z wykazem źródeł i skrótów).
http://bc.klf.uw.edu.pl/319/ 4/25
Geneza wyrażeń regularnych
http://www.rand.org/pubs/research_memoranda/
2008/RM704.pdf
Struktura wyrażeń regularnych
Brak polskiej terminologii!
człony —branches (alternatywa) jednostki —pieces (sekwencja)
kwantyfikatory i ograniczniki (więzy) —bounds (stosują się do poprzedzającego wyrażenia) wyrażenia podstawowe lub nawiasowe —atoms (rekursja)
wyrażenie atrybutywne (możliwy zapis uproszczony)
http://bc.klf.uw.edu.pl/319/ 6/25
Struktura wyrażeń regularnych
człony —branches pies
pies | kot jednostki —pieces pies
w domu
w domu | w pracy
wyrażenia podstawowe lub nawiasowe —atoms(całostki?) pies
(w domu | w pracy) pies (w domu | w pracy)
Wyrażenie atrybutywne proste
pies
"pies"
'pies'
Formy pierwotne:
[orth=pies]
[orth="pies"]
Formy pochodne (tylko korpus IMPACT):
[orth="skutkach"]
[base="ſkutkách"]
Inne atrybuty (tylko eksperymentalny korpus słownika Lindego):
[pos="font"]
[font-style="italic"] [font-weight="bold"]
[font-family="Impact"] [font-size="22.262pt"]
http://bc.klf.uw.edu.pl/319/ 8/25
Wyrażenie atrybutywne rozszerzone
Modyfikatory— flags:
/i, /I, /x, /X
Istotne są wartości domyślne — inne dla tekstów i metadanych!
pies/i
"pies"/x [orth=pies/i]
[orth="pies"/x]
[orth="skutkach"/i]
[base="ſkutkách"/x]
Metadane:
meta vol=i/X
Wyrażenie atrybutywne złożone
.Operator główny .
..
.. .
. ."~" "~~" "=" "==" "!~" "!~~" "!=" "!=="
.Inne operatory .
.
... .
. .| & !
[orth="pies" | orth="kot"]
[orth!="pies"]
[!orth="pies"]
[font-style="italic" & font-weight="bold"]
[orth=x/x & orth=y/x]
http://bc.klf.uw.edu.pl/319/ 10/25
Atrybuty jako wyrażenie regularne
[orth="pies"]
[orth="pies | kot"](źle!) [orth="pies|kot"]
.Napisy — strings .
.
... .
.
.
Literały — literals
Metaznaki — escape sequences
\u1E83
LATIN SMALL LETTER W WITH ACUTE,
\U00010300
OLD ITALIC LETTER A (Supplementary Multilingual Plane).
Atrybuty jako wyrażenie regularne
Metaznak .
.Metaznaki mnogościowe — bracket expressions .
.
... .
.
.
wykluczeniowe: [^ … []
wyliczeniowe: [ … []
.Znaki i klasy znaków .
.
... .
.
.
[:alnum:], klasa alfanumeryczna: wszystkie znaki klasy alfabetycznej i numerycznej;
[:alpha:], klasa alfabetyczna: wszystkie znaki klasy górnej i dolnej kaszty;
[:digit:], klasa numeryczna: cyfry dziesiętne;
[:lower:], klasa kaszty dolnej: kilkaset znaków z tzw. podstawowej płaszczyzny wielojęzycznej (ang. Basic Multilingual Plane) standardu Unicode, którym standard ten przypisuje własność kaszty dolnej;
http://bc.klf.uw.edu.pl/319/ 12/25
Atrybuty jako wyrażenie regularne
.Znaki i klasy znaków .
.
... .
.
.
[:punct:], znaki interpunkcyjne;
[:upper:], klasa kaszty górnej: kilkaset znaków z tzw. podstawowej płaszczyzny wielojęzycznej (ang. Basic Multilingual Plane) standardu Unicode, którym standard ten przypisuje własność kaszty górnej;
klasy równoważności ignorowanie kaszty ignorowanie akcentów
wyjątkowo ignorowanie innych różnic Przykład:
"[[=s=]]k[[=a=]]rg[[=a=]]"
Kwantyfikatory i ograniczniki
.Kwantyfikatory .
.
... .
.
.
*— zero lub więcej razy +— co najmniej jeden raz
?— zero lub jeden raz .Ograniczniki
. .
... .
.
.
{3,5}— od 3 do 5 razy {,5}— co najwyżej 5 razy {3,}— co najmniej 3 razy
http://bc.klf.uw.edu.pl/319/ 14/25
Równoważność języka zależna od locale („scenerii”)
Klasy równoważności dopuszczalne tylko wewnątrz bracket expressions(„metaznaków mnogościowych”)!
.Some examples (The dictionary of the 16th century Polish) .
.
... .
.
.
"[[=s=]f]k[[=a=]]rg[[=a=]]" within body
"[[=s=]]k[[=a=]]rg[[=a=]]" meta orig=pdf
"[[=s=]]k[[=a=]]rg[[=a=]]" meta vol=xxxi
"[[=s=]f]k[[=a=]]rg[[=a=]]" within body
Słownik polszczyzny XVI wieku — tylko hasła, konkordancje tekstowe
http://bc.klf.uw.edu.pl/319/ 16/25
"[[=s=]f]k[[=a=]]rg[[=a=]]" within body
Słownik polszczyzny XVI wieku — tylko hasła, konkordancje graficzne
OCR w Słowniku polszczyzny XVI wieku
http://bc.klf.uw.edu.pl/319/ 18/25
"[[=s=]]k[[=a=]]rg[[=a=]]" meta vol=xxxi
Słownik polszczyzny XVI wieku — tomy XXXI–XXIV (urodzone cyfrowo)
"[[=s=]]k[[=a=]]rg[[=a=]]" within body meta vol=xxxi Słownik polszczyzny XVI wieku --- hasła w tomach XXXI--XXIV (urodzonych cyfrowo)
http://bc.klf.uw.edu.pl/319/ 20/25
„Metaznaki mnogościowe wykluczeniowe”
Klasy znakowe dopuszczalne tylko wewnątrz
bracket expressions(„metaznaków mnogościowych”)!
.Słownik Lindego .
.
... .
.
.
Syr.= Syryjski
Syr.= Syreniusza zielnik .Kwerenda dla Syr. = Syryjski .
.
... .
. .
Syr "\." "[^[:digit:]].*"
„Metaznaki mnogościowe wykluczeniowe”
Klasy znakowe dopuszczalne tylko wewnątrz
bracket expressions(„metaznaków mnogościowych”)!
.Słownik Lindego .
.
... .
.
.
Syr.= Syryjski
Syr.= Syreniusza zielnik .Kwerenda dla Syr. = Syryjski .
.
... .
. .
Syr "\." "[^[:digit:]].*"
http://bc.klf.uw.edu.pl/319/ 21/25
Syr "\.
Słownik Lindego
Syr "\." "[^[:digit:]].*"
Słownik Lindego
http://bc.klf.uw.edu.pl/319/ 23/25
OCR w słowniku Lindego
Syr "\." "[^[:digit:]].*"
Kontakt
jsbien@uw.edu.pl jsbien@mimuw.edu.pl
nmpt-ann@mimuw.edu.pl
http://lists.mimuw.edu.pl/listinfo/nmpt-ann nmpt-l@mimuw.edu.pl
http://lists.mimuw.edu.pl/listinfo/nmpt-l
http://bc.klf.uw.edu.pl/319/ 25/25