# r_morph_noun.gra - AGFL grammar defining morphology. # # This file is a module of the Russian Parser for Information Retrieval (RuForIR) AGFL grammar, # version 2.1, 25.10.2002. # It can be processed using the AGFL parser generator to generate the RuForIR parser. # # The grammar is based on the Affix Grammar for Basic Russian. # Original version 1997 # Updated by I. Azarova, 2002 # # Copyright 1997-2002 Saint-Petersburg University nounf (GENDER, ANIM, pl, nom, LEMMA): nounst (GENDER, ANIM, DECLTYPE, non|plabl|plgen|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, nom); nounst (GENDER, ANIM, DECLTYPE, plnom, LEMMA), inflsn_mx (GENDER, DECLTYPE, plnom); nounst_os (GENDER, ANIM, DECLTYPE, non|plabl|plgen|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, nom); nounst_os (GENDER, ANIM, DECLTYPE, plnom, LEMMA), inflsn_mx (GENDER, DECLTYPE, plnom); nounst_op (GENDER, ANIM, DECLTYPE, non|plabl|plgen|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, nom); nounst_op (GENDER, ANIM, DECLTYPE, plnom, LEMMA), inflsn_mx (GENDER, DECLTYPE, plnom); nounst_op_pl (GENDER, ANIM, DECLTYPE, non|plabl|plgen|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, nom); nounst_op_pl (GENDER, ANIM, DECLTYPE, plnom, LEMMA), inflsn_mx (GENDER, DECLTYPE, plnom); nounst_pl (GENDER, ANIM, DECLTYPE, non|plabl|plgen|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, nom); nounst_pl (GENDER, ANIM, DECLTYPE, plnom, LEMMA), inflsn_mx (GENDER, DECLTYPE, plnom). nounf (GENDER, ANIM, pl, gen, LEMMA): nounst (GENDER, ANIM, DECLTYPE, non|plabl|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, gen); nounst (GENDER, ANIM, DECLTYPE, plgen, LEMMA), inflsn_mx (GENDER, DECLTYPE, plgen); nounst_os (GENDER, ANIM, DECLTYPE, non|plabl|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, gen); nounst_os (GENDER, ANIM, DECLTYPE, plgen, LEMMA), inflsn_mx (GENDER, DECLTYPE, plgen); nounst_pl_gen (GENDER, ANIM, DECLTYPE, non|plabl|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, gen); nounst_pl_gen (GENDER, ANIM, DECLTYPE, plgen, LEMMA), inflsn_mx (GENDER, DECLTYPE, plgen); nounst_pl (GENDER, ANIM, DECLTYPE, non|plabl|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, gen); nounst_pl (GENDER, ANIM, DECLTYPE, plgen, LEMMA), inflsn_mx (GENDER, DECLTYPE, plgen). nounf (masc, ANIM, pl, gen, LEMMA): nounst_ms_gen (masfem, ANIM, DECLTYPE, non|plabl|plnom|SPECIAL, LEMMA), inflsn (fem, DECLTYPE, pl, gen); nounst_ms_gen (masfem, ANIM, DECLTYPE, plgen, LEMMA), inflsn (masc, DECLTYPE, pl, gen). nounf (GENDER, ANIM, pl, abl, LEMMA): nounst (GENDER, ANIM, DECLTYPE, non|plgen|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, abl); nounst (GENDER, ANIM, DECLTYPE, plabl, LEMMA), inflsn_mx (GENDER, DECLTYPE, plabl); nounst_os (GENDER, ANIM, DECLTYPE, non|plgen|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, abl); nounst_os (GENDER, ANIM, DECLTYPE, plabl, LEMMA), inflsn_mx (GENDER, DECLTYPE, plabl); nounst_op (GENDER, ANIM, DECLTYPE, non|plgen|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, abl); nounst_op (GENDER, ANIM, DECLTYPE, plabl, LEMMA), inflsn_mx (GENDER, DECLTYPE, plabl); nounst_op_pl (GENDER, ANIM, DECLTYPE, non|plgen|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, abl); nounst_op_pl (GENDER, ANIM, DECLTYPE, plabl, LEMMA), inflsn_mx (GENDER, DECLTYPE, plabl); nounst_pl (GENDER, ANIM, DECLTYPE, non|plgen|plnom|SPECIAL, LEMMA), inflsn (GENDER, DECLTYPE, pl, abl); nounst_pl (GENDER, ANIM, DECLTYPE, plabl, LEMMA), inflsn_mx (GENDER, DECLTYPE, plabl). # Regular declension nounf (GENDER, ANIM, sg, nom, LEMMA): nounst (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, nom). nounf (GENDER, ANIM, sg, CASE_O, LEMMA): nounst (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, CASE_O). nounf (fem, ANIM, sg, acc, LEMMA): nounst (fem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, acc). nounf (GENDER, ANIM, pl, dat, LEMMA): nounst (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, dat). nounf (GENDER, ANIM, pl, loc, LEMMA): nounst (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, loc). # Split paradigm: nominative singular/other positions/ other position in singular/ablative singular nounf (GENDER, ANIM, sg, nom, LEMMA): nounst_sg_nom (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, nom). nounf (GENDER, ANIM, sg, CASE_O, LEMMA): nounst_os_sg (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, CASE_O). nounf (fem, ANIM, sg, acc, LEMMA): nounst_sg_nom (fem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, acc). nounf (GENDER, ANIM, sg, abl, LEMMA): nounst_sg_abl (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, abl). nounf (GENDER, ANIM, sg, gen|dat|loc, LEMMA): nounst_osa (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, gen|dat|loc). nounf (GENDER, ANIM, sg, CASE_O, LEMMA): nounst_os (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, CASE_O). nounf (GENDER, ANIM, pl, dat, LEMMA): nounst_os (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, dat). nounf (GENDER, ANIM, pl, loc, LEMMA): nounst_os (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, loc). # Split paradigm: genitive plural/other positions/ other position in plural nounf (GENDER, ANIM, sg, nom, LEMMA): nounst_op (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, nom). nounf (GENDER, ANIM, sg, CASE_O, LEMMA): nounst_op (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, CASE_O). nounf (fem, ANIM, sg, acc, LEMMA): nounst_op (fem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, acc). nounf (GENDER, ANIM, pl, dat, LEMMA): nounst_op (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, dat). nounf (GENDER, ANIM, pl, loc, LEMMA): nounst_op (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, loc). nounf (GENDER, ANIM, pl, dat, LEMMA): nounst_op_pl (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, dat). nounf (GENDER, ANIM, pl, loc, LEMMA): nounst_op_pl (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, loc). # Split paradigm: singular/plural nounf (GENDER, ANIM, sg, nom, LEMMA): nounst_sg (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, nom). nounf (GENDER, ANIM, sg, CASE_O, LEMMA): nounst_sg (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, sg, CASE_O). nounf (fem, ANIM, sg, acc, LEMMA): nounst_sg (fem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, acc). nounf (GENDER, ANIM, pl, dat, LEMMA): nounst_pl (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, dat). nounf (GENDER, ANIM, pl, loc, LEMMA): nounst_pl (GENDER, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (GENDER, DECLTYPE, pl, loc). # Joint declension - morphological feminine nounf (fem, ANIM, NUMBER, nom, LEMMA): nounst_jt (joint, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, NUMBER, nom). nounf (fem, ANIM, sg, acc, LEMMA): nounst_jt (joint, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, acc). nounf (fem, ANIM, NUMBER, CASE_O, LEMMA): nounst_jt (joint, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, NUMBER, CASE_O). # Masculine declension following the feminine type nounf (masc, ANIM, NUMBER, nom, LEMMA): nounst_ms (masfem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, NUMBER, nom). nounf (masc, ANIM, NUMBER, CASE_O, LEMMA): nounst_ms (masfem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, NUMBER, CASE_O). nounf (masc, ANIM, sg, CASE_O, LEMMA): nounst_ms_ot (masfem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, sg, CASE_O). nounf (masc, ANIM, pl, PERIPH, LEMMA): nounst_ms_ot (masfem, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (fem, DECLTYPE, pl, PERIPH). # Pluralia tantum declension nounf (GENDER, ANIM, pl, nom, LEMMA): nounstpl (PLTANT, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (PLTANT, DECLTYPE, pl, nom). nounf (GENDER, ANIM, pl, CASE_O, LEMMA): nounstpl (PLTANT, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (PLTANT, DECLTYPE, pl, CASE_O). nounf (GENDER, ANIM, pl, gen, LEMMA): nounstpl_gen (PLTANT, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (PLTANT, DECLTYPE, pl, gen). nounf (GENDER, ANIM, pl, nom, LEMMA): nounstpl_ot (PLTANT, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (PLTANT, DECLTYPE, pl, nom). nounf (GENDER, ANIM, pl, PERIPH, LEMMA): nounstpl_ot (PLTANT, ANIM, DECLTYPE, PECUL, LEMMA), inflsn (PLTANT, DECLTYPE, pl, PERIPH). # Accusative consruction nounf (masc, anm, sg, acc, LEMMA): nounf (masc, anm, sg, gen, LEMMA). nounf (masc, inanm, sg, acc, LEMMA): nounf (masc, inanm, sg, nom, LEMMA). nounf (neut, ANIM, sg, acc, LEMMA): nounf (neut, ANIM, sg, nom, LEMMA). nounf (GENDER, anm, pl, acc, LEMMA): nounf (GENDER, anm, pl, gen, LEMMA). nounf (GENDER, inanm, pl, acc, LEMMA): nounf (GENDER, inanm, pl, nom, LEMMA).