#Distributed under the terms of the GNU General Public License version 2 # or any later version. # ==================================================================== # # N O R T H E R N S Á M I D E P E N D E N C Y G R A M M A R # # ==================================================================== # # ==================================================================== # # ========== # # Delimiters # # ========== # DELIMITERS = "<.>" "" "" "<...>" "<¶>" ; SETS LIST N = N ; LIST V = V ; LIST A = A ; LIST Adv = Adv ; LIST CC = CC ; LIST CS = CS ; LIST Inf = Inf ; LIST Neg = Neg ; LIST Num = Num ; LIST Po = Po ; LIST Pr = Pr ; LIST Pcle = Pcle ; LIST Prop = Prop ; LIST Pron = Pron ; LIST Sup = Sup ; LIST IV = IV ; LIST TV = TV ; LIST COMMA = "," ; LIST Ind = Ind ; LIST Pot = Pot ; LIST Imprt = Imprt ; LIST ImprtII = Imprt II ; LIST Cond = Cond ; LIST ConNeg = ConNeg ; LIST Interj = Interj ; LIST Pcle = Pcle ; LIST Num = Num ; LIST ABBR = ABBR ; LIST ACR = ACR ; LIST Prs = Prs ; LIST Prt = Prt ; LIST Cmpnd = Cmpnd ; LIST PrfPrc = PrfPrc ; LIST PrsPrc = PrsPrc ; LIST Actor = Actor ; LIST Actio = Actio ; LIST Ger = Ger ; LIST Indef = Indef ; LIST Ill = Ill ; LIST Com = Com ; LIST Gen = Gen ; # POS sub-categories # ------------------ LIST Pers = Pers ; LIST Dem = Dem ; LIST Interr = Interr ; LIST Indef = Indef ; LIST Recipr = Recipr ; LIST Refl = Refl ; LIST Rel = Rel ; LIST Interj = Interj ; LIST Adp = Adp ; # Other tags # ---------- LIST ABBR = ABBR ; LIST ACR = ACR ; LIST CLB = CLB ; LIST QMARK = """ ; # ADD " FOR SYNTAX COLOURING. LIST PPUNCT = PUNCT ; SET PUNCT = PPUNCT - QMARK ; LIST LCRD = @CNP ; # local coordinator LIST GCRD = @CVP ; # global coordinator LIST WORD = N A Adv V Pron CS CC Po Pr Interj Pcle Num ABBR ACR \? ; # Verb sets SET NOT-VERB = WORD - V ; SET V-IND-FIN = Prs OR Prt ; SET V-MOOD = Ind OR Pot OR Imprt OR ImprtII OR Cond ; LIST GC = ("gč") ; SET VFIN = GC OR V-MOOD - ConNeg ; SET VFIN-NOT-IMP = VFIN - Imprt ; SET VFIN-POS = V-MOOD - ConNeg - Neg ; SET VFIN-NOT-IMP = VFIN - Imprt ; SET VFIN-NOT-NEG = VFIN - (Neg Foc/ge) ; LIST V-SG1 = (V Ind Prs Sg1) (V Ind Prt Sg1) (V Cond Prs Sg1) (V Cond Prt Sg1) (V Pot Prs Sg1) (V Neg Ind Sg1); LIST V-SG2 = (V Ind Prs Sg2) (V Ind Prt Sg2) (V Cond Prs Sg2) (V Cond Prt Sg2) (V Pot Prs Sg2) (V Neg Ind Sg2); LIST V-SG3 = (V Ind Prs Sg3) (V Ind Prt Sg3) (V Cond Prs Sg3) (V Cond Prt Sg3) (V Pot Prs Sg3) (V Neg Ind Sg3); LIST V-DU1 = (V Ind Prs Du1) (V Ind Prt Du1) (V Cond Prs Du1) (V Cond Prt Du1) (V Pot Prs Du1) (V Neg Ind Du1); LIST V-DU2 = (V Ind Prs Du2) (V Ind Prt Du2) (V Cond Prs Du2) (V Cond Prt Du2) (V Pot Prs Du2) (V Neg Ind Du2); LIST V-DU3 = (V Ind Prs Du3) (V Ind Prt Du3) (V Cond Prs Du3) (V Cond Prt Du3) (V Pot Prs Du3) (V Neg Ind Du3); LIST V-PL1 = (V Ind Prs Pl1) (V Ind Prt Pl1) (V Cond Prs Pl1) (V Cond Prt Pl1) (V Pot Prs Pl1) (V Neg Ind Pl1); LIST V-PL2 = (V Ind Prs Pl2) (V Ind Prt Pl2) (V Cond Prs Pl2) (V Cond Prt Pl2) (V Pot Prs Pl2) (V Neg Ind Pl2); LIST V-PL3 = (V Ind Prs Pl3) (V Ind Prt Pl3) (V Cond Prs Pl3) (V Cond Prt Pl3) (V Pot Prs Pl3) (V Neg Ind Pl3); # Note that imperative verbs are not included in these sets! # Some subsets of the VFIN sets # - - - - - - - - - - - - - - - SET V-SG = V-SG1 OR V-SG2 OR V-SG3 ; SET V-DU = V-DU1 OR V-DU2 OR V-DU3 ; SET V-PL = V-PL1 OR V-PL2 OR V-PL3 ; SET V-DU-PL = V-DU1 OR V-DU2 OR V-DU3 OR V-PL1 OR V-PL2 OR V-PL3 ; SET V-NOT-SG1 = VFIN-NOT-IMP - V-SG1 ; SET V-NOT-SG2 = VFIN-NOT-IMP - V-SG2 ; SET V-NOT-SG3 = VFIN-NOT-IMP - V-SG3 ; SET V-NOT-DU1 = VFIN-NOT-IMP - V-DU1 ; SET V-NOT-DU2 = VFIN-NOT-IMP - V-DU2 ; SET V-NOT-DU3 = VFIN-NOT-IMP - V-DU3 ; SET V-NOT-PL1 = VFIN-NOT-IMP - V-PL1 ; SET V-NOT-PL2 = VFIN-NOT-IMP - V-PL2 ; SET V-NOT-PL3 = VFIN-NOT-IMP - V-PL3 ; SET V-1-2 = V-SG1 OR V-SG2 OR V-DU1 OR V-DU2 OR V-PL1 OR V-PL2 ; SET V-3 = V-SG3 OR V-DU3 OR V-PL3 ; LIST NONVFIN-SUBJ = Inf VAbess (Actio LOC) VGen Ger ; SET NONVFIN = V - VFIN ; # NP sets # NP sets defined according to their morphosyntactic features # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LIST N-SG-NOM = (N Sg Nom); LIST N-PL-NOM = (N Pl Nom); #SET LEX-N = N - N-DER; LIST PROP = (N Prop); SET CNOUN = N - Prop; SET HNOUN = N - Cmpnd ; SET HNOUN-NOM = (N Nom) - Cmpnd ; SET N-NOT-GEN = N - (N Gen) ; SET NP = N OR A ; # anything that can take except numerals SET NP-HEAD = Pron OR HNOUN ; SET NP-HEAD-SG = (Pron Sg) OR (Pron Sg3) OR (N Sg) OR (A Sg) - Cmpnd; SET NP-HEAD-PL = (Pron Pl) OR (Pron Pl3) OR (N Pl) OR (A Pl) - Cmpnd; SET NP-HEAD-SG-NOM = (Pron Sg Nom) OR (Pron Sg3 Nom) OR (N Sg Nom) OR (A Sg Nom) - Cmpnd; SET NP-HEAD-PL-NOM = (Pron Pl Nom) OR (Pron Pl3 Nom) OR (N Pl Nom) OR (A Pl Nom) - Cmpnd; SET NP-HEAD-NOM = NP-HEAD-SG-NOM OR NP-HEAD-PL-NOM; SET NP-HEAD-ACC = (Pron Acc) OR (N Acc) OR (A Acc) - Cmpnd; SET NP-HEAD-GEN = (Pron Gen) OR (N Gen) OR (A Gen) - Cmpnd; # The PRE-NP-HEAD family of sets # - - - - - - - - - - - - - - - - SET PRE-NP-HEAD = (Prop Attr) OR (Prop @>N) OR (A Attr) OR (ABBR Attr) OR ("buorre") OR (Pron Pers Gen) OR (N Gen) OR Num OR Cmpnd OR CC OR (Pron Dem) OR (Pron Refl Gen) OR (Pron Indef) OR (PrfPrc @>N) OR (PrfPrc @>N) OR PrsPrc OR (A Ord) ; # OR (Ill LINK 1 (PrfPrc @>N)) OR (Com LINK 1 (PrfPrc @>N)) OR (Loc LINK 1 (PrfPrc @>N)) # The strict version of items that can only be premodifiers, not parts of the predicate SET V-PRE-NP = PrfPrc OR PrsPrc OR Actor OR Actio OR (V A) OR (Ind Prs Sg3) OR (Ind Prs Sg1) OR (Imprt Prs Du2) ; # to be used together with PRE-NP-HEAD before @>N is disambiguated SET NP-MEMBER = PRE-NP-HEAD OR N ; SET PRE-A-N = (Pron Pers Gen) OR (Pron Indef) OR Num OR (A Ord) OR (Pron Dem) OR (Pron Refl Gen) ; SET NOT-PRE-A-N = WORD - PRE-A-N ; LIST PUNCT-LEFT = (PUNCT LEFT) ; LIST PUNCT-RIGHT = (PUNCT RIGHT) ; SET PRE-APP = COMMA OR PUNCT-LEFT OR PRE-NP-HEAD ; # This set ist not only for what can # stand in front of appositions but also # postmodifiers. # V NPNHAIIP... N # BOS ... N V # There must be a sensible naming convention for these sets... # Most strict BARRIERs... SET NPNH = WORD - PRE-NP-HEAD OR ABBR ; # NPNH = "NOT-PRE-NP-HEAD" SET NPNHV = WORD - PRE-NP-HEAD - V-PRE-NP ; # including possible verbal premodifiers SET NPNHA = WORD - PRE-NP-HEAD - Adv ; # NPNHA = "NOT-PRE-NP-HEAD-OR-ADV" SET NPNHAV = WORD - PRE-NP-HEAD - Adv - V-PRE-NP ; # including possible verbal premodifiers SET NPNHAI = WORD - PRE-NP-HEAD - Adv - Indef ; # NPNHAI = " ...-OR-INDEF" SET NPNHAII = WORD - PRE-NP-HEAD - Adv - Indef - Ill ; # Illative indir.obj. SET NPNHAIIP = WORD - PRE-NP-HEAD - Adv - Indef - Ill - Pcle ; # <== is this our NPNH set? SET NPNHC = WORD - PRE-NP-HEAD - Com ; # "njaŋggofirpmiiguin bivdin" SET NPNHCCC = WORD - PRE-NP-HEAD - COMMA ; SET NPNHCC = WORD - PRE-NP-HEAD - COMMA - LCRD ; SET NAPP = WORD - PRE-APP ; # Boundary sets LIST MO = "goas" "gokko" "gos" "gosa" "govt" "makkár" "manne" "mo" "mot" "mov" "movt" ("nugo" @CVP) (V Qst); SET S-BOUNDARY = (Pron Interr) OR (Pron Rel) OR ("muhto") OR MO OR ("\;") OR (":") OR ("-") OR ("–") OR CS ; # includes CP. Remember that (",") and CC are potential sentence boundaries, too SET S-BOUNDARY1 = (Pron Interr) OR (Pron Rel) OR ("muhto") OR MO OR ("\;") OR (":") OR ("-") OR ("–") ; # includes not CS because of "go" in questions, before it is disambugated. SET S-BOUNDARY2 = (Pron Interr) OR (Pron Rel) OR ("muhto") OR MO OR ("\;") OR (":") OR ("-") OR ("–") OR (@CVP) ; SET NOT-COMMA = CLB - COMMA OR PUNCT-LEFT OR PUNCT-RIGHT ; SET NOT-QMARK = WORD OR CLB OR PUNCT - QMARK ; # Syntactic tags and sets # ======================= # Syntactic tag definitions LIST @+FAUXV = @+FAUXV ; # finite auxiliary LIST @+FMAINV = @+FMAINV ; # finite main verb LIST @-FADVL = @-FADVL ; # object of infinite verb outside of the verbal LIST @-FAUXV = @-FAUXV ; # infinite auxiliary verb LIST @-FMAINV = @-FMAINV ; # infinite main verb LIST @-FOBJ = @-FOBJ ; # object of infinite verb outside of the verbal LIST @-FSUBJ = @-FSUBJ ; # subject of infinite verb outside of the verbal LIST @>A = @>A ; # modifier of adj LIST @>ADVL = @>ADVL ; # modifier of advl LIST @>N = @>N ; # modifier of N LIST @>Num = @>Num ; # attr of numeral LIST @>P = @>P ; # complement of P LIST @A< = @A< ; # complement of A LIST @ADVL = @ADVL ; # adverbial LIST @APP>Pron = @APP>Pron ; # apposition of pron LIST @APP-ADVL< = @APP-ADVL< ; # apposition of advl LIST @APP-N< = @APP-N< ; # apposition of N LIST @APP-Num< = @APP-Num< ; # apposition of Num LIST @APP-Pron< = @APP-Pron< ; # apposition of Pron LIST @CNP = @CNP ; # conjunction between NPs LIST @COMPL-CS< = @COMPL-CS< ; # complement of CS LIST @CVP = @CVP ; # conjunction between VPs LIST @FS-ACC>> = @FS-ACC>> ; # finite subclause, object of speechact verb LIST @FS-ADVL = @FS-ADVL ; # finite subclause ... LIST @FS-N< = @FS-N< ; # relative clause to N LIST @FS-OBJ = @FS-OBJ ; # finite subclause functioning as object LIST @FS-STA = @FS-STA ; # finite sentence, statement LIST @HAB = @HAB ; # habitive (aka advl of possessiv constr) LIST @ICL-ADVL = @ICL-ADVL ; # non-finite subclause ... LIST @ICL-AUX< = @ICL-AUX< ; # "right" argument of auxiliary (?) LIST @ICL-OBJ = @ICL-OBJ ; # non-finite subclause ... LIST @ICL-STA = @ICL-STA ; # non-finite subclause ... LIST @N< = @N< ; # modifier of N LIST @Num< = @Num< ; # modifier of Num LIST @ = @OBJ> ; # object LIST @P< = @P< ; # complement of P LIST @PCLE = @PCLE ; # particle LIST @ = @SUBJ> ; # subject LIST @V = @V ; # verbal LIST @XADVL< = @XADVL< ; # LIST @-F ; LIST @OBJ = @OBJ ; # Syntactic set definitions # ========================= LIST @-FARG = @-FOBJ @-FSUBJ ; LIST @ARG = @SUBJ @OBJ @SPRED @OPRED ; LIST @AUX = @-FAUXV @+FAUXV ; LIST @MV = @-FMAINV @+FMAINV ; LIST @XADVL = @ADVL @-FADVL ; SET @-FARG/ADVL = @-FARG OR @-FADVL ; SET @ARG/ADVL = @ARG OR @XADVL - (CC @XADVL) ; SET @CLAUSE = @ARG/ADVL OR @-FARG/ADVL OR VFIN OR NONVFIN ; # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§ §§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§ §§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§ dep grammar starts §§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§ §§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§ §§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§ # Correction rules # ================ SECTION SUBSTITUTE:SubV=mv (V) ( V) TARGET @MV ; SUBSTITUTE:SubV=aux (V) ( V) TARGET @AUX ; SUBSTITUTE:SubVaux=FS-N (@+FAUXV) (@FS-N<) TARGET V (*-1 Rel BARRIER VFIN) ; SUBSTITUTE:SubVmain=FS-N (@+FMAINV) (@FS-N<) TARGET V (*-1 Rel BARRIER VFIN) ; SUBSTITUTE:SubV=iclaux (@-FMAINV) (@ICL-AUX<) TARGET NONVFIN (*-1 @AUX BARRIER S-BOUNDARY2) ; SUBSTITUTE:SubAux=iclaux (@+FAUXV) (@ICL-AUX<) TARGET VFIN (*-1 @AUX BARRIER S-BOUNDARY2) ; SUBSTITUTE:SubFmainv=V (@+FMAINV) (@V) TARGET V ; SUBSTITUTE:SubNfmainv=V (@-FMAINV) (@V) TARGET V ; SUBSTITUTE:SubFaux=V (@+FAUXV) (@V) TARGET V ; SUBSTITUTE:SubNfaux=V (@-FAUXV) (@V) TARGET V ; # Mapping rules # ============= SECTION ### habitive SETPARENT:SetHab @HAB TO (0* V-3); ### postposition / preposition SETPARENT:ComplToPo @>P TO (*1 Po + @XADVL BARRIER @CLAUSE); SETPARENT:ComplToPr @P< TO (*-1 Pr + @XADVL BARRIER @CLAUSE); ### np SETPARENT:SetGenToN @>N TO (*1 N BARRIER NPNH); SETPARENT:SetAttrToN @>N TO (*1 N BARRIER @CLAUSE) ; SETPARENT:SetModToN @N< OR @APP-N< TO (*-1 N BARRIER @CLAUSE OR @CNP) ; SETPARENT:SetAppToRightPron @APP>Pron TO (*1 Pron BARRIER @CLAUSE) ; SETPARENT:SetAppToLeftPron @APP-Pron< TO (*-1 Pron BARRIER @CLAUSE) ; SETPARENT:SetVToRel @V TO (-3 N) (1 COMMA) (2 Rel) ; SETPARENT:SetVToRel @V TO (-2 N) (1 Rel) ; ### adjp SETPARENT:SetAttrToRightA @>A TO (*1 A OR Adv BARRIER @CLAUSE) ; SETPARENT:SetAttrToLeftA @A< TO (*-1 A OR Adv BARRIER @CLAUSE) ; SETPARENT:SetAttrToLeftAdvl @XADVL< OR @APP-ADVL< TO (*-1 Adv) ; SETPARENT:SetAttrToRightAdvl @>ADVL TO (*1 Adv) ; ### nump SETPARENT:SetAttrToRightNum @>Num TO (*1 Num BARRIER @CLAUSE) ; SETPARENT:SetAttrToLeftNum @Num< OR @APP-Num< TO (*-1 Num BARRIER @CLAUSE) ; ### vp #SETPARENT @-FMAINV OR @-FAUXV TO (*-1 @+FAUXV OR @-FAUXV) ; SETPARENT:SetIclToLeftAux @ICL-AUX< TO (*-1 @AUX) ; SETPARENT:SetVToAux @ICL-AUX< TO (*-1 ()) ; SETPARENT:SetAuxToAux ( V) TO (*-1 ()) ; SETPARENT:SetPcleToWord @PCLE TO (-1 WORD); ### clause level SETCHILD:SetSubjWithRel V TO (-*1 @SUBJ) (-1 COMMA LINK *-1 Rel Link -1 COMMA LINK -1 @SUBJ) ; SETPARENT:SetArgToLeftMv @ARG - @SUBJ TO (*-1 @MV BARRIER S-BOUNDARY2 OR @-FSUBJ) ; #SETPARENT:SetArgToRightMv @ARG - @SUBJ TO (*1 @MV BARRIER S-BOUNDARY2) ; # This one kills the one before. SETPARENT:SetArgToLeftMv @ADVL TO (*-1 @MV BARRIER S-BOUNDARY2 OR @SUBJ OR @-FSUBJ) ; SETPARENT: @-FADVL TO (*-1 Inf BARRIER S-BOUNDARY2 OR @SUBJ OR @-FSUBJ LINK 0 @OBJ OR @N<) ; SETPARENT:SetArgToRightMv @ADVL TO (*1 @MV BARRIER S-BOUNDARY2 OR @SUBJ OR @-FSUBJ) ; SETPARENT:SetSubjToRightVfin @SUBJ TO (*1 VFIN BARRIER S-BOUNDARY2) ; SETPARENT:SetSubjToLeftVfin @SUBJ TO (*-1 VFIN BARRIER S-BOUNDARY2 LINK NOT -1 @SUBJ) ; ### the finite verb in a relative clause gets as parent the correlative(?) to the left SETPARENT:SetRelclVfinToKorrelat @FS-N< TO (**-1 N OR Pron LINK 1 Rel); ### the finite verb to the subject when there is a relative clause in between SETPARENT:SetSubjVfinAfterRelCl @SUBJ TO (**1 VFIN BARRIER @CVP OR CS LINK NOT 0 @FS-N<) ; ## Genadutkit geaid eamiálbmogat miehtá máilmmi leat vuosttaldan garrasit, leat dál jođus Sápmái, ja sii ohcet sámi dievdduid genadutkamii. SETPARENT:SetnfsubjToRightVnfin @-FSUBJ TO (*1 NONVFIN BARRIER S-BOUNDARY2) ; SETPARENT:SetnfsubhToLeftVnfin @-FSUBJ TO (*-1 NONVFIN BARRIER S-BOUNDARY2) ; SETPARENT:SetnfobjToRightVnfin @-FOBJ TO (*1 NONVFIN BARRIER S-BOUNDARY2) ; SETPARENT:SetnfobjToLeftVnfin @-FOBJ TO (*-1 NONVFIN BARRIER S-BOUNDARY2) ; ### subjunction SETPARENT:SetCcsToCs @COMPL-CS< TO (*-1 CS) ; SETPARENT:SetCsToV CS + @CVP TO (*1 VFIN OR NONVFIN) ; ### coordination SETPARENT:SetCnpToN @CNP TO (*-1 N OR Pron) ; SETPARENT:SetCcToV CC + @CVP TO (*-1 VFIN OR NONVFIN) ; SETPARENT:SetCcxadvlToWord (CC @XADVL) TO (*1 WORD LINK 1 CC) ; SETPARENT:SetSubjToLeftCcSubj @SUBJ TO (*-1 @SUBJ BARRIER NPNH LINK 1 CC); SETPARENT:SetAppToLeftCcApp @APP-N< TO (*-1 @APP-N< BARRIER NPNH LINK 1 CC); SETPARENT:SetObjToLeftCcObj @OBJ TO (*-1 @OBJ BARRIER NPNH LINK 1 CC); SETPARENT:SetXadvlToLeftCcXadvl @XADVL TO (*-1 @XADVL BARRIER NPNH LINK 1 CC); SETPARENT:SetFmainToLeftCcFmain @+FMAINV TO (-2 @+FMAINV LINK 1 CC); SETPARENT:SetNfmainToLeftCcNfmain @-FMAINV TO (-2 @-FMAINV LINK 1 CC); # These are now identical. Should they be turned around? #SETPARENT @SUBJ TO (*-1 @SUBJ BARRIER NPNH LINK 1 CC); #SETPARENT @OBJ TO (*-1 @OBJ BARRIER NPNH LINK 1 CC); #SETPARENT @XADVL TO (*-1 @XADVL BARRIER NPNH LINK 1 CC); #SETPARENT @+FMAINV TO (-2 @+FMAINV LINK 1 CC); #SETPARENT @-FMAINV TO (-2 @-FMAINV LINK 1 CC); ### subclauses LIST CLB-ADVL = "go" ("goas" N) ("goas" Pron) "ovdal" "dassá_go" "dassážii_go" "dan_rájes_go" "dan_botta_go" "dalle_go" "ovdalgo" "maŋŋilgo" "jus,_jos,_juos,_joas" "nu_ahte" "nuvt_ahte" "dainna_go" "danne_go" "danin_go" "dan_dihte_go" "dan_dihtii_go" "dasgo" ("vai" CS @CVP) "mađe CS" "vaikko" "nugo" "dego" ; ######## @CL-ADVL #SUBSTITUTE:SubV=fsadvlForVfinCclb (@V) (@FS-ADVL) TARGET VFIN (c CLB-ADVL) ; #XXX in again? #SUBSTITUTE:SubV=fsadvlForVfinNeg (@V) (@FS-ADVL) TARGET VFIN (0 (Neg) OR (Sup)) ; SUBSTITUTE:SubV=icladvlForNvfinCclb (@V) (@ICL-ADVL) TARGET NONVFIN (c CLB-ADVL) ; SUBSTITUTE:SubV=icladvlForNvfinNeg (@V) (@ICL-ADVL) TARGET NONVFIN (0 (Neg) OR (Sup)) ; SETPARENT:SetAdvlToMvR @FS-ADVL OR @ICL-ADVL TO (*1 @MV) ; SUBSTITUTE:SubV=FsadvForVfinGo (@V) (@FS-ADVL) TARGET VFIN (*-1 ("go" @CVP)); SETPARENT:SetAdvlToMvL @FS-ADVL OR @ICL-ADVL TO (*-1 @MV) ; ######## @CL-OBJ SUBSTITUTE:SubV=fsobjForvfinCahte (@V) (@FS-OBJ) TARGET VFIN (c ("ahte")) ; SUBSTITUTE:SubV=iclobjForMV (@V) (@ICL-OBJ) TARGET NONVFIN (c ("ahte")) ; SUBSTITUTE:Advl=@ICL-OBJ (@ADVL) (@ICL-OBJ) TARGET Inf (c (@-FSUBJ)); ## Máhtte muitalii ádjá boahtit. SETPARENT @FS-OBJ OR @ICL-OBJ TO (*-1 @MV LINK 0 TV) ; SUBSTITUTE:Advl=@ICL-ADVL (@ADVL) (@ICL-ADVL) TARGET Ger (c (@-FSUBJ)); SETPARENT:IclAdvlToV @ICL-ADVL TO (*-1 @V) ; SETPARENT @-F>) TARGET V (*1 V-QUOTE LINK -1 COMMA)(NEGATE *-1 @FS-ACC>>) ; SETPARENT:SetFsaccToVquote (@FS-ACC>>) TO (*1 V-QUOTE LINK -1 COMMA) ; ######## SUBSTITUTE:SubV=fssta (@V) (@FS-STA) TARGET VFIN ; SUBSTITUTE:SubV=iclsta (@V) (@ICL-STA) TARGET NONVFIN ; ############### #=====# END # #=====#