[voikko] HY:n morfologinen jäsennin omorfi
Harri Pitkänen
hatapitk at iki.fi
Thu Jan 10 15:14:04 EET 2008
On Thursday 10 January 2008, Flammie Pirinen wrote:
> <http://svn.gna.org/viewcvs/omorfi/trunk/joukahainen.xslt?rev=16&view=marku
>p> Kasasin tuonne joukahainen.xml:stä saman muunnoksen kuin
> kotus-sanalistasta nyt. En täyttänyt vielä taivutusluokkien tai
> astevaihtelun kuvausta jos siihen olisi valmis loitsu jossain, mutta
> jos tuon täydentää niin kai pitäisi saada perustaivutuksen osalta
> sellainen vertailukelpoinen transduktori, jossa on
> joukahainen.xml-sanasto mukana.
Tämän tekeminen kokonaan taivutus- ja astevaihteluluokkineen xslt:n avulla
vaatii jonkin verran sellaisen koodin kirjoittamista uudelleen, joka on jo
Python-muodossa olemassa. Ei tosin kohtuuttoman paljon, mutta asiaa kannattaa
ehkä miettiä. Lisäksi Python-pohjainen Joukahainen->Kotus-astevaihtelumuunnin
olisi xslt-pohjaista hyödyllisempi siinä, että sen avulla voisin lisätä
Kotus-astevaihteluluokan näkyviin suoraan Joukahaiseen.
Tosin on myös niin, että osa tuosta Python-koodista (ja suurin
osa .aff-tiedostojen formaatista) periytyy jo Hunspell-fi-projektin ajoilta,
ja voi olla jo tullut tiensä päähän uudelleenkäytettävyyden kannalta. Näitä
taivutusten kuvauksiakin voisi ajatella siirrettäväksi XML-muotoon, jos se on
omorfin kannalta helpompaa.
Jos halutaan muuntaa Joukahaisen astevaihtelutyypit Kotuksen
astevaihtelutyypeiksi, pitäisi sen onnistua Pythonilla ottamalla pohjaksi
funktion __apply_gradation tiedostosta
http://voikko.svn.sourceforge.net/viewvc/voikko/trunk/tools/pylib/voikkoinfl.py?view=markup
ja muuttamalla vain return-lauseet niin, että ne palauttavat Kotuksen
astevaihtelutyyppien nimet. Ainoa ongelma on siinä, että nykyisessä
muodossaan tuon funktion parametri word ei (hämäyksen vuoksi :) tarkoita koko
sanaa perusmuodossaan, vaan perusmuotoa, josta on poistettu jokin pääte.
Tämä poistettava pääte (jos sellainen on) löytyy .aff-tiedoston kentästä
rmsfx. Päätettä poistettaessa on oleellista vain sen pituus, ei sisältö.
Siispä esimerkiksi sanalla "heittää" rmsfx-kentässä on "a", jolloin
astevaihtelun määräämisen kannalta sanan vartalo olisi "heittä".
Täydellisiä taivutusluokkien kuvauksia Joukahaisessa ei edes ole olemassa.
Nomineille kaikkien sijamuotojen taivutukset pitäisi löytyä tiedostosta
subst.aff niiden luokkien osalta, jotka Joukahainen tällä hetkellä tuntee.
Verbeille ei ole listattu mitään muuta kuin ne taivutukset, jotka tarvitaan
oikean luokan määrittämiseen. Lisäksi pieni osa harvinaisimpiin
taivutusluokkiin kuuluvista sanoista puuttuu edelleen Joukahaisesta, tosin
tämän korjaaminen ei sinänsä olisi ongelma, jos vain löytyisi joskus
riittävästi aikaa asiaan paneutua.
Joukahaisen taivutusluokituksen lisäksi voi harkita käytettäväksi
Suomi-malagan taivutustietoja, jotka löytyvät Suomi-malagan
lähdekoodipaketista hakemistosta inflection. Hannu tietää näistä enemmän,
niitä ei nimittäin Voikossa vielä käytetä. Tämäkin siksi, että Voikkoa ei ole
tältä osin ehditty vielä korjaamaan, ja taivutusluokituksen vaihto kokonaan
on testauksenkin kannalta aika suuri haaste. Käytännössä noiden kuitenkin
pitäisi vastata melko tarkasti niitä taivutuksia, jotka Voikko nykyään
sanoille hyväksyy, ja ne ovat lisäksi huomattavasti täydellisemmät kuin
Joukahaisen tuntemat taivutukset.
Kuinka täydellinen tuo omorfin taivutusluokkien kuvaus muuten on harvinaisten
tai poikkeavien taivutusten osalta?
Harri
More information about the voikko
mailing list