Korpusi koji su dostupni preko veba pretražuju se postavljanjem upita u prozoru Regularni izraz koji se traži u osnovnom panelu. Rezultat pretrage korpusa za dati upit su sve niske koje odgovaraju obrascu opisanom regularnim izrazom. Na ovoj strani su dati tipični primeri formulisanja mogućih upita oslanjajući se na sintaksu zapisivanja regularnih izraza.
|
Korpus se sastoji od tekstova kodiranih u ASCII-karakterskom skupu. Tekstovi od kojih su sastavljeni pojedini korpusi prikupljani su u dugom vremenskom periodu različitim metodama i iz različitih izvora. Unifikacija kodiranja slova srpskih alfabeta je ostvarena polazeći od modifikovane verzije kodova koje je koristio sistem AURORA D. Vitasa. Ova kodna shema preslikava dijakritičke karaktere i digrafe koji se koriste u srpskoj latinici na način prikazan donjim tabelama. |
Dijakritički karakteri |
Veliko slovo |
AURORA kod |
kod ISO 8859-2 |
Malo slovo |
AURORA kod |
kod ISO 8859-2 |
Primer |
Č |
CY, Cy |
200 |
č |
cy |
232 |
Čačak = Cyacyak |
Ć |
CX, Cx |
198 |
ć |
cx |
230 |
Ćićevac = Cxicxevac |
Đ |
DX, Dx |
208 |
đ |
dx |
248 |
Đorđe = Dxordxe |
Š |
SX, Sx |
169 |
š |
sx |
185 |
Šuškati = Sxusxkati |
Ž |
ZX, Zx |
174 |
ž |
zx |
190 |
Žižak = Zxizxak |
Digrafi |
NJ, Nj |
NX, Nx |
--- |
nj |
nx |
--- |
Njegoš = Nxegosx |
LJ, Lj |
LX, Lx |
--- |
lj |
lx |
--- |
Ljubljana = Lxublxana |
DŽ, Dž |
DY, Dy |
--- |
dž |
dy |
--- |
Džordž = Dyordy |
|
Primer iz teksta Rastka Petrovića Ljudi govore, gde je original ćirilični, a koji je kodiran na gornji način može se naći ovde. |
Prednost ovakvog načina kodiranja je što se neutrališu razlike koje potiču od različitih
ćiriličnih i latiničnih kodnih shema. Nedostaci ovakvog kodiranja dolaze od:
- nedoslednost u kodiranju (npr. Džordž se javlja i kao Dyordy i kao Dzxordzx);
- grafemskih dvosmislica (npr. kod rimskih brojeva - CX je i 110 i Ć).
Kako ovi problemi inače opterećuju domaće izdavaštvo, kako je značajan broj ranih tekstova u korpusu bio kodiran prema shemi AURORE i kako ovakvo kodiranje svodi tekst na srpskom na 7-bitni ASCII karakterski skup, za sada je zadržan ovakav način kodiranja. |
Redosled slova je redosled koji je određen kolacionom sekvencijom ASCII-koda. Ovo znači da će "reč" 1%-tni prethoditi reči JEDNOPOSTOTNI jer je
kod za 1 manji od koda za J. Slično, reč JEDNOPOSTOTNI prethodi reči
Jednopostotni jer su im prva slova jednaka, a E ima manji ASCII-kod od koda za e.
|
Uključivanje opcije Razlikuju se velika i mala slova (klik mišem na ovo polje na panelu za pretraživanje) omogućava da se u formulisanju upita zahteva razlikovanje pojavljivanja velikih i malih slova, na primer, JAT i jat. Ako se ova opcija ne uključi, velika slova se ne razlikuju od malih bez obzira na njihovu različitu vrednost u kolacionoj sekvenciji. |
B. Meta-simboli za opis regularnih izraza
Pojedini karakteri iz ASCII-karakterskog skupa imaju posebno značenje u formulisanju upita.
To su razni interpunkcijski znaci koji omogućavaju da se formulišu upiti u obliku obrazaca umesto kao pojedinačne reči.
B.1 Tačka
Tačka . je meta-simbol koji poredi bilo koji karakter. To znači da upit
on. poredi sve one niske od tri karaktera koje počinju slovima
o n, a za kojima sledi bilo koji drugi karakter. U slučaju ovog obrasca, to će biti karakteri
a e i o u,
pa će odgovor na upit biti pojavljivanja niski
ona,
one,
oni,
ono,
onu, itd.
Obrazac ne poredi nisku on jer za njom ne sledi neposredno drugi neblanko karakter.
(Primer)
B.2 Klase
Upit se može formulisati preciznije koristeći se pojmom karakterske klase. Karakterska klasa se navodi među uglastim zagradama [ i
]. Upit koji iz korpusa izdvaja samo niske
ona,
one,
oni,
ono,
onu
se izražava na sledeći način preko karakterske klase:
on[aeiou].
(Primer)
Dozvoljen je i skraćeni zapis karakterske klase koristeći simbol crtica
-. Obrazac
[X-Y] poredi sve karaktere počev
od karaktera X do karaktera Y u odnosu na kolacionu ASCII-sekvenciju (videti t. A). Korisne su, na primer, karakterske klase:
- [a-z] koja poredi bilo koje malo slovo latinske abecede između slova a i z;
- [A-Z] koja poredi bilo koje veliko slovo latinske abecede između slova A i Z;
- [A-Za-z] koja poredi bilo koje alfabetsko slovo latinske abecede;
- [0-9] koja poredi bilo koju cifru dekadnog brojnog sistema između cifara 0 i 9;
Na primer, obrazac [a-z]a izdaja sve niske od dva slova koje počinju nekim malim slovom, a završavaju se slovom a.
(Primer)
Obrazac [A-Z][a-z] izdaja sve niske od dva slova koje počinju nekim velikim slovom, a završavaju se nekim malim slovom.
(Primer)
B.3 Operatori
U formulaciji upita moguće je koristiti i različite operatore kako bi se upit postavio na precizniji način.
- Operator disjunkcije (ILI) - vertikalna crta |
- omogućava pretragu nekog konačnog (obično manjeg) broja niski. Na primer, (on|ona) poredi niske on ili ona.
(Primer)
- Klinijeva zvezdica *
- odgovara ponavljanju 0 ili više karaktera niske na koju je primenjen. Na primer, u zapisu uzvika au, broj pojavljivanja slova u nije ograničen: au,
auu, auuu, itd. Obrazac koji poredi sve ovakve niske je auu* gde podniska uu* znači da se slovo u pojavilo prvo jednom (prvo (u), a zatim bilo koliko puta (u*).
(Primer)
- Plus-operator +
- odgovara ponavljanju bar jednog karaktera u niski na koju je primenjen.
Na primer, u zapisu uzvika au, broj pojavljivanja slova u nije ograničen: au, auu, auuu, ali se slovo u mora pojaviti bar jednom. Obrazac koji poredi ovakve niske je au+ gde podniska u+ znači da se slovo u mora pojaviti bar jednom.
Plus-operator primenjen na nisku X: X+ je skraćeni zapis za niske opisane Klinijevom zvezdicom, tj. XX*.
(Primer)
- Operator grupisanja ( )
- omogućava faktorizaciju niski kojima je iskazan upit. Na primer, ako se upitom žele opisati oblici flektivne paradigme imenice deca: deca, dece,
deci, decu, deco, decom, onda je jedan način postavljanja ovog upita:
deca|dece|deci|decu|deco|decom
Izvlačeći zajednički faktor dec, ovaj upit se formuliše na ekvivalentan način operatorom grupisanja kao:
dec(a|e|i|u|o|om)
(Primer)
- Operator izostavljanja ?
- primenjen na izraz koji mu prethodi znači da se taj izraz pojavio ili jednom ili nijednom.
Na primer, upit ona? poredi niske on
(a se pojavilo 0 puta) i ona (a se pojavilo jednom)
(Primer). Upit
on.? poredi niske on i
sve niske od tri karaktera koje počinju "(formalnim) prefiksom" on.
(Primer)
C. Složeniji primeri
Kombinacijom karakterskih klasa i operatora mogu se postaviti složeni upiti. Evo nekoliko primera:
- Posmatrajmo uzvike uh, uf, uuuhhh, uuf, itd. U njima se karakter u javlja bar jednom, kao i karakteri h i f. Moguće oblike ovih uzvika u tekstu možemo opisati sledećim regularnim izrazom
u+(h|f)+.
Uzgredni efekat je prepoznavanje niske UHF koja takođe poredi obrazac.
(Primer)
- Imenica devojka može biti zapisana i kao djevojka,
dxevojka i čak divojka. Oblik dativa je devojki ili
devojci, a oblik genitiva množine devojaka ili devojki.
Opisane grafemske varijacije, kao i alternacije osnove se mogu opisati
jednim regularnim izrazom d(j|x)?(e|i)voja?(k|c)[a-z]+.
Ovaj regularni izraz samo aproksimira oblike flektivne paradigme imenice
devojka, jer poredi i neželjene oblike kao devojacyki ili
devojcyica.
(Primer)
- Regularni izraz koji aproksimira pojavljivanja morfeme glav je
dat sa izrazom [a-z]*glav[a-z]* (Primer). Slično, regularni izraz [a-z]*[aeiou][aeiou][a-z]*
poredi sve niske koje sadrže dva uzastopna vokala, (Primer).
. D. Nesusedni oblici
Regularnim izrazima se mogu opisati i kombinacije više reči. Izraz [] poredi bilo koju reč u
korpusu, a Klinijeva zvezdica primenjena na ovaj izraz, tj. []* poredi 0 ili više
uzastopnih reči. Koristeći ovaj izraz, moguće je formulisati upit
oblika: docxi
[]* na koji poredi sva pojavljivanja infinitiva
docxi za kojim, na nekom rastojanju, sledi predlog na.
Ograničavanje rastojanja se zadaje na sledeči način: docxi []{0,n}
na gde n u vitičastim zagradama označava rastojanje
u broju reči. Tako, upit: docxi []{0,5}
na podrazumeva da će se između docxi i na
nalaziti najviše pet reči. (Primer)
|
E. Strukturne etikete. Pozicioni atributi
Referisanje na strukturne atribute (<p>, <seg> i sl), kao i
upotreba pozicionih atributa moguća je bilo iz komandne linije CQP-a,
bilo kroz poseban interfejs prema korpusu, a prema specifikaciji upitnog
jezika datog na strani korisnika CQP-a.
|
F. Polja za definisanje upita i administracija
- U polje Regularni izraz koji se traži
unosi se regulrani izraz koji definiše upit.
- U polju Korpus koji se pretražuje bira se, preko padajućeg menija, korpus nad kojim će se vršiti pretraga.
- Klikom na polje razlikuju se velika i mala slova uključuje se opcija kojom se velika slova razlikuju od malih.
- Polje sortiranje dopušta izbor između dve mogućnosti: da se prilikom sortiranja konkordanci prema desnom kontekstu vodi računa o
interpunkcijskim znacima ili ne.
- Polje maksimalan broj rezultata omogućava da se podesi broj pojavljivanja niski. Predefinisana vrednost je 100. Postavljanjem
ove vrednosti na 0 dobijaju se svi primeri koji odgovaraju upitu
- Polje kontekst rezultata
omogućava da se podesi širina konteksta u konkordancama.
- Klik na broj pored reda sa konkordancama daje širi kontekst (prethodni i sledeći red iz teksta).
- Klik na nisku u konkordancama uokvirenu uglastim zagradama generiše nove konkordance koje se sastoje samo od niske na koju se "kliknulo".
- Polja Konfiguracija i
Administracija dopuštaju podešavanje
korisničkih parametara (promena lozinke, sličice, e-mail adrese, URL-a, itd).
- Polje Statistika prikazuje veličinu
dostupnih korpusa prema konvenciji brojanja reči u sistemu INTEX.
- Polje Izlogujte se se
bira kada je završena sesija (rad) nad korpusom.
|
G. Literatura
[1] Utvić, Miloš: Regularni izrazi, Svet reči, 2002.
[2] Vitas, Duško: Prevodioci i interpretatori (Uvod u teoriju i metode kompilacije programskih jezika), glave I -
IV, Matematički fakultet, Beograd, 2006.
|