#Distributed under the terms of the GNU General Public License version 2
# or any later version.
# ==================================================================== #
#!! S Y N T A C T I C F U N C T I O N S F O R S Á M I
# ==================================================================== #
# ====================================================================
#!! Sámi language technology project 2003-2025, University of Tromsø #
#!! This file adds syntactic functions. It is common for all the Saami
##! languages, so far for sma, sme, smj, sje.
# ========== #
# Delimiters #
# ========== #
DELIMITERS = "<.>" "" ">" "<...>" "<¶>" sent ;
#PARENTHESES = "<$(>" "<$)>" "<$[>" "<$]>" "<${>" "<$}>" "<$«>" "<$»>" ;
# ============= #
# Tags and sets #
# ============= #
SETS
# We define end of clause and beginning of clause in a way so that the file
# may be read both by the CG-2 and the vislcg formalisms.
LIST BOS = (>>>) ();
LIST EOS = (<<<) ();
# CG3 doesn´t function without >>> and <<< !
# Tags declared as single-membered LISTs
# ======================================
# Parts of speech
# ---------------
LIST N = N ;
LIST A = A ;
LIST Adv = Adv ;
LIST V = V ;
LIST Pron = Pron ;
LIST Subqst = Subqst ;
LIST CS = CS ;
LIST CC = CC ;
SET CC-CS = CC OR CS ;
LIST Po = Po ;
LIST Pr = Pr ;
LIST Pcle = Pcle ;
LIST Num = Num ;
LIST Interj = Interj ;
LIST ABBR = ABBR ;
LIST ACR = ACR ;
LIST CLB = CLB ;
LIST LEFT = LEFT ;
LIST RIGHT = RIGHT ;
LIST WEB = WEB ;
LIST QMARK = """ ; # ADD " FOR SYNTAX COLOURING.
LIST PPUNCT = LEFT RIGHT ; #!! LEFT RIGHT because of apertium
SET PUNCT = PPUNCT - QMARK ;
LIST Arab = Arab ;
LIST COMMA = "," ;
LIST ¶ = ¶;
#LIST V* = V* ;
#!! * Sets for 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 Adp = Adp ;
LIST Coll = Coll ;
LIST NomAg = NomAg ;
LIST G3 = G3 ;
LIST Prop = Prop ;
LIST Cmp/SplitR = Cmp/SplitR ;
#!! * Sets for Semantic tags
# -------------
LIST Sem/Act = Sem/Act Sem/Act_Clth Sem/Act_Domain Sem/Act_Domain_Measr Sem/Act_Event Sem/Act_Feat Sem/Act_Feat-psych Sem/Act_Fruit Sem/Act_Group Sem/Act_Hum Sem/Act_Hum_Obj Sem/Act_Money Sem/Act_Obj Sem/Act_Obj-play Sem/Act_Org Sem/Act_Perc-emo Sem/Act_Plc Sem/Act_Prod-audio Sem/Act_Prod-vis Sem/Act_Route Sem/Act_Semcon Sem/Act_State Sem/Act_Time Sem/Act_Tool-it Sem/Act_Txt ;
LIST Sem/Adr = Sem/Adr ;
LIST Sem/Amount = Sem/Amount Sem/Amount_Build Sem/Amount_Semcon ;
LIST Sem/Ani = Sem/Ani Sem/Ani_Body Sem/Ani_Body-abstr_Hum Sem/Ani_Build Sem/Ani_Build_Hum_Txt Sem/Ani_Buildpart Sem/Ani_Cat Sem/Ani_Clth Sem/Ani_Feat_Hum Sem/Ani_Feat_Plant Sem/Ani_Food Sem/Ani_Group Sem/Ani_Group_Hum Sem/Ani_Group_Prod-vis Sem/Ani_Hum Sem/Ani_Hum_Plc Sem/Ani_Hum_Time Sem/Ani_Obj Sem/Ani_Obj-el Sem/Ani_Org Sem/Ani_Plc Sem/Ani_Plc_Txt Sem/Ani_State Sem/Ani_Substnc Sem/Ani_Time Sem/Ani_Tool Sem/Ani_Veh ;
LIST Sem/Ani-bird = Sem/Ani-bird ;
LIST Sem/Ani-fish = Sem/Ani-fish ;
LIST Sem/Ani-insect = Sem/Ani-insect ;
LIST Sem/Aniprod = Sem/Aniprod Sem/Aniprod_Hum Sem/Aniprod_Mat Sem/Aniprod_Obj Sem/Aniprod_Obj-clo Sem/Aniprod_Perc-phys Sem/Aniprod_Plant Sem/Aniprod_Plc Sem/Aniprod_Plc_Route Sem/Aniprod_Substnc Sem/Aniprod_Substnc_Wthr ;
LIST Sem/Atr = Sem/Atr ;
LIST Sem/Body = Sem/Ani_Body Sem/Ani_Body-abstr_Hum Sem/Body Sem/Body-abstr Sem/Body-abstr_Feat-psych Sem/Body-abstr_Prod-audio_Semcon Sem/Body_Body-abstr Sem/Body_Buildpart Sem/Body_Clth Sem/Body_Clthpart Sem/Body_Food Sem/Body_Fruit Sem/Body_Group_Hum Sem/Body_Group_Hum_Time Sem/Body_Hum Sem/Body_Mat Sem/Body_Measr Sem/Body_Obj Sem/Body_Obj_Tool-catch Sem/Body_Org Sem/Body_Part Sem/Body_Plc Sem/Body_Plc-elevate Sem/Body_Plc_State Sem/Body_State Sem/Body_Time ;
LIST Sem/Body-abstr = Sem/Ani_Body-abstr_Hum Sem/Body-abstr Sem/Body-abstr_Feat-psych Sem/Body-abstr_Prod-audio_Semcon Sem/Body_Body-abstr ;
LIST Sem/Build = Sem/Amount_Build Sem/Ani_Build Sem/Ani_Build_Hum_Txt Sem/Build Sem/Build-room Sem/Build-room_Cat_Ctain_Mat Sem/Build-room_Furn Sem/Build-room_Org Sem/Build_Build-room Sem/Build_Buildpart Sem/Build_Clthpart Sem/Build_Edu_Org Sem/Build_Event_Org Sem/Build_Obj Sem/Build_Org Sem/Build_Plc Sem/Build_Route Sem/Build_Tool Sem/Build_Veh ;
LIST Sem/Build-room = Sem/Build-room Sem/Build-room_Cat_Ctain_Mat Sem/Build-room_Furn Sem/Build-room_Org Sem/Build_Build-room ;
LIST Sem/Buildpart = Sem/Ani_Buildpart Sem/Body_Buildpart Sem/Build_Buildpart Sem/Buildpart Sem/Buildpart_Cat Sem/Buildpart_Cat_Ctain Sem/Buildpart_Cat_Ctain_Mat Sem/Buildpart_Ctain Sem/Buildpart_Ctain_Mat Sem/Buildpart_Ctain_Obj Sem/Buildpart_Obj Sem/Buildpart_Obj_Plc Sem/Buildpart_Part Sem/Buildpart_Plc Sem/Buildpart_Prod-audio ;
LIST Sem/Cat = Sem/Ani_Cat Sem/Build-room_Cat_Ctain_Mat Sem/Buildpart_Cat Sem/Buildpart_Cat_Ctain Sem/Buildpart_Cat_Ctain_Mat Sem/Cat Sem/Cat_Edu Sem/Cat_Feat Sem/Cat_Feat-psych_Plc Sem/Cat_Group_Hum Sem/Cat_Group_Hum_Plc Sem/Cat_Hum Sem/Cat_Measr Sem/Cat_Obj Sem/Cat_Plantpart Sem/Cat_Plantpart_Semcon Sem/Cat_Txt ;
LIST Sem/Clth = Sem/Act_Clth Sem/Ani_Clth Sem/Body_Clth Sem/Clth Sem/Clth-jewl Sem/Clth-jewl_Curr Sem/Clth-jewl_Curr_Obj Sem/Clth-jewl_Curr_Obj_Org Sem/Clth-jewl_Fruit Sem/Clth-jewl_Money Sem/Clth-jewl_Obj Sem/Clth-jewl_Org Sem/Clth-jewl_Plant Sem/Clth_Hum Sem/Clth_Obj Sem/Clth_Obj-clo Sem/Clth_Part Sem/Clth_Sur ;
LIST Sem/Clth-jewl = Sem/Clth-jewl Sem/Clth-jewl_Curr Sem/Clth-jewl_Curr_Obj Sem/Clth-jewl_Curr_Obj_Org Sem/Clth-jewl_Fruit Sem/Clth-jewl_Money Sem/Clth-jewl_Obj Sem/Clth-jewl_Org Sem/Clth-jewl_Plant ;
LIST Sem/Clthpart = Sem/Body_Clthpart Sem/Build_Clthpart Sem/Clthpart Sem/Clthpart_Plc ;
LIST Sem/Ctain = Sem/Build-room_Cat_Ctain_Mat Sem/Buildpart_Cat_Ctain Sem/Buildpart_Cat_Ctain_Mat Sem/Buildpart_Ctain Sem/Buildpart_Ctain_Mat Sem/Buildpart_Ctain_Obj Sem/Ctain Sem/Ctain-Obj Sem/Ctain-abstr Sem/Ctain-abstr_Org Sem/Ctain-clth Sem/Ctain-clth_Plant Sem/Ctain-clth_Veh Sem/Ctain_Feat-phys Sem/Ctain_Furn Sem/Ctain_Obj-surfc Sem/Ctain_Plc Sem/Ctain_Tool Sem/Ctain_Tool-measr Sem/Ctain_Txt Sem/Furn_Ctain-abstr ;
LIST Sem/Ctain-abstr = Sem/Ctain-abstr Sem/Ctain-abstr_Org Sem/Furn_Ctain-abstr ;
LIST Sem/Ctain-clth = Sem/Ctain-clth Sem/Ctain-clth_Plant Sem/Ctain-clth_Veh ;
LIST Sem/Curr = Sem/Clth-jewl_Curr Sem/Clth-jewl_Curr_Obj Sem/Clth-jewl_Curr_Obj_Org Sem/Curr Sem/Curr_Obj Sem/Curr_Org ;
LIST Sem/Dance = Sem/Dance Sem/Dance_Org Sem/Dance_Prod-audio ;
LIST Sem/Date = Sem/Date ;
LIST Sem/Dir = Sem/Dir ;
LIST Sem/Domain = Sem/Act_Domain Sem/Act_Domain_Measr Sem/Domain Sem/Domain_Edu Sem/Domain_Feat Sem/Domain_Feat-phys Sem/Domain_Food-med Sem/Domain_Hum Sem/Domain_Ideol Sem/Domain_Money Sem/Domain_Obj Sem/Domain_Org Sem/Domain_Org_Plc-abstr Sem/Domain_Perc-emo Sem/Domain_Prod-audio Sem/Domain_State-sick Sem/Domain_Txt ;
LIST Sem/Drink = Sem/Drink Sem/Drink_Plant Sem/Drink_Plc Sem/Drink_Plc_Substnc ;
LIST Sem/Dummytag = Sem/Dummytag ;
LIST Sem/Edu = Sem/Build_Edu_Org Sem/Cat_Edu Sem/Domain_Edu Sem/Edu Sem/Edu_Event Sem/Edu_Geom Sem/Edu_Geom_Plc-line Sem/Edu_Group_Hum Sem/Edu_Hum Sem/Edu_Mat Sem/Edu_Org Sem/Edu_Txt ;
LIST Sem/Event = Sem/Act_Event Sem/Build_Event_Org Sem/Edu_Event Sem/Event Sem/Event_Food Sem/Event_Hum Sem/Event_Org Sem/Event_Plc Sem/Event_Plc-elevate Sem/Event_Time ;
LIST Sem/Feat = Sem/Act_Feat Sem/Act_Feat-psych Sem/Ani_Feat_Hum Sem/Ani_Feat_Plant Sem/Body-abstr_Feat-psych Sem/Cat_Feat Sem/Cat_Feat-psych_Plc Sem/Ctain_Feat-phys Sem/Domain_Feat Sem/Domain_Feat-phys Sem/Feat Sem/Feat-measr Sem/Feat-measr_Plc Sem/Feat-phys Sem/Feat-phys_Food_State Sem/Feat-phys_Hum Sem/Feat-phys_Obj Sem/Feat-phys_Plc-line Sem/Feat-phys_Tool-write Sem/Feat-phys_Veh Sem/Feat-phys_Wthr Sem/Feat-psych Sem/Feat-psych_Hum Sem/Feat-psych_Plc Sem/Feat_Hum Sem/Feat_Plant ;
LIST Sem/Feat-measr = Sem/Feat-measr Sem/Feat-measr_Plc ;
LIST Sem/Feat-phys = Sem/Ctain_Feat-phys Sem/Domain_Feat-phys Sem/Feat-phys Sem/Feat-phys_Food_State Sem/Feat-phys_Hum Sem/Feat-phys_Obj Sem/Feat-phys_Plc-line Sem/Feat-phys_Tool-write Sem/Feat-phys_Veh Sem/Feat-phys_Wthr ;
LIST Sem/Feat-psych = Sem/Act_Feat-psych Sem/Body-abstr_Feat-psych Sem/Cat_Feat-psych_Plc Sem/Feat-psych Sem/Feat-psych_Hum Sem/Feat-psych_Plc ;
LIST Sem/Fem = Sem/Fem (ant f) ;
LIST Sem/Food = Sem/Ani_Food Sem/Body_Food Sem/Domain_Food-med Sem/Event_Food Sem/Feat-phys_Food_State Sem/Food Sem/Food-med Sem/Food_Obj-surfc Sem/Food_Part Sem/Food_Perc-phys Sem/Food_Plant Sem/Food_Sign Sem/Food_Substnc Sem/Food_Times ;
LIST Sem/Food-med = Sem/Domain_Food-med Sem/Food-med ;
LIST Sem/Fruit = Sem/Act_Fruit Sem/Body_Fruit Sem/Clth-jewl_Fruit Sem/Fruit Sem/Fruit_Hum Sem/Fruit_Sport ;
LIST Sem/Furn = Sem/Build-room_Furn Sem/Ctain_Furn Sem/Furn Sem/Furn_Ctain-abstr Sem/Furn_Time ;
LIST Sem/Game = Sem/Game Sem/Game_Obj-play ;
LIST Sem/Geom = Sem/Dir_Geom Sem/Edu_Geom Sem/Edu_Geom_Plc-line Sem/Geom Sem/Geom_Hum_Plc Sem/Geom_Obj Sem/Geom_Plc ;
LIST Sem/Group = Sem/Act_Group Sem/Ani_Group Sem/Ani_Group_Hum Sem/Ani_Group_Prod-vis Sem/Body_Group_Hum Sem/Body_Group_Hum_Time Sem/Cat_Group_Hum Sem/Cat_Group_Hum_Plc Sem/Edu_Group_Hum Sem/Group Sem/Group_Hum Sem/Group_Hum_Org Sem/Group_Hum_Plc Sem/Group_Hum_Plc-abstr Sem/Group_Hum_Prod-vis Sem/Group_Hum_Time Sem/Group_Org Sem/Group_Plc Sem/Group_Prod-vis Sem/Group_Prod-vis_Txt_Veh Sem/Group_Sign Sem/Group_State Sem/Group_Txt ;
LIST Sem/Hum = Sem/Act_Hum Sem/Act_Hum_Obj Sem/Ani_Body-abstr_Hum Sem/Ani_Build_Hum_Txt Sem/Ani_Feat_Hum Sem/Ani_Group_Hum Sem/Ani_Hum Sem/Ani_Hum_Plc Sem/Ani_Hum_Time Sem/Aniprod_Hum Sem/Body_Group_Hum Sem/Body_Group_Hum_Time Sem/Body_Hum Sem/Cat_Group_Hum Sem/Cat_Group_Hum_Plc Sem/Cat_Hum Sem/Clth_Hum Sem/Domain_Hum Sem/Edu_Group_Hum Sem/Edu_Hum Sem/Event_Hum Sem/Feat-phys_Hum Sem/Feat-psych_Hum Sem/Feat_Hum Sem/Fruit_Hum Sem/Geom_Hum_Plc Sem/Group_Hum Sem/Group_Hum_Org Sem/Group_Hum_Plc Sem/Group_Hum_Plc-abstr Sem/Group_Hum_Prod-vis Sem/Group_Hum_Time Sem/Hum Sem/Hum-abstr Sem/Hum-abtsr Sem/Hum-prof Sem/Hum_Lang Sem/Hum_Lang_Plc Sem/Hum_Lang_Time Sem/Hum_Mat_Tool Sem/Hum_Money Sem/Hum_Obj Sem/Hum_Obj_Plc Sem/Hum_Org Sem/Hum_Part Sem/Hum_Plant Sem/Hum_Plc Sem/Hum_Pos Sem/Hum_Sign Sem/Hum_State Sem/Hum_Tool Sem/Hum_Tool-catch Sem/Hum_Tool-it Sem/Hum_Veh Sem/Hum_Wthr ;
LIST Sem/Hum-abstr = Sem/Hum-abstr ;
LIST Sem/Hum-prof = Sem/Hum-prof ;
LIST Sem/ID = Sem/ID ;
LIST Sem/Ideol = Sem/Domain_Ideol Sem/Ideol ;
LIST Sem/Lang = Sem/Hum_Lang Sem/Hum_Lang_Plc Sem/Hum_Lang_Time Sem/Lang Sem/Lang_Tool Sem/Lang_Tool-catch ;
LIST Sem/Mal = Sem/Mal (ant m) ;
LIST Sem/Mat = Sem/Aniprod_Mat Sem/Body_Mat Sem/Build-room_Cat_Ctain_Mat Sem/Buildpart_Cat_Ctain_Mat Sem/Buildpart_Ctain_Mat Sem/Edu_Mat Sem/Hum_Mat_Tool Sem/Mat Sem/Mat_Obj Sem/Mat_Obj-clo Sem/Mat_Part Sem/Mat_Plant Sem/Mat_Plantpart Sem/Mat_Plc Sem/Mat_Tool Sem/Mat_Tool-catch Sem/Mat_Txt ;
LIST Sem/Measr = Sem/Act_Domain_Measr Sem/Body_Measr Sem/Cat_Measr Sem/Measr Sem/Measr_Obj_Time Sem/Measr_Plc_Time Sem/Measr_Sign Sem/Measr_Time ;
LIST Sem/Money = Sem/Act_Money Sem/Clth-jewl_Money Sem/Domain_Money Sem/Hum_Money Sem/Money Sem/Money_Obj Sem/Money_Org Sem/Money_Part Sem/Money_Plc Sem/Money_Txt ;
LIST Sem/Obj = Sem/Act_Hum_Obj Sem/Act_Obj Sem/Act_Obj-play Sem/Ani_Obj Sem/Ani_Obj-el Sem/Aniprod_Obj Sem/Aniprod_Obj-clo Sem/Body_Obj Sem/Body_Obj_Tool-catch Sem/Build_Obj Sem/Buildpart_Ctain_Obj Sem/Buildpart_Obj Sem/Buildpart_Obj_Plc Sem/Cat_Obj Sem/Clth-jewl_Curr_Obj Sem/Clth-jewl_Curr_Obj_Org Sem/Clth-jewl_Obj Sem/Clth_Obj Sem/Clth_Obj-clo Sem/Ctain-Obj Sem/Ctain_Obj-surfc Sem/Curr_Obj Sem/Domain_Obj Sem/Feat-phys_Obj Sem/Food_Obj-surfc Sem/Game_Obj-play Sem/Geom_Obj Sem/Hum_Obj Sem/Hum_Obj_Plc Sem/Mat_Obj Sem/Mat_Obj-clo Sem/Measr_Obj_Time Sem/Money_Obj Sem/Obj Sem/Obj-catch Sem/Obj-clo Sem/Obj-cogn Sem/Obj-el Sem/Obj-ling Sem/Obj-ling_Obj-surfc Sem/Obj-play Sem/Obj-play_Sport Sem/Obj-rope Sem/Obj-surfc Sem/Obj_Part_Sign Sem/Obj_Perc-emo Sem/Obj_Plantpart Sem/Obj_Plc Sem/Obj_Plc-abstr Sem/Obj_Plc_Semcon Sem/Obj_Process Sem/Obj_Prod-audio Sem/Obj_Semcon Sem/Obj_Sign Sem/Obj_State Sem/Obj_Symbol Sem/Obj_Tool-music Sem/Obj_Tool-write Sem/Obj_Txt Sem/Obj_Veh ;
LIST Sem/Obj-catch = Sem/Obj-catch ;
LIST Sem/Obj-clo = Sem/Aniprod_Obj-clo Sem/Clth_Obj-clo Sem/Mat_Obj-clo Sem/Obj-clo ;
LIST Sem/Obj-cogn = Sem/Obj-cogn ;
LIST Sem/Obj-el = Sem/Ani_Obj-el Sem/Obj-el ;
LIST Sem/Obj-ling = Sem/Obj-ling Sem/Obj-ling_Obj-surfc ;
LIST Sem/Obj-play = Sem/Act_Obj-play Sem/Game_Obj-play Sem/Obj-play Sem/Obj-play_Sport ;
LIST Sem/Obj-rope = Sem/Obj-rope ;
LIST Sem/Obj-surfc = Sem/Aniprod_Obj-clo Sem/Clth_Obj-clo Sem/Mat_Obj-clo Sem/Obj-clo ;
LIST Sem/Org = sem_org Sem/Act_Org Sem/Ani_Org Sem/Body_Org Sem/Build-room_Org Sem/Build_Edu_Org Sem/Build_Event_Org Sem/Build_Org Sem/Clth-jewl_Curr_Obj_Org Sem/Clth-jewl_Org Sem/Ctain-abstr_Org Sem/Curr_Org Sem/Dance_Org Sem/Domain_Org Sem/Domain_Org_Plc-abstr Sem/Edu_Org Sem/Event_Org Sem/Group_Hum_Org Sem/Group_Org Sem/Hum_Org Sem/Money_Org Sem/Org Sem/Org_Play Sem/Org_Plc Sem/Org_Prod-audio Sem/Org_Prod-cogn Sem/Org_Prod-vis Sem/Org_Rule Sem/Org_State Sem/Org_Txt Sem/Org_Veh ;
LIST Sem/Part = Sem/Body_Part Sem/Buildpart_Part Sem/Clth_Part Sem/Food_Part Sem/Hum_Part Sem/Mat_Part Sem/Money_Part Sem/Obj_Part_Sign Sem/Part Sem/Part_Plc Sem/Part_Plc_Prod-audio Sem/Part_Prod-cogn Sem/Part_Substnc Sem/Part_Txt ;
LIST Sem/Perc-cogn = Sem/Perc-cogn ;
LIST Sem/Perc-emo = Sem/Act_Perc-emo Sem/Domain_Perc-emo Sem/Obj_Perc-emo Sem/Perc-emo Sem/Perc-emo_Plc Sem/Perc-emo_State Sem/Perc-emo_Wthr ;
LIST Sem/Perc-phys = Sem/Aniprod_Perc-phys Sem/Food_Perc-phys Sem/Perc-phys ;
LIST Sem/Perc-psych = Sem/Perc-psych ;
LIST Sem/Phonenr = Sem/Phonenr ;
LIST Sem/Plant = Sem/Ani_Feat_Plant Sem/Aniprod_Plant Sem/Clth-jewl_Plant Sem/Ctain-clth_Plant Sem/Drink_Plant Sem/Feat_Plant Sem/Food_Plant Sem/Hum_Plant Sem/Mat_Plant Sem/Plant Sem/Plant_Plantpart Sem/Plant_Plc Sem/Plant_Time_Wthr Sem/Plant_Tool Sem/Plant_Tool-measr ;
LIST Sem/Plant-fungus = Sem/Plant-fungus ;
LIST Sem/Plantpart = Sem/Cat_Plantpart Sem/Cat_Plantpart_Semcon Sem/Mat_Plantpart Sem/Obj_Plantpart Sem/Plant_Plantpart Sem/Plantpart ;
LIST Sem/Play = Sem/Play ;
LIST Sem/Plc = Sem/Act_Plc Sem/Ani_Hum_Plc Sem/Ani_Plc Sem/Ani_Plc_Txt Sem/Aniprod_Plc Sem/Aniprod_Plc_Route Sem/Body_Plc Sem/Body_Plc-elevate Sem/Body_Plc_State Sem/Build_Plc Sem/Buildpart_Obj_Plc Sem/Buildpart_Plc Sem/Cat_Feat-psych_Plc Sem/Cat_Group_Hum_Plc Sem/Clthpart_Plc Sem/Ctain_Plc Sem/Domain_Org_Plc-abstr Sem/Drink_Plc Sem/Drink_Plc_Substnc Sem/Edu_Geom_Plc-line Sem/Event_Plc Sem/Event_Plc-elevate Sem/Feat-measr_Plc Sem/Feat-phys_Plc-line Sem/Feat-psych_Plc Sem/Geom_Hum_Plc Sem/Geom_Plc Sem/Group_Hum_Plc Sem/Group_Hum_Plc-abstr Sem/Group_Plc Sem/Hum_Lang_Plc Sem/Hum_Obj_Plc Sem/Hum_Plc Sem/Mat_Plc Sem/Measr_Plc_Time Sem/Money_Plc Sem/Obj_Plc Sem/Obj_Plc-abstr Sem/Obj_Plc_Semcon Sem/Org_Plc Sem/Part_Plc Sem/Part_Plc_Prod-audio Sem/Perc-emo_Plc Sem/Plant_Plc Sem/Plc Sem/Plc-abstr Sem/Plc-abstr_Rel_State Sem/Plc-abstr_Route Sem/Plc-abstr_Rule Sem/Plc-abstr_State Sem/Plc-abstr_Txt Sem/Plc-elevate Sem/Plc-line Sem/Plc-water Sem/Plc_Pos Sem/Plc_Route Sem/Plc_Semcon Sem/Plc_State Sem/Plc_Substnc Sem/Plc_Substnc_Wthr Sem/Plc_Time Sem/Plc_Time_Wthr Sem/Plc_Tool-catch Sem/Plc_Txt Sem/Plc_Wthr top ;
LIST Sem/Plc-abstr = Sem/Domain_Org_Plc-abstr Sem/Group_Hum_Plc-abstr Sem/Obj_Plc-abstr Sem/Plc-abstr Sem/Plc-abstr_Rel_State Sem/Plc-abstr_Route Sem/Plc-abstr_Rule Sem/Plc-abstr_State Sem/Plc-abstr_Txt ;
LIST Sem/Plc-elevate = Sem/Body_Plc-elevate Sem/Event_Plc-elevate Sem/Plc-elevate ;
LIST Sem/Plc-line = Sem/Edu_Geom_Plc-line Sem/Feat-phys_Plc-line Sem/Plc-line ;
LIST Sem/Plc-water = Sem/Plc-water ;
LIST Sem/Pos = Sem/Plc_Pos Sem/Pos ;
LIST Sem/Process = Sem/Obj_Process Sem/Process ;
LIST Sem/Prod = Sem/Act_Prod-audio Sem/Act_Prod-vis Sem/Ani_Group_Prod-vis Sem/Body-abstr_Prod-audio_Semcon Sem/Buildpart_Prod-audio Sem/Dance_Prod-audio Sem/Domain_Prod-audio Sem/Group_Hum_Prod-vis Sem/Group_Prod-vis Sem/Group_Prod-vis_Txt_Veh Sem/Obj_Prod-audio Sem/Org_Prod-audio Sem/Org_Prod-cogn Sem/Org_Prod-vis Sem/Part_Plc_Prod-audio Sem/Part_Prod-cogn Sem/Prod Sem/Prod-audio Sem/Prod-audio_Prod-vis Sem/Prod-audio_Substnc Sem/Prod-audio_Txt Sem/Prod-cogn Sem/Prod-cogn_Txt Sem/Prod-ling Sem/Prod-vis ;
LIST Sem/Prod-audio = Sem/Act_Prod-audio Sem/Body-abstr_Prod-audio_Semcon Sem/Buildpart_Prod-audio Sem/Dance_Prod-audio Sem/Domain_Prod-audio Sem/Obj_Prod-audio Sem/Org_Prod-audio Sem/Part_Plc_Prod-audio Sem/Prod-audio Sem/Prod-audio_Prod-vis Sem/Prod-audio_Substnc Sem/Prod-audio_Txt ;
LIST Sem/Prod-cogn = Sem/Org_Prod-cogn Sem/Part_Prod-cogn Sem/Prod-cogn Sem/Prod-cogn_Txt ;
LIST Sem/Prod-ling = Sem/Prod-ling ;
LIST Sem/Prod-vis = Sem/Act_Prod-vis Sem/Ani_Group_Prod-vis Sem/Group_Hum_Prod-vis Sem/Group_Prod-vis Sem/Group_Prod-vis_Txt_Veh Sem/Org_Prod-vis Sem/Prod-audio_Prod-vis Sem/Prod-vis ;
LIST Sem/Rel = Sem/Plc-abstr_Rel_State Sem/Rel ;
LIST Sem/Route = Sem/Act_Route Sem/Aniprod_Plc_Route Sem/Build_Route Sem/Plc-abstr_Route Sem/Plc_Route Sem/Route Sem/Route_State Sem/Route_Txt ;
LIST Sem/Rule = Sem/Org_Rule Sem/Plc-abstr_Rule Sem/Rule Sem/Rule_Txt ;
LIST Sem/Semcon = Sem/Act_Semcon Sem/Amount_Semcon Sem/Body-abstr_Prod-audio_Semcon Sem/Cat_Plantpart_Semcon Sem/Obj_Plc_Semcon Sem/Obj_Semcon Sem/Plc_Semcon Sem/Semcon Sem/Semcon_State Sem/Semcon_Txt Sem/Semcon_Wthr ;
LIST Sem/Sign = Sem/Food_Sign Sem/Group_Sign Sem/Hum_Sign Sem/Measr_Sign Sem/Obj_Part_Sign Sem/Obj_Sign Sem/Sign ;
LIST Sem/Sport = Sem/Fruit_Sport Sem/Obj-play_Sport Sem/Sport ;
LIST Sem/State = Sem/Act_State Sem/Ani_State Sem/Body_Plc_State Sem/Body_State Sem/Domain_State-sick Sem/Feat-phys_Food_State Sem/Group_State Sem/Hum_State Sem/Obj_State Sem/Org_State Sem/Perc-emo_State Sem/Plc-abstr_Rel_State Sem/Plc-abstr_State Sem/Plc_State Sem/Route_State Sem/Semcon_State Sem/State Sem/State-sick Sem/State-sick_Substnc Sem/State_Veh ;
LIST Sem/State-sick = Sem/Domain_State-sick Sem/State-sick Sem/State-sick_Substnc ;
LIST Sem/Substnc = Sem/Ani_Substnc Sem/Aniprod_Substnc Sem/Aniprod_Substnc_Wthr Sem/Drink_Plc_Substnc Sem/Food_Substnc Sem/Part_Substnc Sem/Plc_Substnc Sem/Plc_Substnc_Wthr Sem/Prod-audio_Substnc Sem/State-sick_Substnc Sem/Substnc Sem/Substnc_Wthr ;
LIST Sem/Sur = Sem/Sur cog ;
LIST Sem/Symbol = Sem/Obj_Symbol Sem/Symbol ;
LIST Sem/Time = Sem/Act_Time Sem/Ani_Hum_Time Sem/Ani_Time Sem/Body_Group_Hum_Time Sem/Body_Time Sem/Event_Time Sem/Food_Time Sem/Furn_Time Sem/Group_Hum_Time Sem/Hum_Lang_Time Sem/Measr_Obj_Time Sem/Measr_Plc_Time Sem/Measr_Time Sem/Plant_Time_Wthr Sem/Plc_Time Sem/Plc_Time_Wthr Sem/Time Sem/Time-clock Sem/Time_Wthr ;
LIST Sem/Time-clock = Sem/Time-clock ;
LIST Sem/Tool = Sem/Act_Tool-it Sem/Ani_Tool Sem/Body_Obj_Tool-catch Sem/Build_Tool Sem/Ctain_Tool Sem/Ctain_Tool-measr Sem/Feat-phys_Tool-write Sem/Hum_Mat_Tool Sem/Hum_Tool Sem/Hum_Tool-catch Sem/Hum_Tool-it Sem/Lang_Tool Sem/Lang_Tool-catch Sem/Mat_Tool Sem/Mat_Tool-catch Sem/Obj_Tool-music Sem/Obj_Tool-write Sem/Plant_Tool Sem/Plant_Tool-measr Sem/Plc_Tool-catch Sem/Tool Sem/Tool-catch Sem/Tool-clean Sem/Tool-it Sem/Tool-measr Sem/Tool-music Sem/Tool-write ;
LIST Sem/Tool-catch = Sem/Body_Obj_Tool-catch Sem/Hum_Tool-catch Sem/Lang_Tool-catch Sem/Mat_Tool-catch Sem/Plc_Tool-catch Sem/Tool-catch ;
LIST Sem/Tool-clean = Sem/Tool-clean ;
LIST Sem/Tool-it = Sem/Act_Tool-it Sem/Hum_Tool-it Sem/Tool-it ;
LIST Sem/Tool-measr = Sem/Ctain_Tool-measr Sem/Plant_Tool-measr Sem/Tool-measr ;
LIST Sem/Tool-music = Sem/Obj_Tool-music Sem/Tool-music ;
LIST Sem/Tool-write = Sem/Feat-phys_Tool-write Sem/Obj_Tool-write Sem/Tool-write ;
LIST Sem/Txt = Sem/Act_Txt Sem/Ani_Build_Hum_Txt Sem/Ani_Plc_Txt Sem/Cat_Txt Sem/Ctain_Txt Sem/Domain_Txt Sem/Edu_Txt Sem/Group_Prod-vis_Txt_Veh Sem/Group_Txt Sem/Mat_Txt Sem/Money_Txt Sem/Obj_Txt Sem/Org_Txt Sem/Part_Txt Sem/Plc-abstr_Txt Sem/Plc_Txt Sem/Prod-audio_Txt Sem/Prod-cogn_Txt Sem/Route_Txt Sem/Rule_Txt Sem/Semcon_Txt Sem/Txt ;
LIST Sem/Veh = Sem/Ani_Veh Sem/Build_Veh Sem/Ctain-clth_Veh Sem/Feat-phys_Veh Sem/Group_Prod-vis_Txt_Veh Sem/Hum_Veh Sem/Obj_Veh Sem/Org_Veh Sem/State_Veh Sem/Veh ;
LIST Sem/Wpn = Sem/Wpn ;
LIST Sem/Wthr = Sem/Aniprod_Substnc_Wthr Sem/Feat-phys_Wthr Sem/Hum_Wthr Sem/Perc-emo_Wthr Sem/Plant_Time_Wthr Sem/Plc_Substnc_Wthr Sem/Plc_Time_Wthr Sem/Plc_Wthr Sem/Semcon_Wthr Sem/Substnc_Wthr Sem/Time_Wthr Sem/Wthr ;
LIST Sem/Year = Sem/Year ;
LIST SEMTAGS = Sem/Act Sem/Act_Clth Sem/Act_Domain Sem/Act_Domain_Measr Sem/Act_Event Sem/Act_Feat Sem/Act_Feat-psych Sem/Act_Fruit Sem/Act_Group Sem/Act_Hum Sem/Act_Hum_Obj Sem/Act_Money Sem/Act_Obj Sem/Act_Obj-play Sem/Act_Org Sem/Act_Perc-emo Sem/Act_Plc Sem/Act_Prod-audio Sem/Act_Prod-vis Sem/Act_Route Sem/Act_Semcon Sem/Act_State Sem/Act_Time Sem/Act_Tool-it Sem/Act_Txt Sem/Adr Sem/Amount Sem/Amount_Build Sem/Amount_Semcon Sem/Ani Sem/Ani-bird Sem/Ani-fish Sem/Ani-insect Sem/Ani_Body Sem/Ani_Body-abstr_Hum Sem/Ani_Build Sem/Ani_Build_Hum_Txt Sem/Ani_Buildpart Sem/Ani_Cat Sem/Ani_Clth Sem/Ani_Feat_Hum Sem/Ani_Feat_Plant Sem/Ani_Food Sem/Ani_Group Sem/Ani_Group_Hum Sem/Ani_Group_Prod-vis Sem/Ani_Hum Sem/Ani_Hum_Plc Sem/Ani_Hum_Time Sem/Ani_Obj Sem/Ani_Obj-el Sem/Ani_Org Sem/Ani_Plc Sem/Ani_Plc_Txt Sem/Ani_State Sem/Ani_Substnc Sem/Ani_Time Sem/Ani_Tool Sem/Ani_Veh Sem/Aniprod Sem/Aniprod_Hum Sem/Aniprod_Mat Sem/Aniprod_Obj Sem/Aniprod_Obj-clo Sem/Aniprod_Perc-phys Sem/Aniprod_Plant Sem/Aniprod_Plc Sem/Aniprod_Plc_Route Sem/Aniprod_Substnc Sem/Aniprod_Substnc_Wthr Sem/Atr Sem/Body Sem/Body-abstr Sem/Body-abstr_Feat-psych Sem/Body-abstr_Prod-audio_Semcon Sem/Body_Body-abstr Sem/Body_Buildpart Sem/Body_Clth Sem/Body_Clthpart Sem/Body_Food Sem/Body_Fruit Sem/Body_Group_Hum Sem/Body_Group_Hum_Time Sem/Body_Hum Sem/Body_Mat Sem/Body_Measr Sem/Body_Obj Sem/Body_Obj_Tool-catch Sem/Body_Org Sem/Body_Part Sem/Body_Plc Sem/Body_Plc-elevate Sem/Body_Plc_State Sem/Body_State Sem/Body_Time Sem/Build Sem/Build-room Sem/Build-room_Cat_Ctain_Mat Sem/Build-room_Furn Sem/Build-room_Org Sem/Build_Build-room Sem/Build_Buildpart Sem/Build_Clthpart Sem/Build_Edu_Org Sem/Build_Event_Org Sem/Build_Obj Sem/Build_Org Sem/Build_Plc Sem/Build_Route Sem/Build_Tool Sem/Build_Veh Sem/Buildpart Sem/Buildpart_Cat Sem/Buildpart_Cat_Ctain Sem/Buildpart_Cat_Ctain_Mat Sem/Buildpart_Ctain Sem/Buildpart_Ctain_Mat Sem/Buildpart_Ctain_Obj Sem/Buildpart_Obj Sem/Buildpart_Obj_Plc Sem/Buildpart_Part Sem/Buildpart_Plc Sem/Buildpart_Prod-audio Sem/Cat Sem/Cat_Edu Sem/Cat_Feat Sem/Cat_Feat-psych_Plc Sem/Cat_Group_Hum Sem/Cat_Group_Hum_Plc Sem/Cat_Hum Sem/Cat_Measr Sem/Cat_Obj Sem/Cat_Plantpart Sem/Cat_Plantpart_Semcon Sem/Cat_Txt Sem/Clth Sem/Clth-jewl Sem/Clth-jewl_Curr Sem/Clth-jewl_Curr_Obj Sem/Clth-jewl_Curr_Obj_Org Sem/Clth-jewl_Fruit Sem/Clth-jewl_Money Sem/Clth-jewl_Obj Sem/Clth-jewl_Org Sem/Clth-jewl_Plant Sem/Clth_Hum Sem/Clth_Obj Sem/Clth_Obj-clo Sem/Clth_Part Sem/Clth_Sur Sem/Clthpart Sem/Clthpart_Plc Sem/Ctain Sem/Ctain-Obj Sem/Ctain-abstr Sem/Ctain-abstr_Org Sem/Ctain-clth Sem/Ctain-clth_Plant Sem/Ctain-clth_Veh Sem/Ctain_Feat-phys Sem/Ctain_Furn Sem/Ctain_Obj-surfc Sem/Ctain_Plc Sem/Ctain_Tool Sem/Ctain_Tool-measr Sem/Ctain_Txt Sem/Curr Sem/Curr_Obj Sem/Curr_Org Sem/Dance Sem/Dance_Org Sem/Dance_Prod-audio Sem/Date Sem/Dir Sem/Dir_Geom Sem/Domain Sem/Domain_Edu Sem/Domain_Feat Sem/Domain_Feat-phys Sem/Domain_Food-med Sem/Domain_Hum Sem/Domain_Ideol Sem/Domain_Money Sem/Domain_Obj Sem/Domain_Org Sem/Domain_Org_Plc-abstr Sem/Domain_Perc-emo Sem/Domain_Prod-audio Sem/Domain_State-sick Sem/Domain_Txt Sem/Drink Sem/Drink_Plant Sem/Drink_Plc Sem/Drink_Plc_Substnc Sem/Dummytag Sem/Edu Sem/Edu_Event Sem/Edu_Geom Sem/Edu_Geom_Plc-line Sem/Edu_Group_Hum Sem/Edu_Hum Sem/Edu_Mat Sem/Edu_Org Sem/Edu_Txt Sem/Event Sem/Event_Food Sem/Event_Hum Sem/Event_Org Sem/Event_Plc Sem/Event_Plc-elevate Sem/Event_Time Sem/Feat Sem/Feat-measr Sem/Feat-measr_Plc Sem/Feat-phys Sem/Feat-phys_Food_State Sem/Feat-phys_Hum Sem/Feat-phys_Obj Sem/Feat-phys_Plc-line Sem/Feat-phys_Tool-write Sem/Feat-phys_Veh Sem/Feat-phys_Wthr Sem/Feat-psych Sem/Feat-psych_Hum Sem/Feat-psych_Plc Sem/Feat_Hum Sem/Feat_Plant Sem/Fem Sem/Food Sem/Food-med Sem/Food_Obj-surfc Sem/Food_Part Sem/Food_Perc-phys Sem/Food_Plant Sem/Food_Sign Sem/Food_Substnc Sem/Food_Time Sem/Fruit Sem/Fruit_Hum Sem/Fruit_Sport Sem/Furn Sem/Furn_Ctain-abstr Sem/Furn_Time Sem/Game Sem/Game_Obj-play Sem/Geom Sem/Geom_Hum_Plc Sem/Geom_Obj Sem/Geom_Plc Sem/Group Sem/Group_Hum Sem/Group_Hum_Org Sem/Group_Hum_Plc Sem/Group_Hum_Plc-abstr Sem/Group_Hum_Prod-vis Sem/Group_Hum_Time Sem/Group_Org Sem/Group_Plc Sem/Group_Prod-vis Sem/Group_Prod-vis_Txt_Veh Sem/Group_Sign Sem/Group_State Sem/Group_Txt Sem/Hum Sem/Hum-abstr Sem/Hum-abtsr Sem/Hum-prof Sem/Hum_Lang Sem/Hum_Lang_Plc Sem/Hum_Lang_Time Sem/Hum_Mat_Tool Sem/Hum_Money Sem/Hum_Obj Sem/Hum_Obj_Plc Sem/Hum_Org Sem/Hum_Part Sem/Hum_Plant Sem/Hum_Plc Sem/Hum_Sign Sem/Hum_State Sem/Hum_Tool Sem/Hum_Tool-catch Sem/Hum_Tool-it Sem/Hum_Veh Sem/Hum_Wthr Sem/ID Sem/Ideol Sem/Lang Sem/Lang_Tool Sem/Lang_Tool-catch Sem/Mal Sem/Mat Sem/Mat_Obj Sem/Mat_Obj-clo Sem/Mat_Part Sem/Mat_Plant Sem/Mat_Plantpart Sem/Mat_Plc Sem/Mat_Tool Sem/Mat_Tool-catch Sem/Mat_Txt Sem/Measr Sem/Measr_Obj_Time Sem/Measr_Plc_Time Sem/Measr_Sign Sem/Measr_Time Sem/Money Sem/Money_Obj Sem/Money_Org Sem/Money_Part Sem/Money_Plc Sem/Money_Txt Sem/Obj Sem/Obj-catch Sem/Obj-clo Sem/Obj-cogn Sem/Obj-el Sem/Obj-ling Sem/Obj-ling_Obj-surfc Sem/Obj-play Sem/Obj-play_Sport Sem/Obj-rope Sem/Obj-surfc Sem/Obj_Part_Sign Sem/Obj_Perc-emo Sem/Obj_Plantpart Sem/Obj_Plc Sem/Obj_Plc-abstr Sem/Obj_Plc_Semcon Sem/Obj_Process Sem/Obj_Prod-audio Sem/Obj_Semcon Sem/Obj_Sign Sem/Obj_State Sem/Obj_Symbol Sem/Obj_Tool-music Sem/Obj_Tool-write Sem/Obj_Txt Sem/Obj_Veh Sem/Org Sem/Org_Play Sem/Org_Plc Sem/Org_Prod-audio Sem/Org_Prod-cogn Sem/Org_Prod-vis Sem/Org_Rule Sem/Org_State Sem/Org_Txt Sem/Org_Veh Sem/Part Sem/Part_Plc Sem/Part_Plc_Prod-audio Sem/Part_Prod-cogn Sem/Part_Substnc Sem/Part_Txt Sem/Perc-cogn Sem/Perc-emo Sem/Perc-emo_Plc Sem/Perc-emo_State Sem/Perc-emo_Wthr Sem/Perc-phys Sem/Perc-psych Sem/Phonenr Sem/Plant Sem/Plant-fungus Sem/Plant_Plantpart Sem/Plant_Plc Sem/Plant_Time_Wthr Sem/Plant_Tool Sem/Plant_Tool-measr Sem/Plantpart Sem/Play Sem/Plc Sem/Plc-abstr Sem/Plc-abstr_Rel_State Sem/Plc-abstr_Route Sem/Plc-abstr_Rule Sem/Plc-abstr_State Sem/Plc-abstr_Txt Sem/Plc-elevate Sem/Plc-line Sem/Plc-water Sem/Plc_Pos Sem/Plc_Route Sem/Plc_Semcon Sem/Plc_State Sem/Plc_Substnc Sem/Plc_Substnc_Wthr Sem/Plc_Time Sem/Plc_Time_Wthr Sem/Plc_Tool-catch Sem/Plc_Txt Sem/Plc_Wthr Sem/Pos Sem/Process Sem/Prod Sem/Prod-audio Sem/Prod-audio_Prod-vis Sem/Prod-audio_Substnc Sem/Prod-audio_Txt Sem/Prod-cogn Sem/Prod-cogn_Txt Sem/Prod-ling Sem/Prod-vis Sem/Rel Sem/Route Sem/Route_State Sem/Route_Txt Sem/Rule Sem/Rule_Txt Sem/Semcon Sem/Semcon_State Sem/Semcon_Txt Sem/Semcon_Wthr Sem/Sign Sem/Sport Sem/State Sem/State-sick Sem/State-sick_Substnc Sem/State_Veh Sem/Substnc Sem/Substnc_Wthr Sem/Sur Sem/Symbol Sem/Time Sem/Time-clock Sem/Time_Wthr Sem/Tool Sem/Tool-catch Sem/Tool-clean Sem/Tool-it Sem/Tool-measr Sem/Tool-music Sem/Tool-write Sem/Txt Sem/Veh Sem/Wpn Sem/Wthr Sem/Year org ;
LIST Year_Date = Sem/Date Sem/Year ;
SET FIRSTNAME = Prop + Sem/Fem OR Prop + Sem/Mal ;
SET TIME-N-SET = N + Sem/Time ;
LIST NOT-TIME = "dulvi" "lohpi" "vuorru" ;
SET TIME-N = TIME-N-SET - NOT-TIME ;
LIST Pot_HUMAN = Sem/Mal (ant m) Sem/Fem (ant f) Sem/Sur cog Pers Refl Indef Logo NumAg Der/NumAg ;
LIST NOT_HUMAN = "ruovdi" "nolla" "nulla" ; #to prevent habitive for these in locative
SET HUMAN = Pot_HUMAN OR Sem/Hum - NOT_HUMAN ;
#!! * Sets for Morphosyntactic properties
# --------------------------
LIST Nom = Nom ;
LIST Acc = Acc ;
LIST Gen = Gen ;
LIST Ill = Ill ;
LIST Loc = Loc ;
LIST Com = Com ;
LIST Ess = Ess ;
LIST Ine = Ine ;
LIST Ela = Ela ;
LIST Abe = Abe ;
LIST Par = Par ;
LIST LOC = Loc Ine Ela ;
LIST Sg = Sg ;
LIST Du = Du ;
LIST Pl = Pl ;
LIST ShCmp = ShCmp ;
LIST PxSg1 = PxSg1 ;
LIST PxSg2 = PxSg2 ;
LIST PxSg3 = PxSg3 ;
LIST PxDu1 = PxDu1 ;
LIST PxDu2 = PxDu2 ;
LIST PxDu3 = PxDu3 ;
LIST PxPl1 = PxPl1 ;
LIST PxPl2 = PxPl2 ;
LIST PxPl3 = PxPl3 ;
LIST Comp = Comp Gram/Comp ;
LIST Superl = Superl Gram/Superl ;
LIST Attr = Attr ;
LIST Ord = Ord ;
LIST Qst = Qst ;
# The ("ge" Pcle) etc. are used in Apertium
LIST Foc/ge = Foc/ge ("ge" Pcle) ;
LIST Foc/gen = Foc/gen ("gen" Pcle) ;
LIST Foc/ges = Foc/ges ("ges" Pcle) ;
LIST Foc/gis = Foc/gis ("gis" Pcle) ;
LIST Foc/naj = Foc/naj ("naj" Pcle) ;
LIST Foc/ba = Foc/ba ("ba" Pcle) ;
LIST Foc/be = Foc/be ("be" Pcle) ;
LIST Foc/hal = Foc/hal ("hal" Pcle) ;
LIST Foc/han = Foc/han ("han" Pcle) ;
LIST Foc/bat = Foc/bat ("bat" Pcle) ;
LIST Foc/son = Foc/son ("son" Pcle) ;
LIST IV = IV ;
LIST TV = TV ;
LIST Der/Pass = Der/PassL Der/PassS ;
LIST Prt = Prt;
LIST Prs = Prs ;
LIST Ind = Ind ;
LIST Pot = Pot ;
LIST Cond = Cond ;
LIST Imprt = Imprt ;
LIST ImprtII = ImprtII ;
LIST Sg1 = Sg1 ;
LIST Sg2 = Sg2 ;
LIST Sg3 = Sg3 ;
LIST Du1 = Du1 ;
LIST Du2 = Du2 ;
LIST Du3 = Du3 ;
LIST Pl1 = Pl1 ;
LIST Pl2 = Pl2 ;
LIST Pl3 = Pl3 ;
LIST Inf = Inf ;
LIST ConNeg = ConNeg ;
LIST Neg = Neg ;
LIST PrfPrc = PrfPrc ;
LIST VGen = VGen ;
LIST PrsPrc = PrsPrc ;
LIST Ger = Ger ;
LIST Sup = Sup ;
LIST Actio = Actio ;
LIST Der/PassL = Der/PassL ;
LIST Der/NomAg = Der/NomAg ;
LIST Actor = NomAg Der/NomAg ;
LIST VAbess = VAbess ;
# Derivation
# ----------
LIST Der/adda = Der/adda ;
LIST Der/ahtti = Der/ahtti ;
LIST Der/alla = Der/alla ;
LIST Der/asti = Der/asti ;
LIST Der/easti = Der/easti ;
LIST Der/d = Der/d ;
LIST Der/NomAct = Der/NomAct ;
LIST Der/eamoš = Der/eamoš ;
LIST Der/amoš = Der/amoš ;
LIST Der/eapmi = Der/eapmi ;
LIST Der/geahtes = Der/geahtes ;
LIST Der/gielat = Der/gielat ;
LIST !better: = !better: ;
LIST Der/NuA = Der/NuA ;
LIST Der/h = Der/h ;
LIST Der/heapmi = Der/heapmi ;
LIST Der/hudda = Der/hudda ;
LIST Der/huhtti = Der/huhtti ;
LIST Der/huvva = Der/huvva ;
LIST Der/halla = Der/halla ;
LIST Der/j = Der/j ;
LIST Der/l = Der/l ;
LIST Der/laš = Der/laš ;
LIST Der/las = Der/las ;
LIST Der/hat = Der/hat ;
LIST Der/meahttun = Der/meahttun ;
LIST Der/muš = Der/muš ;
LIST Der/n = Der/n ;
LIST Der/st = Der/st ;
LIST Der/stuvva = Der/stuvva ;
LIST Der/upmi = Der/upmi ;
LIST Der/supmi = Der/supmi ;
LIST Der/vuohta = Der/vuohta ;
LIST Der/goahti = Der/goahti ;
LIST Der/lágan = Der/lágan ;
LIST Der/lágán = Der/lágán ;
LIST Der/lágaš = Der/lágaš ;
LIST Der/jagáš = Der/jagáš ;
LIST Der/jahkásaš = Der/jahkásaš ;
LIST Der/diibmosaš = Der/diibmosaš ;
LIST Der/Dimin = Der/Dimin ;
LIST Der/viđá = Der/viđá ;
LIST Der/viđi = Der/viđi ;
LIST Der/veara = Der/veara ;
LIST Der/duohke = Der/duohke ;
LIST Der/duohkai = Der/duohkai ;
LIST Der/vuolle = Der/vuolle ;
LIST Der/vuollai = Der/vuollai ;
LIST Der/vuolde = Der/vuolde ;
LIST = ←sma→ ;
#!! !!Syntactic tags
# --------------
LIST @+FAUXV = @+FAUXV ; #!! * @+FAUXV : finite auxiliary verb
#!! ** ferte: Son ferte oaidnit ollislaš gova. - She must see the whole picture.
LIST @+FMAINV = @+FMAINV ; #!! * @+FMAINV : finite main verb
#!! ** oaidná: Son oaidná ollislaš gova. - She sees the whole picture
LIST @-FAUXV = @-FAUXV ; #!! * @-FAUXV : infinite auxiliary verb
#!! ** sáhte: In sáhte gáhku borrat. - I cannot eat cake.
LIST @-FMAINV = @-FMAINV ; #!! * @-FMAINV : infinite main verb
#!! ** oaidnit: Son ferte oaidnit ollislaš gova. - She must see the whole picture.
LIST @-FSUBJ> = @-FSUBJ> ; #!! * @-FSUBJ> : Subject of infinite verb outside the verbal.
#!! ** mu: Diet dáhpáhuvai mu dieđikeahttá. - It happened without me knowing about it.
LIST @-F = @-FOBJ> ; #!! * @-FOBJ> : Object of infinite verb outside the verbal.
#!! ** váldovuoittuid: Sii vurde váldovuoittuid fasket. - They waited to grab the main prizes.
LIST @SPREDADVL = @>ADVL ; #!! * @>ADVL : Modifier of an adverbial to the right.
#!! ** vaikko: doppe leat vaikko man ollu studeanttat.
LIST @ADVL< = @ADVL< ; #!! * @ADVL< : Komplement for adverbial.
#!! ** vahkus: Son málesta guktii vahkus.
LIST @ = @ADVL> ; #!! * @ADVL> : Adverbial to the left of the main verb
#!! ** viimmat: Dál de viimmat asttan lohkat reivve.
LIST @ADVL>CS = @ADVL>CS ; #!! * @ADVL>CS : Adverbial modifying subjunction.
#!! ** 'beare' pointing at 'danin go': Muhto dus ii leat riekti dearpat su beare danin go sáhtát.
LIST = ; #!! * : Habitive, specifying an adverbial, e.g. @ADVL>
#!! ** Máhtes: Máhtes lea beana.
LIST = ; #!! * : Extencial, specifying an subject, e.g. @
#!! ** beana: Máhtes lea beana.
LIST = ; #!! * : logoforic pronouns, e.g. @>N (for MT)
LIST = ; #!! * :
LIST @>N = @>N ; #!! * @>N : Modifier of a noun to the right.
#!! ** geavatlaš: Ráđđehussii lea geavatlaš politihkka deaŧalaš. - For the government, practical politics is important.
LIST @N< = @N< ; #!! * @N< : Complement of noun to the left.
#!! ** vihtta: Mun boađán diibmu vihtta.
LIST @>A = @>A ; #!! * @>A : Modifier of an adjective to the right.
#!! ** juohke: Seminára lágiduvvo juohke nuppi jagi.
LIST @P< = @P< ; #!! * @P< : Complement of preposition.
#!! ** soađi: Dat dáhpáhuvai maŋŋel soađi.
LIST @>P = @>P ; #!! * @>P : Complement of postposition.
#!! ** riegádeami: Seta riegádeami maŋŋel Áttán elii vel 800 jagi.
LIST @HNOUN = @HNOUN ; #!! * @HNOUN : Stray noun in sentence fragment.
#!! ** muittut: Fidnokurssa muittut.
LIST @INTERJ = @INTERJ ; #!! * @INTERJ : Interjection.
#!! ** Hei: Hei, boađe!
LIST @>Num = @>Num ; #!! * @>Num : Attribute of numeral to the right.
#!! ** dušše: Mun ledjen dušše guokte mánu doppe.
LIST @Pron< = @Pron< ; #!! * @Pron< : Complement of pronoun to the left.
#!! ** Birehiin: Moai Birehiin leimme doppe.
LIST @>Pron = @>Pron ; #!! * @>Pron : Modifyer of pronoun to the right.
#!! ** vaikko: Olmmoš sáhttá bargat vaikko maid.
LIST @Num< = @Num< ; #!! * @Num< : Complement of numeral to the left.
#!! ** girjjiin: Dat lea okta min buoremus girjjiin.
LIST @OBJ = @OBJ ; #!! * @OBJ : Object, the verb is not in the sentence (ellipse)
LIST @ = @OBJ> ; #!! * @OBJ> : Object, the verb is to the right.
#!! ** filmma: Dán filmma leat Kárášjoga nuorat oaidnán.
LIST @OPRED = @OPRED ; #!! * @OPRED : Object predicative, the verb is not in the sentence (ellipse).
LIST @ = @OPRED> ; #!! * @OPRED> : Object predicative, the verb is to the right.
#!! ** dohkkemeahttumin: Son oinnii dohkkemeahttumin bargat ášši nu.
LIST @PCLE = @PCLE ; #!! * @PCLE : Particle.
#!! ** Amma: Amma mii eat leat máksán? - We have not paid, have we?
LIST @COMP-CS< = @COMP-CS< ; #!! * @COMP-CS< : Complement of subjunction.
#!! ** vejolaš: Dat šaddá nu buorre go vejolaš.
LIST @SPRED = @SPRED ; #!! * @SPRED : Subject predicative, the verb is not in the sentence (ellipse).
LIST @ = @SPRED> ; #!! * @SPRED> : Subject predicative, the verb is to the left.
#!! ** álbmogin: Sápmelaččaid historjá álbmogin lea duháhiid jagiid boaris.
LIST @SUBJ = @SUBJ ; #!! * @SUBJ : Subject, the finite verb is not in the sentence (ellipse).
LIST @ = @SUBJ> ; #!! * @SUBJ> : Subject, the finite verb is to the right.
#!! ** Son: Son lea mu oabbá. - Sheis my sister.
LIST @PPRED = @PPRED ; #!! * @PPRED : Predicative for predicative.
LIST @APP = @APP ; #!! * @APP : Apposition
LIST @APP-N< = @APP-N< ; #!! * @APP-N< : Apposition to noun to the left.
#!! ** oahpaheaddji: Oidnen Ánne, min oahpaheaddji.
LIST @APP-Pron< = @APP-Pron< ; #!! * @APP-Pron< : Apposition to pronoun to the left.
#!! ** boazodoalloáirasat: Ja moai boazodoalloáirasat áigguime vaikko guovttá joatkit barggu.
LIST @APP>Pron = @APP>Pron ; #!! * @APP>Pron : Apposition to noun to the right.
LIST @APP-Num< = @APP-Num< ; #!! * @APP-Num< : Apposition to numeral to the left.
LIST @APP-ADVL< = @APP-ADVL< ; #!! * @APP-ADVL< : Apposition to adverbial to the left.
#!! ** bearjadaga: Mun vuolggán ihttin, bearjadaga.
LIST @VOC = @VOC ; #!! * @VOC : Vocative
#!! ** Miss Turner : Bures boahtin deike, Miss Turner! - Welcome her, Miss Turner!
LIST @CVP = @CVP ; #!! * @CVP : Conjunction or subjunction that conjoins finite verb phrases.
#!! ** go : Leago guhkes áigi dassá go Máreha oidnet? - Is it a long time since you saw Máret?
LIST @CNP = @CNP ; #!! * @CNP : Local conjunction or subjunction.
#!! ** vai : Leago nieida vai bárdni? - Is it a girl or a boy?
LIST @CMPND = @CMPND ; #!! * @CMPND
LIST @X = @X ; #!! * @X : The function is unknown, e.g. because of that the word is unknown
LIST ADVL = @ADVL @ADVL> @ADVL-ine> @ADVL-ela> @ADVL @-F OR @SUBJ ;
SET SPRED = @ OR @SPRED ;
SET OPRED = @ OR @OPRED ;
SET FOBJ = @-F ;
SET FMAINV = @-FMAINV OR @+FMAINV OR (V @) OR (@OBJ) OR (@-F) ;
LIST = @OBJ> @-FOBJ> ;
SET -OTHERS = OBJ> OR (Gen) OR (Nom) OR (Ess) OR (Loc) OR (Adv) OR (Ine) OR (Ela) ;
SET SYN-V = V + SUBJ OR OBJ + V OR ADVL + V OR (V @N<) OR (V @A<) OR V + SPRED OR (V @COMP-CS<) ;
LIST OKTA = "akta" "okta";
LIST go = "go" ;
# Initials
# --------
LIST INITIAL = "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
"n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
"á" "æ" "ø" "å" "ö" "ä" ;
LIST CAP-INITIAL = "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"
"N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z"
"Á" "Æ" "Ø" "Å" "Ö" "Ä" ;
#!! !!Tag sets
# ========
SETS
# ========
# Word or not
# -----------
LIST WORD = N np A Adv V Pron CS CC Po Pr Interj Pcle Num ABBR ACR \? ;
# any word
SET REALWORD = WORD - Num - Ord ;
SET REALWORD-NOTABBR = WORD - Num - Ord - ABBR ;
SET WORD-NOTDE = WORD - ("de") ;
# Verb sets
# ---------
# Verbs and their complements
# - - - - - - - - - - - - - -
SET NOT-VERB = WORD - V ;
# Finiteness and mood
# - - - - - - - - - -
SET V-IND-FIN = Prs OR Prt ;
# Problem: "In boahtán" is an invisible indicative
SET V-MOOD = Ind OR Pot OR Imprt OR ImprtII OR Cond OR (Neg Sup) ;
LIST GC = ("gč") ;
SET VFIN = GC OR V-MOOD - ConNeg ;
SET VFIN-POS = V-MOOD - ConNeg - Neg ;
SET VFIN-NOT-IMP = VFIN - Imprt ;
SET VFIN-NOT-NEG = VFIN - Neg ;
# this might be to strict, besides, "iige" can be written "ii ge"
SET NOT-PRFPRC = WORD - PrfPrc ;
# Person
# - - - -
LIST V-SG1 = (V Sg1) ;
LIST V-SG2 = (V Sg2) ;
LIST V-SG3 = (V Sg3) ;
LIST V-DU1 = (V Du1) ;
LIST V-DU2 = (V Du2) ;
LIST V-DU3 = (V Du3) ;
LIST V-PL1 = (V Pl1) ;
LIST V-PL2 = (V Pl2) ;
LIST V-PL3 = (V 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 ;
# Sets consisting of LEAT
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
LIST LEAT = "leat" "liehket" "lea" ;
SET LEAT-FIN-NOT-IMP = LEAT - Imprt;
LIST VPRFPRC = (V PrfPrc) ;
SET LEATPRFPRC = LEAT + PrfPrc ;
SET PRC-NOT-LEAT = VPRFPRC - LEATPRFPRC ;
# In order to distinguish between real leat-constructions and participles of other verbs
LIST HABEO-SG3 = ("leat" Sg3) (V Neg Sg3) ("šaddat" Sg3) ("sjaddat" Sg3) ("liehket" Sg3) ("lea" Sg3) ;
LIST HABEO-PL3 = ("leat" Pl3) (V Neg Pl3) ("šaddat" Pl3) ("sjaddat" Pl3) ("liehket" Pl3) ("lea" Pl3) ;
SET HABEO-3 = HABEO-SG3 OR HABEO-PL3 ;
# Pronoun sets
# ------------
LIST MUN = (Pron Pers Sg1 Nom);
LIST DON = (Pron Pers Sg2 Nom);
LIST SON = ("son" Pron Pers Sg3 Nom);
LIST MOAI = (Pron Pers Du1 Nom);
LIST DOAI = (Pron Pers Du2 Nom);
LIST SOAI = (Pron Pers Du3 Nom);
LIST MII-PERS = (Pron Pers Pl1 Nom);
LIST DII = (Pron Pers Pl2 Nom);
LIST SII = ("son" Pron Pers Pl3 Nom);
SET PPRON-NOM-NOT-DAT = MUN OR DON OR SON OR MOAI OR DOAI OR SOAI OR MII-PERS OR DII OR SII ;
SET PPRON-NOT-DAT = (Pron Pers) - ("dat") ;
SET PPRON-DU-PL = MOAI OR DOAI OR SOAI OR MII-PERS OR DII OR SII ;
SET PPRON-PL = MII-PERS OR DII OR SII ;
SET PRON-DU = MOAI OR DOAI OR SOAI ;
SET PPRON-NOT-SII = MUN OR DON OR SON OR MOAI OR DOAI OR SOAI OR MII-PERS OR DII ;
LIST PPRON-GEN = (Sg1 Gen) (Sg2 Gen) (Sg3 Gen) (Du1 Gen) (Du2 Gen) (Du3 Gen)
(Pl1 Gen) (Pl2 Gen) (Pl3 Gen);
SET PPRON-NOT-GEN = (Pron Pers) - PPRON-GEN ;
LIST DEM-SG = (Pron Dem Sg Nom);
LIST DEM-PL = (Pron Dem Pl Nom);
SET NOT-DEM = WORD - Dem ;
LIST SGPRON = (Pron Sg1) (Pron Sg2) (Pron Sg3) (Pron Sg) (Pron PxSg1) (Pron PxSg2) (Pron PxSg3);
LIST DUPRON = (Pron Du1) (Pron Du2) (Pron Du3) (Pron PxDu1) (Pron PxDu2) (Pron PxDu3);
LIST PLPRON = (Pron Pl1) (Pron Pl2) (Pron Pl3) (Pron Pl) (Pron PxPl1) (Pron PxPl2) (Pron PxPl3);
LIST DUPRON-NOTPX = (Pron Du1) (Pron Du2) (Pron Du3) ;
SET PRON-NOT-SG = DUPRON OR PLPRON ;
LIST DAT-PRON = ("dat") ("dát") ("diet") ("duot") ("dot") ;
LIST QUANT-PRON = "ollu" "olu" "unnán" "váháš" "veaháš" "veháš" ;
# This set is for choosing between Adv and Pron Indef.
# Adjectival sets and their complements
# -------------------------------------
SET NOT-A = WORD - A ;
SET NOT-A-COMMA = WORD - A - COMMA ;
SET NOT-Attr = WORD - Attr ;
SET NOT-A-PCLE = WORD - A - Pcle ;
SET NOT-A-ADV = WORD - A - Adv OR ("maid") ;
LIST NOMINAL-ADJ = "guoktilaš" "lámis" "oasálaš" ("suddu" Der/laš) "viissis";
# and many others
# Adverbial sets and their complements
# ------------------------------------
SET LEX-ADV = Adv - (A*) ;
SET NOT-ADV-DE = WORD - Adv ;
SET NOT-ADV = NOT-ADV-DE OR ("de" Adv) OR CLB ;
SET NOT-ADV-N = NOT-ADV - N;
SET NOT-ADV-PCLE = NOT-ADV - Pcle ;
SET NOT-ADV-INDEF = NOT-ADV - Indef ;
SET NOT-ADV-PCLE-ILL = WORD - Adv - Pcle - Ill ;
SET NOT-ADV-PCLE-Refl = WORD - Adv - Pcle - Refl ;
SET NOT-ADV-PCLE-INDEF = WORD - Adv - Pcle - Indef ;
SET NOT-ADV-PCLE-NEG = WORD - Adv - Pcle - Neg ;
SET NOT-ADVL-PCLE-NEG = WORD - ADVL - @P< - Pcle - Neg ;
LIST MO-MANge = "goas" "gokko" "gos" "gosa" "govt" "makkár" "man" "manne" ("manin" Adv) "mo" "mot" "mov" "movt" ("nugo" @CVP) (V Qst) "gusnie" ;
SET MO = MO-MANge - ("man" Foc/ge) ;
# Introduce finite clauses.
LIST PLACE-ADV = "davá#bealde" "mátta#bealde" "nuortta#bealde" "oarje#bealde" "olggo#beale" ;
# There will usually be a Gen in front.
LIST TIME-ADVL = "dalle" "diibmá" "dolin" "dovle" "duvle" "eske" "gieskat" "ikte" "ovdal" ("ovdditbeaivi" Gen) ("vássánáigi" Loc) ("boaresáigi" Gen) "dál" "ihttin" "odne" "otne" ("boahtteáigi" Loc) ("boahtteáigi" Gen) ;
SET TIME-ADV = (Adv Sem/Time) OR Sem/Time-clock ;
LIST DOPPE = "badjin" "bajil" "dakko" "dá" "dákko" "dáppe" "diekko" "dieppe" "do" "dokko" "doppe" "duo" "duokko" "duoppe" "olgun" "gusnie" "dusnie" ;
# Adverbs with a locativic form, but don´t get Loc as a tag.
LIST DOHKO = "bajás" "deike" "diehke" "diehko" "dohko" "duohko" "lulás" "olggos" "ruoktot" "sisa" "vuovdimassii" ;
# Adverbs with a illativic form, but they don´t get Ill as a tag.
# Coordinators
# ------------
SET Foc = Foc/ge OR Foc/gen OR Foc/ges OR Foc/gis OR Foc/naj OR Foc/ba OR Foc/be OR Foc/hal OR Foc/han OR Foc/bat OR Foc/son ;
LIST NEGFOC = (Neg Foc/ge) ;
LIST XGO = "dego" "dugo" "nugo" "seammaládjego" "seammaláhkaigo" ;
# Compounds
LIST SEAMMAX = "seamma#ládje" "seamma#láhkai" "seamma#láhkái" ;
# Those combine with go
LIST MADE = "mađe" "mađi" ;
LIST DADE = "dađe" "dađi" ;
SET CRD = @CNP OR COMMA OR NEGFOC OR XGO OR ("/") OR ("-") OR DADE ;
# AFTER LCRD vs. GCRD disambiguation
LIST ADV-AFTER-NUM = "geardde" ;
LIST DUSSE = "áibbas" "badjel" "badjelaš" "birrasii" "birrasiid" "dušše" "earenoamážit" "erenoamážit" ("erenoamáš" Adv) "gitta" "goitge" "lagabui" "man" "measta" "meastui" "oalle" "oba" "oktiibuot" "oppa" "ovdalaš" "sullii" "unnimusat" "vuollel" ;
LIST GRADE-ADV = "áibbas" "badjelmeare" "beare" ("duođaid" Adv) ("duođas" Adv) ("eambbo" Adv) ("eanet" Adv) "erenoamán" "erenoamáš" "hirbmat" "hui" "ila" "issoras" ("man" Adv) ("mealgat" Adv) ("mearkkašahtti" Adv) "measta" "menddo" "muhtun_muddui" "muhtun muddui" "nu" "oalle" "oba" ("ollásit" Adv) ("oppa" Adv) "sakka" ("seammá" Adv) ("veaháš" Adv) ("uhccán" Adv) ("unnán" Adv) "vehá" "veháš" "veahá" "veaháš" "viehka" "mearihis" ;
LIST BUOT = "buot" "gait" "gaitin" "gaitdivnnat" "visot" ;
LIST EASKKA = "easkka" ("easka" Adv) ;
SET MOD-ADV = DUSSE OR ("njuolga") OR ("njuolgga") OR EASKKA OR ("gitta") OR ("badjelmeare") OR ("eanet" Adv) OR ("čielgasit") OR ("dakka") OR ("hirbmat" Adv) OR ("hui") OR ("mealgat" Adv) OR ("menddo") OR ("nu") ;
LIST ADV-NOT-ARG = "aiddo" "ain" "aivve" "albma" "aŋkke" "álggos" "bái#fáhkka" "beanta" "beare" ;
LIST CURRENCY = "denára" "dollár" "euro" "kruvdnu" "kr" "ru" "rubel" "ruvdno" "ruvdnu" "¢" "€" "$";
LIST ADV-NOT-VERB = "dušše" "viimmat" ;
LIST ADV-NOT-NOUN = "easka" "várra" ;
LIST ADV-NOT-NAMES = "Ain" "Anne" "Diego" "Dieppe" "Enge" "Galle" "Haga"
"Joba" "Johan" "Liikka" "Mai" "Mannes" "Mo" "Mot" "Naba"
"Nan" "Oktan" "Sierra" "Sokka" "Villa" ;
SET ADV-NOT-OTHER-POS = ADV-NOT-VERB OR ADV-NOT-NOUN OR ADV-NOT-NAMES ;
LIST HAB-CASE = Loc ( Ine) ( Ine) ( Gen) ;
SET HAB-ACTOR-ALL = HUMAN OR Sem/Org OR Sem/Ani OR ("gii") OR Indef OR Coll OR ("dat") OR Rel ;
SET HAB-ACTOR = HAB-ACTOR-ALL - ("cihca") - ("riika") ; #Bør Sem/Org være med?
SET HAB-ACTOR-NOT-HUMAN = Sem/Org ;
LIST HEADOFPARTS = "eanetlohku" "unnitlohku" "mearri" "nissonoassi" "oassi" "váldooassi" "bealli" "guhtemuš" "goappašat" "proseanta" "%" Sem/Part ;
SET Gen-Sem/Route = Sem/Route + Gen OR (".*ráigi"r) + Gen ;
# Sets of elements with common syntactic behaviour
# ================================================
SETS
#!! * Sets for verbs
# -----
LIST NOT-REAL-V = (Actio Nom) (Actio Gen) (Actio Loc) (Actio Com) PrsPrc (V @>N) ;
SET REAL-V = V - NOT-REAL-V ;
#!! ** V is all readings with a V tag in them, REAL-V should
#!! be the ones without an N tag following the V.
#!! The REAL-V set thus awaits a fix to the preprocess V ... N bug.
# The set REAL is smaller than COPULAS, made for verbs with PrfPrc complements: Seammás REAL-COPULAS son dovdan iežas...
LIST REAL-COPULAS = "dáidit" "leat" "soaitit" "veadjit" "liehket" "lea";
#!! * The set COPULAS is for predicative constructions
LIST COPULAS = "dáidit" "gártat" "leat" "soaitit" "šaddat" "orrut" "veadjit" "liehket" "sjaddat" "lea" "sjïdtedh" "årrodh" ;
# "bissut" ?
# 'Dáidit' can appear without 'leat'.
SET NOT-COP-V = V - COPULAS ;
SET MAIN-V = V - FAUXV ;
# All active verbs with a TV tag, including AUX-OR-MAIN.
LIST V-TRANS = (V TV) (IV Der/ahtti) (IV Der/h) ;
SET TRANS-V = V-TRANS - Der/Pass + REAL-V ;
#!! * NP sets defined according to their morphosyntactic features
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
LIST N-SG-NOM = (N Sg Nom);
SET HEAD-N = N - Cmp/SplitR ;
SET HEAD-N-NOM = (N Nom) - Cmp/SplitR ;
SET SUBJECTHEAD = N OR A OR Pron - Refl ; # These, can be subject heads
SET NP = N OR A ; # anything that can take except numerals
SET NP-HEAD = Pron OR HEAD-N - ("buorre") ;
SET NP-HEAD-SG = SGPRON OR (N Sg) OR (A Sg) - Cmp/SplitR - Dem - ("buorre");
SET NP-HEAD-PL = PLPRON OR (N Pl) OR (A Pl) - Cmp/SplitR - Dem - ("buorre");
SET NP-HEAD-SG-NOM = SGPRON + Nom OR (N Sg Nom) OR (A Sg Nom) - ("buorre") - Cmp/SplitR ;
SET NP-HEAD-PL-NOM = PLPRON + Nom OR (N Pl Nom) OR (A Pl Nom) - Cmp/SplitR - ("buorre");
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) - Cmp/SplitR - (Dem Attr) - ("buorre");
SET NP-HEAD-GEN = (Pron Gen) OR (N Gen) OR (A Gen) - Der/NomAct - Cmp/SplitR - (Dem Attr) - ("buorre") ;
#!! * The PRE-NP-HEAD family of sets
#!! These sets model noun phrases (NPs). The idea is to first define whatever can
#!! occur in front of the head of the NP, and thereafter negate that with the
#!! expression __WORD - premodifiers__.
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 (A Gen) OR ("buot") OR
Num OR Cmp/SplitR OR CC OR (Pron Dem) OR Pron + Refl + Gen OR (Indef Attr) OR
(PrfPrc @>N) OR PrsPrc OR (A Ord) OR (Num @>N) OR (A @>N) OR @>N OR @>A OR @>Pron OR @Num< OR (CC @CNP) OR (@>CC) OR (Action Gen) OR (@Pron<) ;
# The strict version of items that can only be premodifiers, not parts of the predicate
#LIST PRE-NP-HEAD = @>N @>A @>Pron @Num< @CNP ;
SET PRE-NP-V = PrfPrc OR PrsPrc OR Der/NomAg OR Actio OR Der/NomAct OR (V A) OR (Prs Sg3) + Ind OR (Prs Sg1) + Ind OR (Imprt 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 Pers Acc) OR (Pron Indef) OR Num OR (A Ord) OR (Pron Dem) OR Pron + Refl + Gen OR Pron + Refl + Acc ; # Acc pga av manglende disambiguering tidlig i fila
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.
#!! The set __NOT-NPMOD__ is used to find barriers between NPs.
#!! Typical usage: ... (*1 N BARRIER NPT-NPMOD) ...
#!! meaning: Scan to the first noun, ignoring anything that can be
#!! part of the noun phrase of that noun (i.e., "scan to the next NP head")
SET NOT-NPMOD = WORD - PRE-NP-HEAD OR ABBR ;
# This is the previous NPNH (npnh) set.
# NOT-NPMOD = "NOT-PRE-NP-HEAD"
SET NOT-NPMOD-ACC = NOT-NPMOD - Acc OR ABBR ;
SET NOT-NPMOD-ACC-ADV = NOT-NPMOD - Acc - Adv OR ABBR ;
# To be used in mappingrules, before the disambuation of Acc and Gen.
SET NOT-NPMODADV = WORD - PRE-NP-HEAD - Adv - Pcle OR ("de") ;
# NOT-NPMODADV = "NOT-PRE-NP-HEAD-OR-ADV"
SET NOT-NPMODADV-INDEF = WORD - PRE-NP-HEAD - Adv - Indef ;
## NOT-NPMODADVI = " ...-OR-INDEF"
SET NOT-NPMODADVII = WORD - PRE-NP-HEAD - Adv - Indef - Ill ;
# Illative indir.obj.
SET NOT-NPMODADVIIP = WORD - PRE-NP-HEAD - Adv - Indef - Ill - Pcle ;
# <== is this our NOT-NPMOD set?
SET NOT-NPMODCC = WORD - PRE-NP-HEAD - COMMA - @CNP ;
SET NAPP = WORD - PRE-APP ;
#!! * Miscellaneous sets
# ------------------
LIST Px = PxSg1 PxSg2 PxSg3 PxDu1 PxDu2 PxDu3 PxPl1 PxPl2 PxPl3 ;
LIST GASKAL = "gaskal" "gaskkal" "gaskii" "gaskka" "gaskkas" ;
# p-positions that like coordination
LIST TIME-PP = "badjel" "čađa" "earret" "gaskkal" "guovddáš" "maŋŋel" "maŋŋil" "maŋŋá" "miehtá" "ovdal" ;
SET NUM = Num - OKTA ;
# this set does not contain ordinals, I am not sure if that is necessary.
SET NOT-NUM = WORD - Num ;
LIST MANGA = "máŋga" "galle" ;
# Not referred to by any rule.
LIST SOAMES = "soames" "muhtun" "ollugat" ;
SET CARDINALS = Num - Ord - MANGA ;
SET NOT-CC = WORD - CC ;
SET NOT-PCLE = WORD - Pcle ;
LIST COMPAR = ("dávji" A Comp) "eanet" "earalágan" "eará" "earret" "seammás" "seammalágan" "seamma_láhkái" ;
# These combine with "go" Pcle, but COMPAR stands for 'comparison' rather than
# 'comparative'.
LIST CONTRA = "muhto" ;
# In lean muitalan, muhto dál muitalan.
LIST PROSEANTA = "proseanta" "%" ;
SET REAL-CLB = CLB - COMMA ;
LIST GOVUS = "govus" "tabealla" ;
SET NOT-INITIAL-CC = WORD - INITIAL - CC ;
#!! * Border sets and their complements
# ---------------------------------
SET CP = (Pron Interr) OR Rel OR MO ;
LIST BOUNDARYSYMBOLS = "\;" ":" "-" "–" "»" ;
SET S-BOUNDARY = CP OR BOUNDARYSYMBOLS OR ("muhto") OR ("de" Adv) OR (Neg Sup) OR @CVP OR ("vel" Adv Qst) OR Rel ;
# does not include CS, because of "go" in questions, before it is disambugated.
# includes CP
# this one includes @CVP, the conjunction which actually connects two sentences (each with a finite verb) to each other,
# and not @CNP, which coordinates internal NP-/AdvP-/AP ... coordination
# To be used only AFTER the disambiguation of @CVP and @CNP taking place in the chapter right before "Disambiguating pronouns"
SET BOC = S-BOUNDARY OR BOS ;
SET BOC-PUNCT = BOC - ("-") - ("–") ;
SET EOC = S-BOUNDARY OR EOS ;
SET NP-BOUNDARY = BOS OR EOS OR REAL-CLB OR VFIN OR Inf OR (Actio Ess) OR ConNeg OR VGen OR Sup OR PPRON-NOT-GEN OR Recipr OR Po OR Pr OR Pcle OR ("jed") OR Interj OR CS OR CP OR @CVP ;
SET APP-BOUNDARY = REAL-CLB OR VFIN OR Inf OR (Actio Ess) OR ConNeg OR VGen OR Sup OR Recipr OR Po OR Pr OR Pcle OR Interj OR CS OR CP OR PrfPrc - @>N ;
# A special barrier used with mapping of appositions.
# This set contains FMAINV with @, which means that it functions for all kind of mainverbs after the verb-mapping rules
SET SV-BOUNDARY = S-BOUNDARY OR Inf - FAUXV OR Sup OR FMAINV ;
# VFIN-NOT-AUX ;
# should be MAIN-V linked to VFIN-aux to the left. (cg-3)
# This set is ment to use in rules for disambiguating due to verbs or verbsets. It contents @.
SET SVF-BOUNDARY = S-BOUNDARY OR VFIN ;
# This set is ment to use in rules for disambiguating due to verbs or verbsets.
# Here we search for either an S-BOUNDARY or a finite verb, either aux or main.
SET ADVLCASE = Ill OR Loc OR Com OR Ess OR Ine OR Ela - (Actio Ess) ; #!! ADLVCASE
LIST CASE = Nom Acc Gen Ill Loc Com Ess Ine Ela ;
LIST MEASUREADJS = "ruvdnosaš" "kruvdnosaš" ;
#!! * Syntactic sets
# --------------
LIST ALLSYNTAG = @+FAUXV @+FMAINV @-FAUXV @-FMAINV @-FSUBJ> @-FOBJ @-F @-FA @>ADVL @ADVL< @ @ADVL @>N @APP @APP-N< @APP-Pron< @APP>Pron @APP-Num< @APP-ADVL< @VOC@CNP @CVP @P< @>P @HNOUN @INTERJ @Pron< @OBJ @OBJ> @ @SPRED @PPRED @Num< @SUBJ @ @X ;
LIST HEAD = @SUBJ> @ @ @ @ @ @-FOBJ> @-FADVL> @-FSPRED> @-F @+FMAINV) TARGET (@+FMAINV)(0 Qst LINK *-1 @+FMAINV OR @-FMAINV BARRIER SV-BOUNDARY) ;
#SUBSTITUTE:subqst (@+FMAINV) ( @+FMAINV) TARGET (@+FMAINV)(1 go)(*-1 @+FMAINV OR @-FMAINV BARRIER SV-BOUNDARY) ;
#SUBSTITUTE:subqst (@+FAUXV) ( @+FMAINV) TARGET (@+FAUXV)(0 Qst LINK *-1 @+FMAINV OR @-FMAINV BARRIER SV-BOUNDARY) ;
#SUBSTITUTE:subqst (@+FAUXV) ( @+FMAINV) TARGET (@+FAUXV)(1 go)(*-1 @+FMAINV OR @-FMAINV BARRIER SV-BOUNDARY) ;
#$ Sámediggi áigu guorahallat lea go vejolaš rievdadit ohcanalmmuheami.
#$ Mii leat maid hutkame mo sáhttit ovdamearkka dihte láidestanheargái bidjat kámera, sáhttitgo juogaládje leaŋggaide bidjat gitta smávva kámeračča
SECTION #
#!! !!Numeral outside the sentence
#!! * __ordHNOUN__
MAP:NumHNOUN (@HNOUN) TARGET (ord) (-1 BOS) ;
#$ 4. Álbmotskuvlla ja oahpaheaddjiseminára gaskasaš áigi.
#!! !!HABITIVE MAPPING
# Not habitive
MAP:s-boundary=advl> (@ADVL-ela>) TARGET (N Sg Loc) (-1 Arab)(1 VFIN LINK 1 Num)(0 ()) ;
#$ 39 áirasis ledje 37 čoahkis
MAP:num=advl> (@ADVL-ela>) TARGET Num + Loc IF ((1 Ill) OR (1 Gen LINK 1 ("rádjai")))(0 ()) ;
#$ Nullas čuođi rádjai, de galgá ádjánit sullii 2,1 sekundda.
# Habitives - HAB
#!! * __hab1__ hab aux leat
MAP:hab1 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(1 FAUXV + HAB-V-TAGS LINK *1 LEAT BARRIER NP-HEAD OR MAIN-V);
#$ Mus eai leat girjjit mielde.
#% Dorskis sáhttet leat vuoivvas ja meađđemat.
#!! * __hab_numo1__ hab copula comma comma N+Nom
MAP:hab_numo1 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(1 COPULAS + HAB-V-TAGS LINK 1 COMMA LINK *1 COMMA LINK 1 (N Nom)) ;
#$ Dus lea, nu mo buot eará bargiin, vuoigatvuohta oahppasoahpamuša lassin maiddái čálalaš bargosoahpamuššii oahppafitnodagain.
#!! * __hab_numo2__ copula nu mo/go hab
MAP:hab_numo2 ( @)(NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom)) ;
#(1 COPULAS + HAB-V-TAGS LINK 1 COMMA LINK *1 COMMA LINK 1 (N Nom)) ;
#!! * __leahab__ copula nu mo/go hab
MAP:leahab ( @ @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(1 FAUXV + HAB-V-TAGS LINK 1 Adv LINK *1 LEAT BARRIER NOT-ADV-PCLE);
#!! * __hab3__ ( @ADVL>) for asdf hab-actor and hab-case; if leat to the right, and Nom to the right of leat. Lots of restrictions.
MAP:hab3 ( @)
(1 EOS)
(NEGATE 0 Sem/Group OR Pl - Rel LINK *-1 Indef - BUOT + Nom OR HUMAN + Nom BARRIER NOT-NPMOD-ACC)
(NEGATE 0 N OR Pers OR Indef LINK *-1 HAB-ACTOR + HAB-CASE BARRIER NOT-NPMOD-ACC OR CC)(NEGATE -1 Num LINK -1 Num)
(NEGATE -1 Arab LINK 3 Arab)(NEGATE -1 Num OR HEADOFPARTS LINK 2 VFIN)
(NEGATE NOT 0 Prop OR Rel LINK *-1 (N Nom) BARRIER REAL-V OR S-BOUNDARY)
;
#$ Mirhke voepth Læjsan.
#!! * __hab3__ ( @ADVL>) for asdf hab-actor and hab-case; if leat to the right, and Nom to the right of leat. Lots of restrictions.
MAP:hab3 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (0 )
(NEGATE 0 Sem/Group OR Pl - Rel LINK *-1 Indef - BUOT + Nom OR HUMAN + Nom BARRIER NOT-NPMOD-ACC)
(NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))
(NEGATE 0 (Sem/Ani_Group) LINK *1 Sem/Ani BARRIER (N Nom))
(NEGATE 0 (Sem/Group_Hum) LINK *1 Sem/Hum BARRIER (N Nom))
(NEGATE 0 N OR Pers OR Indef LINK *-1 HAB-ACTOR + HAB-CASE BARRIER NOT-NPMOD-ACC OR CC)(NEGATE -1 Num LINK -1 Num)
(NEGATE -1 Arab LINK 3 Arab)(NEGATE -1 Num OR HEADOFPARTS LINK 2 VFIN)
(NEGATE NOT 0 Prop OR Rel LINK *-1 (N Nom) BARRIER REAL-V OR S-BOUNDARY)
(NEGATE 1 Po OR COMMA OR N OR A OR @CNP OR PUNCT OR S-BOUNDARY)
(NEGATE *1 V BARRIER S-BOUNDARY OR COMMA)
(NEGATE -1 V)
(NEGATE 0 Pron LINK 1 Pron)
;
#$ Mirhke voepth Læjsan.
#$ Veanhta påajhkh eeremes lyjhkieh niejth mej guhkies tjaebpies voepth.
#$ Naan aejkien lij aaj govleme påajhkh lin gaskemes soptsestamme niejti bijre giej guhkies tjaebpies voepth jih stoerre njammah.
#!! * __hab3__ ( @ADVL>) for asdf hab-actor and hab-case; if leat to the right, and Nom to the right of leat. Lots of restrictions.
MAP:hab3 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr
(NEGATE 0 Sem/Group OR Pl - Rel LINK *-1 Indef - BUOT + Nom OR HUMAN + Nom BARRIER NOT-NPMOD-ACC)
#(NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN OR A + Nom BARRIER (N Nom))
(NEGATE 0 (Sem/Ani_Group) LINK *1 Sem/Ani BARRIER (N Nom))
(NEGATE 0 (Sem/Group_Hum) LINK *1 Sem/Hum BARRIER (N Nom))
(NEGATE 0 N OR Pers OR Indef LINK *-1 HAB-ACTOR + HAB-CASE BARRIER NOT-NPMOD-ACC OR CC OR COMMA)
(NEGATE -1 Num LINK -1 Num)
(NEGATE -1 Num LINK -1 Dem LINK -1 Num)
(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK *1 Nom BARRIER S-BOUNDARY)
(NEGATE -1 Arab LINK 3 Arab)(NEGATE -1 Num - Attr OR HEADOFPARTS LINK 2 VFIN)
(NEGATE NOT 0 Prop OR Rel LINK *-1 (N Nom) BARRIER REAL-V OR S-BOUNDARY)
;
#$ Máhtes lea beana.
#$ Dat islándalaččat, sis lea dakkár boallu man dat deaddilit ja de álgá bávkit dat vulkána.
#$ Dain lea dakkár boallu man dat deaddilit ja de álgá bávkit dat vulkána.
#% Sis lei unnán dahje ii makkárge oktavuohta earáiguin earretgo internáhtas orodettiin, vaikko máŋggas sis ledje fulkkežagat.
#% Juos gorreválggain Sámedikkis lea dárbbašlaš deavdit gáibádusa, ahte okta stivrralahtuin ja su sadjásašlahttu galgaba leat boazodoalu ovddasteaddjit, de galgá boazodoalu ovddasteddjiid loktet badjeliidda dan listtas, mii lea ožžon uhcimus jienaid daid listtaid gaskkas, mat galget ovddastuvvot ja main leat dakkár evttohasat.
#% Ealus leat eanaš álddut.
#% Dát čájeha ahte dárbu gielladoaimmaide sámi servodagas lea stuoris.
#% Skuvllas lea nu somá.
#!! * __hab3__ ( @ADVL>) for hab-actor and hab-case; if leat to the right, and Nom to the right of leat. Lots of restrictions.
MAP:hab3 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr
(NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))
(NEGATE 0 (Sem/Ani_Group) LINK *1 Sem/Ani BARRIER (N Nom))
(NEGATE 0 (Sem/Group_Hum) LINK *1 Sem/Hum BARRIER (N Nom))
(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK *1 Nom BARRIER S-BOUNDARY)
(-1 COMMA LINK -1 N + Nom OR N + Acc)
;
#$ Dat islándalaččat, dain lea dakkár boallu man dat deaddilit ja de álgá bávkit dat vulkána.
MAP:hab3 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (*1 N + Nom BARRIER NOT-NPMODADV LINK *1 ("❡") BARRIER REAL-V) ;
MAP:hab+com ( @ADVL>) TARGET Pers + HAB-CASE - Attr
(1 HUMAN + Com LINK *1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK *1 Nom BARRIER S-BOUNDARY)
;
#$ sudnos isidiin leat guokte máná
#!! * __hab_main__ ( @ADVL>) for hab-actor and hab-case; if leat to the right, and Nom to the right of leat. Lots of restrictions.
MAP:hab_main ( @ADVL>) TARGET Rel + HAB-CASE IF (*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK *1 Nom BARRIER S-BOUNDARY)(*-1 HAB-ACTOR + N BARRIER WORD) ;
#$ Danne lea mis stuorra bargamuššan oččodit eanet bargosajiid mat leat heivehuvvon nuoraide geain lea oahppu
#!! * __habInf__ hab lea inf
MAP:habInf ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE OR ("dat" Dem) + HAB-CASE - Attr (1 LEAT + Sg3 LINK 1 Inf) ;
#$ Mis lea cahkkehit dola.
#!! * __habNomLeft__ Nom or Num + gen hab lea
MAP:habNomLeft ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr ((-1 Nom LINK NEGATE *-1 (Pers Gen) BARRIER NOT-NPMOD) OR (-1 (Sg Gen) LINK -1 (Sg Num Nom) LINK NEGATE *-1 (Pers Gen) BARRIER NOT-NPMOD))(NEGATE -1 Num LINK -1 Num)(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK NEGATE 0 FAUXV LINK 1 FMAINV - COPULAS) (NEGATE -1 Arab LINK 3 Arab)(NEGATE -1 Num OR Coll OR HEADOFPARTS LINK 2 VFIN);
#$ Mii dus lea?
#% Ođđa jávkannjuolggadus skuvllas lea buoridan dan stuora jávkama Finnmárkkus.
#!! * __habAdvl__ Ii han ovttasge du sogas leat dat namma.
MAP:habAdvl ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(NEGATE 0 (Sem/Ani Sem/Group) LINK *1 Sem/Ani BARRIER (N Nom))(NEGATE 0 (Sem/Hum Sem/Group) LINK *1 Sem/Hum BARRIER (N Nom))((*1 HAB-CASE BARRIER NOT-NPMOD-ACC LINK *1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE OR COMMA) OR (*1 HAB-CASE BARRIER NOT-NPMODADV LINK *1 FAUXV BARRIER NOT-ADV-PCLE OR COMMA LINK *1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE))(NEGATE 1 Rel)(NEGATE 0 Gen LINK 1 Gen) ;
#$ Ii han ovttasge du sogas leat dat namma.
#Comment: "bealli" is probably not listed as HAB-ACTOR, even if it could mean "spouce".
#% Ávvir jearrá sámediggepresideanttas Aili Keskitalos movt lea dovdu go maŋemus tv-sárdni ođđajagi oktavuođas lea čađahuvvon presideantan.
#!! * __hab4__ hab cc hab leat
MAP:hab4 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE - Attr (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(1 CC LINK *1 HAB-ACTOR - Rel + HAB-CASE BARRIER NOT-NPMOD LINK *1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE);
#!! * __hab6__ lea go hab -- leago hab
MAP:hab6 ( @ @ @ADVL>) TARGET HAB-ACTOR + Ill IF (*-1 BOS BARRIER NOT-NPMODADV)(*1 COPULAS BARRIER NOT-ADV-PCLE LINK *1 A OR N BARRIER NOT-ADV-PCLE);
#$ Ellii šattai hoahppu.
#!! * __hab5__ This is not HAB Mánás gollot gieđat.
#MAP:hab5 ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(*1 HAB-V BARRIER NOT-ADV-PCLE LINK *1 Nom BARRIER VFIN);
#$ Mánás gollot gieđat.
#!! * __hab9__ prop ord-hab leat
MAP:hab9 ( @ADVL>) TARGET HAB-CASE IF (-1 FIRSTNAME)(0 Ord)(NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE);
#$ Heinrich njealjádis lea rikkis eamit.
#!! * __hab10__ prop ord-hab leat
MAP:hab10 ( @)) ;
#$ Dál leat sus 137 gáicca.
#$ De lea sihke divššohasas ja su lagamus oapmahaččas vuoigatvuohta oažžut dieđuid.
#$ Doppe leamaš sámiin stuora deaddu.
#!! * __habDain__ ( @ADVL>) for (Pron Dem Pl Loc) if leat followed by Nom to the right
MAP:habDain ( @ADVL>) TARGET (Pron Dem Pl Loc)(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE - FAUXV LINK 1 Nom)(NEGATE -1 Num OR Sem/Part)(NEGATE -1 (N Gen) LINK -1 Num) ;
#!! * __habDain2__
MAP:habDain2 ( @ADVL>) TARGET (Pron Dem Pl Loc)(-1 Nom LINK -1 (Pron Interr))(*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE - FAUXV LINK *1 Ess) ;
#$ Hui dávjá lea nu ahte dain leat olbmot, geat eai doarvái bures dovdda sámi kultuvrra eaige sin jurddašanvuogi.
#$ Makkár vuoigatvuođat dain leat Norgga riikavuložin?
#% Dat bulle ja goldne go dain ii leat ruohtas.
#Comment: hard to determin whether 'dain' is HAB or ADVL.
#!! * __habRel__ # before relative clause
MAP:habRel ( @ADVL>) TARGET HAB-ACTOR + HAB-CASE (NEGATE 0 HAB-ACTOR-NOT-HUMAN LINK *1 HUMAN BARRIER (N Nom))(*1 Rel BARRIER WORD LINK *1 FMAINV BARRIER S-BOUNDARY LINK *1 LEAT + HAB-V-TAGS BARRIER S-BOUNDARY OR MAIN-V);
#$ Divššohasas, gii dárbbaša guhkit áiggi ja oktiiheivehuvvon dearvvašvuođabálvalusaid, lea vuoigatvuohta oažžut ráhkaduvvot oktagaslaš plána.
#!! * __habEllipse__ Buot gánddain lea dreassa, nieiddain fas gákti.
MAP:habEllipse ( @ @ @ @ @ @ADVL>) TARGET Refl + HAB-CASE (*1 LEAT + HAB-V-TAGS BARRIER NOT-ADV-PCLE LINK *1 Nom);
#$ Son muitala alddiineaset leat sihke davvisámegielat, julevsámegielat ja dárogielat girječállit miellahttun.
LIST MEASR-N-SET = (N Sem/Measr) (N Sem/Money) (N Sem/Time) ;
SET MEASR-N = MEASR-N-SET - NOT-TIME ;
ADD:logo1 () TARGET Pers + Pl3 (0 Gen OR Acc LINK *-1 VFIN + Pl3 BARRIER VFIN) ;
MAP:pcle (@PCLE) TARGET Pcle ;
MAP:interj (@INTERJ) TARGET Interj ;
MAP:>P (@>P) TARGET Gen (1 Year_Date LINK 1 Sem/Time LINK 1C Po) ;
MAP:>P (@>P) TARGET Gen (1 Year_Date LINK 1C Po) ;
MAP:>P (@>P) TARGET Gen (1C Po) ;
MAP:>Pcoor (@>P) TARGET Gen (1 CC LINK *1 @>P BARRIER NOT-NPMOD) ;
MAP:>P (@>P) TARGET Gen - TIME-N (NEGATE -1 Pr)(1 Pr LINK 1 Gen) ;
#$ Sápmelaččat guđet orrot Norgga bealde Deanu, geavahit seammá gávtti go sápmelaččat Suoma bealde Deanu.
#$ Váldodoaimmaheaddjin jagi 2015 golggotmánu rájes lea Eilif Andreas Aslaksen.
MAP:>Pcoor (@>P) TARGET Gen (1 COMMA LINK *1 @>P BARRIER NOT-NPMOD) ;
MAP:p< (@P<) TARGET Acc + (*-1 Pr BARRIER NOT-NPMOD) ;
MAP:p< (@P<) TARGET Gen (*-1 Pr BARRIER NOT-NPMOD)(NEGATE 1 Gen)(NEGATE 0 ) ;
MAP:p))(*-1 NUM + Sg + Nom OR NUM + Sg + Acc OR ("máŋga") OR ("galle") BARRIER NOT-NPMOD OR Gen OR MEASUREADJS LINK NOT -1 JAHKI)(NEGATE 1 Sg + Gen LINK NOT 0 Sem/Time LINK NOT 1 N)(NEGATE 1 Gen LINK NOT 0 Sem/Time) ; #
#$ Juohke jagi konfirmerejuvvojit sullii 40 000 nuora Norgga girkus.
#$ Min ráhkis Ánne deavdá 10 jagi golggotmánu 10. beaivvi.
#% Sámi ofelaččat lea fálaldat, mas njeallje sámi nuora logaldallet sámiid birra.
MAP:num< (@Num<) TARGET (N Sg Gen)(*-1 NUM + Sg + Nom BARRIER NOT-NPMOD OR Gen OR MEASUREADJS LINK NOT -1 JAHKI)(1 Gen LINK 1 Po) ; #
MAP:num< (@Num<) TARGET (N Sg Gen)(-1 Attr LINK -1 NUM + Sg + Nom LINK NOT -1 JAHKI)(1 Gen + Sem/Plc) ; # #$ Mii fállat máŋga oahpu neahta bokte.
#$ 284 rabas lanja Norgga ráŋggáštusásahusain
MAP:num< (@Num<) TARGET (N Sg Gen)(-1 Gen LINK -1 Gen LINK *-1 NUM + Sg + Nom BARRIER NOT-NPMOD OR Gen OR MEASUREADJS LINK NOT -1 JAHKI)(NEGATE 1 Sg + Gen LINK NOT 0 Sem/Time LINK NOT 1 N)(NEGATE 1 Gen) ; #
#$ Dalle ledje guokte Guovdageainnu beale olbmo bajimusas.
MAP:num< (@Num<) TARGET (N Sg Gen)(-1 Gen - Sem/Time LINK *-1 NUM + Sg + Nom BARRIER NOT-NPMOD OR Gen OR MEASUREADJS LINK NOT -1 JAHKI)(NEGATE 1 Sg + Gen LINK NOT 0 Sem/Time LINK NOT 1 N)(NEGATE 1 Gen)(NEGATE 0 ("sápmi") LINK 1 Sem/Org)(NEGATE 1 N + ADVLCASE LINK -1 Sem/Plc LINK -1 Gen LINK -1 Attr LINK -1 NUM + Sg + Nom OR NUM + Sg + Acc LINK NOT -1 JAHKI) ; #
#$ Guokte suoma stáhtaborgára leaba sáddejuvvon Hammerfeastta buohccivissui, lohká operašuvdnajođiheaddji Bjørn Gunnar Johnsen.
#% Min ráhkis Ánne deavdá 10 jagi golggotmánu 10. beaivvi.
#% Árvala addit 5 miljovnna sámi mánáidgárddiide.
MAP:num< (@Num<) TARGET ("miljovdna")(-1 NUM + Sg + Nom LINK NOT -1 JAHKI)(1 ("sápmi") + Gen LINK 1 Sem/Org) ; #
#$ Árvala addit 5 miljovnna sámi mánáidgárddiide.
#!! * __nnSplitR (@>N) TARGET Cmp/SplitR ;
MAP:govus< (@N<) TARGET Arab (0 Nom OR Gen LINK -1 GOVUS) ;
#$ Dát sulastahttá govvosis 3 govviduvvon gurut beali dili.
MAP:>num (@>Num) TARGET DUSSE (1 Num) ;
MAP:>n (@>N) TARGET DUSSE (1 N) ;
MAP:>n (@>N) TARGET DUSSE (*1 N BARRIER NOT-NPMOD) ;
MAP:>a (@>A) TARGET DUSSE (1 A) ;
MAP:>n (@>N) TARGET ("eksámen") + Nom (1 ("vahkku") LINK 1 VFIN) ;
MAP:>nAttr (@>Num) TARGET Num - (Sg Nom) - (Sg Acc) (1 Num) ;
MAP:>nAttr (@>Num) TARGET Attr OR CURRENCY (1 Num) ;
MAP:>nAttr (@>Num) TARGET Attr (1 Dem LINK 1 Num) ;
MAP:>nAttr (@>A) TARGET Attr - Dem - Pron (*1 A - Attr OR Ord - Gen BARRIER NOT-NPMOD OR CC OR (N Gen) OR COMMA OR PUNCT) ;
MAP:>nAttr (@>A) TARGET ("juohke") (1 (A Ord)) ;
MAP:>nAttr (@>A) TARGET Num (1 Sem/Measr LINK 1 A) ;
MAP:>nAttr (@>N) TARGET Num (1 Sem/Measr LINK 1 N) ;
#$ Árktalaš parlamentáralaččaid konferánsa lágiduvvo juohke nuppi jagi.
#$ 24 mehter guhkkosaš dáidda čájehuvvo doppe.
MAP:>nAttr (@>A) TARGET (Indef Attr) (*1 A - Gen OR Ord - Gen BARRIER NOT-NPMOD OR CC OR (N Gen) OR COMMA OR PUNCT) ;
#$ Dattetge ii leat muitaluvvon makkárge namahan veara geavahanriiddu birra dálolaččaid ja boazodoalu gaskkas.
#!! * __>nAttr__ (@>N) for Attr; if there is a noun to your right
MAP:>nAttr (@>N) TARGET Attr (*1 N BARRIER Num OR A - Attr OR Pr OR Ord)(NOT 0 ("máŋga") OR ("galle")) ;
MAP:>nAttr (@>N) TARGET Ord + Ess (1 N + Ess OR Superl) ;
MAP:>nAttr (@>N) TARGET ("nubbi") + Ess (1 ("jođiheaddji")) ;
#% Ledjego hilbadat mánát?
#% Ja dalle livččii Vibeke Larsenii vejolaš sámegillii ovdanbuktit ođđajagisártnis.
#!! * __n>Indef__ (Pron Indef Attr); if eará is to the right
MAP:n>Indef (@>Pron) TARGET (Pron Indef Attr) (*1 ("eará") BARRIER NP-BOUNDARY OR Num OR A - Attr OR Pr OR Ord) ;
#$ Galgat go mii vuordit muhtun eará?
#% Dat berre leat oktasaš buot ovttaahkásaš mánáide Loabágis.
#Comment: should be expanded
#!! * __n>Indef__ (Pron Indef Com); if eará is to the right
MAP:n>Indef (@>N) TARGET Indef + Com (1 N + Com) ;
MAP:n>Indef (@>N) TARGET Indef + Nom (1 N + Nom) (0 ) ;
#!! * __>nNum__ (@>N) for numerals if; there is a noun to your right. You are not allowed to be (Sg Nom), (Sg Acc) or (Sem/Date)
MAP:>nNum (@>N) TARGET Num + (Sg Nom) - Year_Date (0 LINK *1 N BARRIER NOT-A OR MEASUREADJS OR Num) ;
MAP:>nNum (@>N) TARGET Num - (Sg Nom) - Year_Date OR ("moanat") OR ("máŋga") OR ("galle") (*1 N BARRIER NOT-A OR MEASUREADJS OR Num)(NOT 0 Loc OR Ill) ;
#$ Juos mearriduvvo meahcceeatnamiid nuppástuvvan geavaheapmi golmma ja dušše golmma stivrralahtu doarjagiin ja olles uhcitlohku vuođđudallá oainnus sámi kultuvrra, boazodoalu, meahcásteami, ealáhusdoaimmaheami ja servodateallima destii mii lea árvvoštallojuvvon Sámedikki válddahusaid vuođul, de sáhttá uhcitlohku ovtta oli stivrračoahkkima áigge gáibidit ášši Sámedikki gieđahallamii.
MAP:>n>sasj (@>A) TARGET Num (1 MEASUREADJS)(2 N);
MAP:>n (@>Num) TARGET Gen - Sem/Time (1 Num)(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po) ;
MAP:>n (@>Num) TARGET $$CASE (0 Dem OR OKTA OR ("buorre" A) LINK 1 $$CASE + Num)(NEGATE 0 Acc LINK 1 Num LINK 1 Sem/Time) ;
#MAP:>a (@>A) TARGET Gen - TIME-N (1 A)(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po) ;
MAP:>a (@>A) TARGET Gen - TIME-N (1 A)(NEGATE 1 Attr LINK *1 N BARRIER NOT-A-ADV)(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po) ;
#$
MAP:dihte (@n__ (@>N) for Gen; if there is a noun to your right. Restrictions: Not if you are: a time related word. Not if you are OKTA with Pl Loc to your right. Not if CC is to your right followed by another Gen and then Po. Not if you are HUMAN and to your right is Actio Nom folloed by a noun.
MAP:>nNoun (@>N) TARGET Gen - TIME-N - Year_Date (*1 N BARRIER NOT-NPMODADV OR A - Attr)(NEGATE 0 Gen-Sem/Route) ; #(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po)(NEGATE 0 HUMAN LINK 1 (Actio Nom) LINK 1 N) ;
#$ Miehtá čájáhuslanja lea lebbejuvvon plastihkkagovččas ja gávcci máná njuni ovddas lea čáhcemála.
#$ Gaskavahku eahkeda lei Kárášjoga kulturvisttis álbmotčoahkkin gosa ledje sullii 50 olbmo boahtán.
#$ Dan dihte ohcat guokte lassi stipendiáhttavirggi sámi/eamiálbmotguoskevaš dutkamiidda.
#$ Dalle sáhttá beaktilit háhkat guovtte ja maiddái golmmagielat (maiddái suomagielat) gelbbolašvuođa.
#$ Juos mearriduvvo meahcceeatnamiid nuppástuvvan geavaheapmi golmma ja dušše golmma stivrralahtu doarjagiin ja olles uhcitlohku vuođđudallá oainnus sámi kultuvrra, boazodoalu, meahcásteami, ealáhusdoaimmaheami ja servodateallima destii mii lea árvvoštallojuvvon Sámedikki válddahusaid vuođul, de sáhttá uhcitlohku ovtta oli stivrračoahkkima áigge gáibidit ášši Sámedikki gieđahallamii.
#$ Sámi ofelaččat lea fálaldat, mas njeallje sámi nuora logaldallet sámiid birra.
MAP:>nNoun (@>N) TARGET TIME-N + Gen OR Sem/Year (*1 N BARRIER WORD - Attr - Num LINK 0 Ess OR Acc)(*-1 ("nammadit") OR ("válljet") OR ("ohcat") OR ("jienastit") BARRIER SV-BOUNDARY) ;
MAP:>nNoun (@>N) TARGET Sem/Year OR TIME-N (*1 N BARRIER WORD - Attr LINK 0 Ill)(*-1 ("nammadit") OR ("válljet") OR ("ohcat") BARRIER SV-BOUNDARY) ;
#$ Nammat dán jagi sápmelačča.
#$ Ávvira lohkkit leat nammadan Jovsset Ánte Sara jagi 2017 sápmelažžan.
#$ Oza Sámi allaskuvlla giđa oahpuide.
MAP:>nNoun (@>N) TARGET Gen (*1 N BARRIER NOT-NPMODADV OR A - Attr LINK 0 Sem/State OR Sem/Event)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po)(NEGATE 0 HUMAN LINK 1 (Actio Nom) LINK 1 N) ;
MAP:>nNounTEST (@>N) TARGET Gen - Year_Date - Sem/Time (*1 N BARRIER NOT-Attr)(NEGATE 0 Gen-Sem/Route) ;
#$ Diehtu čavčča ođđa ohppiide dán skuvllas.
MAP:>nNounsemseter (@>N) TARGET Sem/Year OR Sem/Time - ("jahki") (1 (".*badji"r) OR ("giđđa") OR (".*horoskohpa"r) OR ("jahki")) ;
#$ 2018 giđđalohkanbaji oahpuid ohcanáigemearri lahkona.
#$ Loga 2018 jahkehoroskohpa.
LIST DATE = ("beaivi") ("b") ;
MAP:>nDate (@ADVL>) TARGET DATE + Gen (-1 (Arab))(1 Gen LINK 1 Po LINK *1 FMAINV BARRIER SV-BOUNDARY) ;
#!! * __>nTime__ (@>N) for Gen TIME-N; if timenoun to your right. Restrictions: Not if you are a OKTA Nom with Pl Loc to your right. Not if CC followed by Gen, followed by Po to your right. Not if COMMA to your right
MAP:>nTime (@>N) TARGET TIME-N + Gen (*1 TIME-N BARRIER NOT-NPMOD OR A OR CC)(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK *1 Gen BARRIER NOT-NPMOD LINK 1 Po OR NP-BOUNDARY)(NEGATE 0 Gen LINK 1 COMMA LINK NEGATE *1 CC LINK 1 Gen)(NEGATE 0 LINK 1 ) ;
#$ Mannan čuohtejagi gaskamuttus lei stuorra gilvu.
#$ Dat sáhttet leat ovttasbargošiehtadusat oanahis áigái, dahje oktasašdoallu muhtin áiggiid jagis, dahje vaikko miehtá jagi.
#% Juo cuoŋománu 10. beaivvi ija vuostá mátkkoštii Harald badjel ráji.
#% Akten biejjien njoktjen ...
MAP:>n (@>A) TARGET TIME-N + Gen (1 Ord LINK 1 TIME-N)(NEGATE 0 OKTA + Nom LINK *1 (N Pl Loc) BARRIER NOT-NPMOD)(NEGATE 0 Gen LINK 1 CC LINK 1 Gen LINK 1 Po) ;
MAP:>n (@>N) TARGET $$CASE (0 Dem OR Num + Acc OR OKTA OR ("buorre" A) OR ("gaajhkesh") OR ("gaajhke") LINK *1 $$CASE + N BARRIER NOT-NPMOD) ;
#$ Pluppe tjuara dam rovnegs tjoevkem vuartasjidh guktie buelieminie.
MAP:>nTimeGenPo (@>N) TARGET TIME-N + Gen (1 Gen LINK 1 Po) ;
MAP:>nTimeGenPoCoor (@>N) TARGET TIME-N + Gen (1 Gen LINK 1 CC LINK 1 Gen LINK 1 Po) ;
#$ Doppe mánát ohppet giela lunddolaččat árgabeaivvi bargguid ja stoahkama bokte.
MAP:>n (@>N) TARGET Num (0 LINK 1 N + Pl) ;
#!! * __>ntittel__ (@>N) for (Sg Nom TIME-N) or (Nom Der/NomAg); if to your right is Sem/Mal, Sem/Fem, Sem/Sur
MAP:>ntittel (@>N) TARGET TIME-N + Sg + Nom OR Sem/Hum + Sg + Nom OR Der/NomAg + Nom (1 Sem/Mal OR Sem/Fem OR Sem/Sur);
#$ Ávvir ii ožžon rektor Mats Steinfjella jearahallamii.
#$ Mii sávvat sutnje bures boahtin, rektor Gunvor Guttorm cealká.
#!! * __>nplc__ (@>N) for (Sg Nom Prop Sem/Plc), if to your right is Sem/Plc
MAP:>nplc (@>N) TARGET (Prop Sem/Plc Sg Nom) (1 Sem/Plc) ;
#$ Paul Fjellheim lea riegádan 1931:s, ja lea bajásšaddan Fjellheim báikkis.
#!! * __>nALU__ (@>N) for Sg Acc numerals; when a measure-noun to the right
MAP:>nALU (@>N) TARGET NUM + (Sg Acc) (*1 MEASR-N - (Sem/Time) BARRIER NOT-NPMODADV) ;
#$ Min viessu lea vihtta mehtara alu.
#% Máŋggas čuovvoledje, fertejedje vázzit guokte jagi vuosttaš luohkás.
#Comment: This works when all measure words get their Sem/Measure-tags.
MAP:>veara (@>A) TARGET Gen (1 ("veara" Nom)) ;
MAP:>nAttrCoor (@>N) TARGET Attr (1 CC LINK 1 @>N) ;
LIST PREGEN = "álggogeahčen" "beallemuttus" "beallemuddu" ("bealli" N Sg Loc) "gaskamuddu" "gaskkamuddu" ("gaskavuohta" N Sg Loc) "loahpageahčen" ("miella" N Sg Loc) "oktavuohta" "ovttasbargu" ;
#!! * __>NTime__ (@>N) for Gen; if you are TIME-N with BOC to your left, and PREGEN to your right
MAP:>NTime (@>N) TARGET Gen IF (*-1 BOC BARRIER Pr)(NEGATE -1 Num)(0 TIME-N)(1 PREGEN);
#$ Gursa bistá miessemánu beallemuddui.
LIST MII = "mii" "mij" ;
LIST GII = "guhti" "gii" ;
MAP:pron< (@Pron<) TARGET (Pl Acc) (-1 MII + Pron OR GII + Pron)((*1 ("?")) OR (1 VFIN)) ;
MAP:pron< (@Pron<) TARGET (Pl Acc) (-1 ("mihkkege" Pron) OR ("miige" Pron)) ;
MAP:pron< (@Pron<) TARGET (Sg Com) (0 HUMAN LINK -1 (Pers Du1) OR (Pers Du2) OR (Pers Du3)) ;
#$ Moai Birehiin barggašeimme mánáidgárddis.
MAP:pron< (@Pron<) TARGET (Sg Com) (0 Prop LINK 0 Sem/Mal OR Sem/Sur OR Sem/Fem LINK *-1 (Pers Du1) OR (Pers Du2) OR (Pers Du3) BARRIER WORD - Prop) ;
#$ Nystø mielas leaba soai Lene Hanseniin rievttes olbmot ovddastit sámi álbmoga dáhtu Tromssa ohcamušas.
MAP:pron< (@Pron<) TARGET (Pl Loc) (*-1 Indef - Attr BARRIER NOT-NPMOD) ;
MAP:pron< (@Pron<) TARGET (Indef Nom) OR Refl + Nom (-1 COPULAS + FMAINV LINK -1 (Pron Nom))(*1 Nom BARRIER NOT-A-ADV) ;
#$ Soai leaba goappašagat nu jallat.
#!! * __n<:Refl__ (@N<) for (Refl Nom); if to the left is (N Nom), or if first one to the left is a finite mainverb with a (N Nom) to the left
MAP:n<:Refl (@N<) TARGET Refl + Nom IF ((*-1 (N Nom) BARRIER NOT-ADV-PCLE) OR (-1 FMAINV LINK *-1 (N Nom) BARRIER SV-BOUNDARY OR Nom) OR (-1 FAUXV LINK *-1 (N Nom) BARRIER SV-BOUNDARY OR Nom))(NEGATE 1 Refl) ;
#$ Eadni dal ieš čohkká ommangáttis ja boraha uhca nieiddažis gean son doallá askkistis.
#$ Juohke bearaš fertii ieš omardit biepmuid, ja koahkkanieidda bargun lei vuoššat mállása.
#!! * __>pron1__ (@>Pron) for GRADE-ADV, DUSSE, BUOT if; first one to the right is Pron
#MAP:>pron1 (@>Pron) GRADE-ADV OR DUSSE OR BUOT (1 Pron) ; #Lene: ??
#$ Ja nugo olmmoš gohčodii guđege ealli, nu dat šattai navdojuvvot.
#!! * __>pron2__ (@>Pron) for (Refl Nom) if; first one to the right is Refl
MAP:>pron2 (@>Pron) TARGET Refl + Nom (1 Refl OR Pers) ;
#$ Sis lea nana árbevierru veahkehit ieš iežas persovnnalaš fierpmádagaid vehkiin.
#!! * __>pron3__ (@>Pron) for (Pron Recipr) if; first one to the right is (Pron Recipr)
MAP:>pron3 (@>Pron) TARGET (Pron Recipr) (1 (Pron Recipr)) ;
#$ Mánát iešguđege sogas internáhtas deaivvadedje ja ovttasbargodilálašvuođaid bokte várra lahkanedje guhtet guimmiideaset.
#!! * __vaikko__ (@>Pron) for vaikko if; first one to the right is Indef
MAP:vaikko (@>Pron) TARGET ("vaikko") (1 Indef) ;
#$ Dákkár stuora gávpogis olmmoš sáhttá bargat vaikko maid.
#!! * __vaikkoman__ (@>ADVL) for vaikko if; first one to the right is man
MAP:vaikkoman (@>ADVL) TARGET ("vaikko") (1 ("man" Adv)) ;
#$ Romssas, Davvi-Norgga stuorimus gávpogis, leat vaikko man ollu studeanttat.
#!! * __dasmaŋŋel__ (@>ADVL) for vaikko if; first one to the right is man
MAP:dasmaŋŋel (@>ADVL) TARGET Dem + Loc + Sg (1 ("maŋŋel" Adv)) ;
#$ ja das maŋŋil eará ge alit dási oahpuid.
#!! * __adv>advl__ (@>ADVL)
#MAP:adv>advl (@>ADVL) TARGET Adv (1 Ill OR Loc OR Com) ;
#$ Mii leat giellaprošeavttaide bidjan vuoruhemiid njuolga dáidda guovlluide ja gielaide.
#!! * __adv>advl__ (@>ADVL)
MAP:adv>advl (@>ADVL) TARGET (Sem/Measr_Time) (1 Adv + Sem/Time) ;
#$ Dievasčoahkkin galgá dán háve meannudit ášši mii šaddá láidestit min doaimmaid máŋga jagi ovddasguvlui.
MAP:>a (@>A) TARGET GRADE-ADV (*1 A BARRIER NOT-NPMOD) ;
MAP:>aSup (@>A) TARGET ("buot") (*1 Superl BARRIER NOT-NPMOD) ;
#$ Mun ja mu ustibat manaimet kinoi geahččat buot ođđaseamos Harry Potter-filmma.
MAP:>adv (@>ADVL) TARGET GRADE-ADV OR Attr (1 Adv) ;
#MAP:>adv (@>ADVL) TARGET Loc (1 ("eret" Adv)) ;
MAP:>adv (@>ADVL) TARGET Sem/Plc + Loc (1 CC LINK 1 Loc LINK 1 ("eret" Adv)) ;
MAP:>adv (@>ADVL) TARGET ("ovttas") OR ("ovttasráđiid") (1 Com) ;
MAP:>adv (@>N) TARGET GRADE-ADV (1 N) ;
MAP:>adv (@>N) TARGET GRADE-ADV (1 CC LINK 1 GRADE-ADV LINK 1 N) ;
MAP:pron< (@Pron<) TARGET $$CASE (0 Refl LINK *-1 $$CASE + Pers BARRIER S-BOUNDARY OR CC) ;
MAP:pron< (@N<) TARGET $$CASE (0 Refl LINK *-1 $$CASE + TIME-N BARRIER S-BOUNDARY OR CC) ;
#$ Sis lea alddiset ruhta.
#!! * __BOSvoc__ (@VOC) for HUMAN Nom; if sentence initial. To the right is comma. No nom-cased HUMAN followed by comma or CC is allowed to the right. There should not be a relative clause to the right, because then you are likely to be SUBJ
MAP:BOSvoc (@VOC) TARGET HUMAN + Nom IF (-1 BOS OR REAL-CLB)(1 COMMA LINK NEGATE *1 HUMAN + Nom BARRIER NOT-NPMOD LINK 1 COMMA OR CC)(NEGATE 2 Rel) ;
#$ Ustiban, in mun daga dutnje vearrut.
MAP:app) LINK -1 $$CASE + Pers)(1 VFIN) ;
#$ Ja moai boazodoalloáirasat áigguime vaikko guovttá joatkit barggu.
MAP:r290 (@APP-N<) TARGET (N Acc) - TIME-N IF (*-1 (N Acc) - @>N OR (A Acc) - @>N BARRIER APP-BOUNDARY OR CC OR (N Nom) LINK NEGATE *-1 COMMA BARRIER APP-BOUNDARY OR CC)(1 EOS) ;
## Dovddatgo Bienne Káre-Ánne, skuvlla bassi?
#$ Sámi áššiid stáhtačállin leat nammadan guovdageaidnulačča Anders J. Bals.
#% Dus lea vuoigatvuohta oažžut buori oahpahusa. # should not his this one
MAP:r291 (@APP-N<) TARGET (N Acc) - TIME-N IF (*-1 (N Acc) BARRIER APP-BOUNDARY OR CC OR (N Nom) LINK NEGATE *-1 COMMA BARRIER APP-BOUNDARY OR CC)(1 COMMA LINK 1 S-BOUNDARY) ;
MAP:nugoAppn< (@APP-N<) TARGET (N Acc) IF (*-1 ("nugo") OR ("sihke") BARRIER APP-BOUNDARY LINK -1 COMMA LINK -1 (N Acc) LINK *-1 BOS BARRIER NOT-NPMOD)(*1 COMMA BARRIER APP-BOUNDARY) ;
MAP:nugoAppn< (@APP-Pron<) TARGET (N Acc) IF (*-1 ("nugo") OR ("sihke") BARRIER APP-BOUNDARY LINK -1 COMMA LINK -1 (Pron Acc) LINK *-1 BOS BARRIER NOT-NPMOD)(*1 COMMA BARRIER APP-BOUNDARY) ;
#$ Muhtun sámi biktasiid, nugo gápmagiid ja vuoddagiid, sii geavahedje guhkit, gitta 1960-logu rádjai.
MAP:r292 (@APP-Pron<) TARGET (N Acc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR (N Nom) LINK -1 (Pron Acc) LINK NEGATE *-1 COMMA BARRIER APP-BOUNDARY OR CC)(1 EOS) ;
MAP:r293 (@APP-Pron<) TARGET (N Acc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR (N Nom) LINK -1 (Pron Acc) LINK NEGATE *-1 COMMA BARRIER APP-BOUNDARY OR CC)(1 COMMA LINK 1 S-BOUNDARY) ;
#$ Oidnet go Mihkkala, min nuoramus bártni?
#$ Mon oainnán fierpmi, su mearkka, ja dieđán ahte Spider-Man lea leamaš das.
MAP:r244 (@APP-ADVL<) TARGET N + LOC IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR ADVLCASE LINK -1 DOPPE)(1 EOS) ;
MAP:r245 (@APP-ADVL<) TARGET (N Ill) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 DOHKO LINK *-1 BOS BARRIER APP-BOUNDARY)(1 COMMA) ;
MAP:r246 (@APP-Pron<) TARGET (N Ill) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 DOHKO)(1 EOS) ;
MAP:r247 (@APP-Pron<) TARGET (N Ill) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 DOHKO)(1 COMMA LINK 1 S-BOUNDARY OR CC) ;
MAP:r248 (@APP-ADVL<) TARGET (N Gen) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 TIME-N OR TIME-ADV)(0 TIME-N + Gen)(1 EOS);
#$ Mun vuolggán ihttin, bearjadaga.
MAP:appAdvlAcc (@APP-ADVL<) TARGET (Num Acc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 TIME-N OR TIME-ADV)(1 TIME-N + Gen LINK 1 EOS);
#$ Doppe son orui guhká, vihtta jagi.
MAP:r249 (@APP-ADVL<) TARGET Pr IF (*-1 COMMA BARRIER NOT-ADV LINK -1 TIME-ADV OR TIME-N)(*1 (N Gen) OR (Pers Gen) BARRIER NOT-NPMOD LINK 1 EOS);
MAP:r250 (@APP-ADVL<) TARGET Pr IF (*-1 COMMA BARRIER NOT-ADV LINK -1 TIME-ADV OR TIME-N LINK -1 BOS)(*1 (N Gen) OR (Pers Gen) BARRIER APP-BOUNDARY OR CC LINK 1 COMMA);
#$ Dolin, ovdal soađi, olbmot lávejedje vuovdit joŋaid.
MAP:r251 (@APP-ADVL<) TARGET (Po) IF (-1 Gen LINK *-1 COMMA BARRIER NOT-ADV LINK -1 TIME-ADV OR TIME-N LINK -1 BOS)(1 COMMA);
MAP:r252 (@APP-ADVL<) TARGET (Po) IF (-1 Gen LINK *-1 COMMA BARRIER NOT-ADV LINK -1 TIME-ADV OR TIME-N)(1 EOS);
#$ Daid sii geavahedje guhkit, gitta 1960-logu rádjai.
SET NOT-NP = VFIN-NOT-NEG OR ConNeg OR Inf OR Pcle OR Interj OR CS ;
# Vocative - VOC
#!! * __voc__ (@VOC) for Nom HUMAN; if comma to the left and an second person verb or pronoun to the left. To the right is the end of the sentence
MAP:voc (@VOC) TARGET Nom IF (*-1 COMMA BARRIER NOT-NP OR CC LINK *-1 (V Sg2) OR (V Du2) OR (V Pl2) OR (Pron Sg2) OR (Pron Du2) OR (Pron Pl2) LINK NOT 0 LEAT)(1 EOS)(0 HUMAN)(NEGATE 0 Sg LINK *-1 V-SG3 BARRIER REAL-V);
#$ Vuoi du, Betsaida!
MAP:voc (@VOC) TARGET Nom IF (-1 Attr LINK *-1 COMMA BARRIER NOT-NP OR CC LINK *-1 (V Sg2) OR (V Du2) OR (V Pl2) OR (Pron Sg2) OR (Pron Du2) OR (Pron Pl2) LINK NOT 0 LEAT)(1 EOS)(0 HUMAN)(NEGATE 0 Sg LINK *-1 V-SG3 BARRIER REAL-V);
MAP:voc (@VOC) TARGET HUMAN + Nom IF (*-1 BOS BARRIER WORD - Interj)(NOT 0 Pron)(1 COMMA LINK *1 VFIN)(NEGATE 1 COMMA LINK 1 Rel LINK NEGATE *1 ("?"))(NEGATE 1 COMMA LINK *1 (N Nom) BARRIER NOT-NPMODADV LINK 1 CC LINK *1 (N Nom) BARRIER NOT-NPMODADV) ;
#$ - Áhčči, mii lea duot čáppa alit násti doppe guhkkelis?
#$ Áhččámet, don guhte leat almmis.
#% Ealgabivdojoavku, geain lea válla Suonjus, Guovdageainnu suohkanis, leat boazopolitiijat leamaš golbmii dárkkisteame.
#% Áhčči, Biret ja Máret leat ruovttus.
MAP:voc (@VOC) TARGET (N Nom) IF (*-1 COMMA BARRIER NP-BOUNDARY LINK *-1 ("boahtin" Nom) BARRIER REAL-V OR S-BOUNDARY LINK -1 ("bures"))(1 EOC);
## Bures boahtin Čáhppes Bearralii, Miss Turner!
MAP:voc (@VOC) TARGET Nom IF (-1 COMMA)(0 Pers)(0 Sg2 OR Du2 Or Pl2) (*1 Nom BARRIER NOT-NPMOD LINK 1 EOS);
## Gáidet eret mu luhtte, dii verrošeaddjit!
MAP:voc (@VOC) TARGET (N Nom) IF (-2 BOS)(-1 (Imprt Sg2))(NEGATE -1 Adv OR Qst)(1 EOS);
## Gula eadni!
MAP:voc (@VOC) TARGET (N Nom) IF (-3 BOS)(-2 (Imprt Sg2) OR (Sg2 Qst))(NEGATE -2 Nom) (-1 COMMA)(1 COMMA);
## Buvttes, Máhtte, goikemuoraid!
MAP:voc (@VOC) TARGET (N Nom) IF (-4 BOS)(-3 (V Sg2))(-2 go)(-1 COMMA)(1 COMMA);
## It go, bártnážan, boađáše fargga ruoktot?
#MAP:voc (@VOC) TARGET (N Nom) IF (*-1 BOS BARRIER NOT-ADV-PCLE)(0 HUMAN LINK 1 EOS);
#$ Ustibažžan! @HNOUN
MAP:r294 (@APP-N<) TARGET (N Loc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR ADVLCASE LINK -1 (N Loc))(1 EOS) ;
MAP:r295 (@APP-N<) TARGET (N Loc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR ADVLCASE LINK -1 (N Loc))(1 COMMA LINK 1 S-BOUNDARY OR Adv) ;
MAP:r296 (@APP-Pron<) TARGET (N Loc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR ADVLCASE LINK -1 (Pron Loc))(1 EOS) ;
MAP:r297 (@APP-Pron<) TARGET (N Loc) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC OR ADVLCASE LINK -1 (Pron Loc))(1 COMMA LINK 1 S-BOUNDARY OR Adv) ;
#$ Ánde orru Oslos, Norgga oaivegávpogis.
MAP:r298 (@APP-N<) TARGET (N Ill) IF (*-1 COMMA BARRIER APP-BOUNDARY OR CC LINK -1 (N Ill))(1 EOS) ;
MAP:App-N) TARGET Nom (*-1 BOS BARRIER WORD)(1 (":")) ;
#MAP (@ (@SUBJ>) TARGET (Rel Nom) IF (*1 FMAINV) ;
#$ Go dat geažit mat geaigut leaba bajás, gohčoduvvoba spahká-oaivin.
#!! * __Particle BARRIER WORD - Neg)(NEGATE *1 TRANS-V + FMAINV BARRIER SV-BOUNDARY OR COMMA) ;
#$ Mánát leat oažžulat guliid.
#$ Dain lea fáktemuš juohke balvva.
#% Divššohasas lea vuoigatvuohta iežas journála geahččat
SET NOT-EXT-NOT-TIME = A OR Pers OR Dem OR Rel OR ("dálki") OR OKTA OR Actio OR Sem/Year OR Prop OR Sem/Time-clock OR Refl ;
SET NOT-EXT = TIME-N OR NOT-EXT-NOT-TIME ;
LIST A-EXT = "riekta" "vejolaš" ;
#!! * __Hab @ @ OR HUMAN + HAB-CASE BARRIER SV-BOUNDARY LINK NEGATE -1 Num OR HEADOFPARTS) OR (*-1 Ill OR @Pron< OR Po BARRIER NOT-NPMOD OR COMMA LINK *-1 LEAT + FMAINV + HAB-V-TAGS BARRIER NOT-NPMODADV LINK *-1 BARRIER SV-BOUNDARY)) ;
#$ Sus lea alddis buorit attáldagat.
#$ Mov leah golme aath mejtie sijhtem dihte mov geelle edtja åestedh.
#% Jus lea eahpečielggas, man dási máhttu ohccis lea, de Sámi allaskuvla lágida ohccái giellageahččaleami.
MAP:Hab @ BARRIER SV-BOUNDARY LINK NEGATE -1 Num OR HEADOFPARTS) OR (*-1 BARRIER SV-BOUNDARY LINK NEGATE -1 Num OR HEADOFPARTS))(0 ) ;
#$ Læjsa utnieji sov dan gamte haermieh.
#!! * __Hab @ @ LINK *-1 COMMA LINK *-1 LEAT + FMAINV + HAB-V-TAGS BARRIER NOT-NPMODADV LINK *-1 OR HUMAN + HAB-CASE BARRIER SV-BOUNDARY) ;
#$ Dus lea, nu mo buot eará bargiin, vuoigatvuohta oahpposoahpamuša lassin maiddái čálalaš bargosoahpamuššii oahppofitnodagain.
#!! * __Hab>Advlcase @.
MAP:Hab>Advlcase @ BARRIER WORD - Neg) ;
#$ Sus lea álgovuorus dušše guohtunvuoigatvuohta dáidda.
#$ Boazosápmelaččain ii leat bassin vejolaš fievrridit gálvvu gerresiiguin.
#!! * __Nom>Advlcase @ @Advlcase @ @ @ @ @) ;
#$ Dah vååjnien öövre goh stoerre gåetieh, gusnie oksh jïh klaash.
#% Gosse datne edtjh gaaltijh nuhtjedh, tjoerh daejredh gusnie gaaltijh gaavnh jïh guktie edtjh gaaltijidie reaktoelaakan nuhtjedh.
#!! * __ @ @ BARRIER SV-BOUNDARY OR Nom LINK NEGATE *-1 Nom BARRIER NOT-NPMODADV) OR (*-1 Ill OR @Pron< BARRIER NOT-NPMOD LINK *-1 LEAT + FMAINV + Sg3 BARRIER NOT-NPMODADV LINK *-1 DOPPE OR (Sem/Plc Loc) OR Ill OR Sem/Time OR TIME-ADVL OR Po OR BARRIER SV-BOUNDARY OR Nom))(NEGATE *1 Nom OR Ess BARRIER NOT-NPMOD OR CC OR COMMA)(NEGATE *1 ("ahte") OR go OR Inf BARRIER SV-BOUNDARY) ;
#$
#!! * __ @ @ @ @ @ @ @ @ OR DOPPE OR (Sem/Plc Loc) OR (Sem/Time Adv) OR TIME-N + Gen OR TIME-ADVL OR Po BARRIER NOT-NPMODADV LINK *-1 Qst BARRIER NOT-NPMOD LINK -1 LEAT + HAB-V-TAGS) OR (*-1 OR DOPPE OR (Sem/Plc Loc) OR (Sem/Time Adv) OR TIME-N + Gen OR TIME-ADVL OR Po BARRIER NOT-NPMODADV LINK *-1 Qst + LEAT + HAB-V-TAGS))(NEGATE *1 HUMAN OR Loc OR Sem/Plc BARRIER NOT-NPMOD OR CC OR COMMA)(NEGATE *1 @+FMAINV OR @-FMAINV BARRIER SV-BOUNDARY) ;
#$ Lea go dus ruhta?
#$ Leažžá go Máhtes ođđa beana gal?
#$ Dalle mun ferten iskat lea go dus feber, ja mihtidit dus varradeattu.
#% Lea go Sámedikki mielas Microsoft duođaid ánssášan vel oktii nuvttá máidnosa, mii ii leat duohta ge?
#!! * __ @ @__ ( @SUBJ>) for Nom; if habitive first one to the left, followed by copulas.
MAP:extQst3> ( @SUBJ>) TARGET Nom IF (1 LINK 1 COPULAS)(NEGATE 1 Rel)(NEGATE 1 LINK 1 COPULAS LINK 1 FMAINV) ;
#$ Mii dus lea?
#$ Man uhccán osku dus lea!
#$ Sii muitalit oahpaheaddjái makkár barggut sis leat siiddas.
#% Sis lei unnán dahje ii makkárge oktavuohta earáiguin earretgo internáhtas orodettiin, vaikko máŋggas sis ledje fulkkežagat.
#!! * __extQst3>__ ( @SUBJ>) for Nom; if habitive first one to the left, followed by copulas.
MAP:extQst3> ( @SUBJ>) TARGET Nom IF (1 + ) ;
#$ Mirhke voepth Læjsan.
#!! * __ @ @ BARRIER WORD)(NEGATE 1 REAL-V) ;
#$ Eai lean boraspiret, eai ealggat, eaige nu ollu bohccot dain duovdagiin go dál.
#!! * Sem/Year
MAP:Year (@N<) TARGET (Sem/Year Nom) (-1 (Sem/Sur Nom)) ;
MAP:Year (@N<) TARGET (Sem/Year Nom) (-1 COMMA LINK *-1 (Sem/Sur Nom) BARRIER WORD - Num + Nom ) ;
MAP:Year (@Num<) TARGET Num + Nom (*-1 (":") BARRIER WORD - Num LINK -1 (Sem/Year Nom) LINK *-1 (Sem/Sur Nom) BARRIER WORD - Num + Nom ) ;
MAP:Sur (@);
#!! * __spredEss>__ (@SPRED>) for N Ess; if copulas to the right of you, and if an NP with nom-case first one to your left.
MAP:spredEss>COP (@SPRED>) TARGET (N Ess) IF (*1 COPULAS BARRIER SV-BOUNDARY)(-1 NP-HEAD-NOM);
#$ Sápmelaččaid historjá álbmogin lea duháhiid jagiid boaris, muhto dálá ássanguovlluin sápmelaččat eai leat ássan nu guhká.
#!! * __GalleSpred>__ (@SPRED>) for Num Nom; if sentence initial
MAP:Gallespred> (@SPRED>) TARGET ("galle" Num Nom) IF (*-1 BOS BARRIER NOT-ADV) ;
#!! * __spredSgMII>__ (@SPRED>)
MAP:spredSgMII> (@SPRED>) TARGET MII + (Sg Nom) IF (*1 (Sg Nom) BARRIER NOT-NPMOD LINK 1 COPULAS) ;
#!! * __spredšaddat>__ (@SPRED>)
MAP:spredSgMII> (@SPRED>) TARGET Ess IF (1 ("šaddat") + FMAINV) ;
#!! * __spredsjidtedh>__ (@SPRED>)
MAP:spredMII> (@SPRED>) TARGET Ess OR (A Nom) IF (1 ("sjïdtedh")) ;
#!! * __r492>__ (@SPRED>) for Interr Gen; consisting only of negations. You are not allowed to be MII. You are not allowed to have an adjective or noun to yor right. You are not allowed to have a verb to your right; the exception beeing an aux.
MAP:r492 (@SPRED>) TARGET (Interr Gen) IF (NEGATE 0 MII)(NEGATE *1 A OR N BARRIER NOT-NPMOD) (NEGATE *1 V - FAUXV BARRIER S-BOUNDARY);
#Commet: Not in use?
MAP:spredSg> (@SPRED>) TARGET (Sg Nom) IF (1 (Sg Nom) OR SGPRON + Nom OR (Indef Nom) LINK 1 COPULAS) ;
#$ Mii mun lean?
#!! * __AdjSpredSg>__ (@SPRED>) for A Sg Nom; if copulas to the right, but not if A or @ (@SPRED>) TARGET (A Sg Nom) IF (*1 COPULAS + FMAINV BARRIER SV-BOUNDARY OR COMMA OR CC LINK NEGATE *1 A OR @ (@SPRED>) TARGET (A Sg Nom) IF (1 Ill LINK *1 Inf)(*-1 BOS BARRIER NOT-ADV)(0 );
#$ Buerebe Læjsese guvvieh darjodh.
MAP:spredPl> (@SPRED>) TARGET (Pl Nom) IF (1 (Pl Nom) OR PLPRON + Nom OR DUPRON + Nom LINK 1 COPULAS) ;
MAP:spred>Coor (@SPRED>) TARGET Nom - Rel IF (1 CC OR COMMA LINK *1 @SPRED> BARRIER NOT-NPMOD)(NEGATE 1 VFIN) ;
#$ Gosse daejtie vuejniejibie, dellie daejriejibie daelvie guhkies jïh tjåetskemes sjædta.
MAP:SubjInf__ (@SPRED>) for Nom; if copulas to the right, and the subject of copulas is an Inf to the right
MAP:spred>SubjInf (@SPRED>) TARGET Nom - OKTA IF (*1 COPULAS + FMAINV BARRIER SV-BOUNDARY OR COMMA)(*2 @Pers (@SUBJ>) TARGET $$PERS-TAGS + Nom IF ((*1 $$PERS-TAGS + VFIN BARRIER SV-BOUNDARY OR N - ADVLCASE) OR (1 (Sg Com) LINK *1 $$PERS-TAGS + VFIN BARRIER SV-BOUNDARY OR N - ADVLCASE) OR (*1 Refl BARRIER NOT-ADV-PCLE LINK *1 $$PERS-TAGS + VFIN BARRIER NOT-ADV-PCLE)) ;
#$ Moai Birehiin barggašeimme mánáidgárddis.
MAP:subj>Pers (@SUBJ>) TARGET (Sg1 Nom) (-1 CC LINK *2 (V Pl1) BARRIER NOT-ADV-PCLE) ;
MAP:subj>Pers (@SUBJ>) TARGET (Sg1 Nom) (1 CC LINK *1 (N Pl) BARRIER NOT-NPMOD LINK *1 (V Pl1) BARRIER NOT-ADV-PCLE) ;
#MAP:subj>Pers (@SUBJ>) TARGET (Sg1 Nom) (-1 CC LINK *2 (V Pl1) BARRIER NOT-ADV-PCLE) ;
#$ Mii du namma lea?
#$ Gii ..
#% Lea go son Máret boahtán?
LIST OASSI = "bealli" "oassi" "kapihtal" "paragráfa" "proseanta" ;
MAP:n< (@N<) TARGET Loc - Rel (*-1 OASSI BARRIER NOT-NPMOD OR LEFT) ;
#$ Dat lea oassin giellaprográmmas.
#$ Go guorahallat guovttegielat olbmuid giellageavaheami, de okta dehálaš oassi olbmo gielalaš resurssain lea čálamáhttu
MAP:n< (@Num<) TARGET Loc - Rel (-1 Num + Nom OR LEFT)(0 Pron OR N + Pl) ;
#$ son lea okta sis gii lea čalmmustahttán ášši
#% Silje lea náittosdilis leamaš 20 jagi ja sudnos isidiin leat guokte máná.
MAP:n< (@N<) TARGET Loc (-1 Coll + Nom)(0 Dem OR Pers) ;
#$ Golmmas dain leat ge gulahallanoahpaheaddjit
MAP:n< (@N<) TARGET Arab (-1 ("kapihtal") OR ("paragráfa")) ;
#$ Luonddumáŋggabealatvuođalága paragráfa 15 mielde ii leat lohpi lottibeasi bilidit man dat lea juo álgán ráhkadit.
MAP:Sgnr1__ (@SUBJ>) for Nom Sg, including Indef Nom if; VFIN + Sg3 or Pl3 to the right (VFIN not allowed to the left)
#MAP:subj>cs ( @SUBJ>) TARGET Interr + Nom IF (*1 VFIN + Sg3 OR VFIN + Pl3 BARRIER REAL-V OR S-BOUNDARY)(NEGATE *-1 VFIN + Sg3 BARRIER NOT-ADV-PCLE)(*-1 VFIN) ;
MAP:subj>Sgnr1 (@SUBJ>) TARGET (Nom Sg) OR (Sg3 Nom) OR (Indef Nom) IF (*1 VFIN + Sg3 OR VFIN + Pl3 BARRIER REAL-V OR S-BOUNDARY)(NEGATE *-1 VFIN + Sg3 BARRIER NOT-ADV-PCLE)(NEGATE 0 Arab LINK -1 OASSI) ;
#$ Niibi lea stális.
#$ Girji lea Máreha.
#% #$ Luonddumáŋggabealatvuođalága paragráfa 15 mielde ii leat lohpi lottibeasi bilidit man dat lea juo álgán ráhkadit.
#!! * __subj>Du__ (@SUBJ>) for dual nominatives, including Coll Nom. VFIN + Du3 to the right.
MAP:subj>Du (@SUBJ>) TARGET (Coll Nom) IF (*1 VFIN + Du3 BARRIER REAL-V OR S-BOUNDARY) ;
#!! * __subj>Pl__ (@SUBJ>) for plural nominatives, including Coll and Sem/Group. VFIN + Pl3 to the right.
#!! * __subj>Pl__ (@SUBJ>) for plural nominatives
MAP:subj>Pl (@SUBJ>) TARGET (Nom Pl) OR (Pl3 Nom) OR (Sem/Group Nom) OR (Coll Nom) IF (*1 VFIN + Pl3 BARRIER REAL-V OR S-BOUNDARY) ;
#$
#!! * __subj>Sg__ (@SUBJ>) for Nom Sg; if VFIN + Sg3 to the right.
MAP:subj>Sg (@SUBJ>) TARGET (Nom Sg) IF (*1 VFIN + Sg3 BARRIER REAL-V OR S-BOUNDARY OR COMMA);
#$ Nuba áddjá árvala ahte eiseválddit galggaše bálkáhit baicce vuorrolohkkiid, vai rehkenasto vuorruid mearri maiddái, iige dušše dat mearri guliin mii goddo deanus.
#!! * __Sg BARRIER BOC) ;
#$ Vuovssá goddá boanda.
#$ Sin mielas lei dát hui givssálaš.
#% Oppalaš hábmema strategiija mii galgá váikkuhit dasa ahte servodat šaddá buohkaide olahahttin, ja dasa ahte vealaheapmi eastaduvvo, lea maid deattuhuvvon.
#!! * __DuCoor1 (@SUBJ>) TARGET Nom IF (1 CC LINK *1 Nom BARRIER NOT-NPMOD LINK *1 VFIN + Pl3 OR VFIN + Du3 BARRIER NOT-ADV-PCLE) ;
MAP:subjCoorTEST (@SUBJ>) TARGET Nom IF ((1 CC OR COMMA LINK *1 @SUBJ> - Rel BARRIER NOT-NPMOD) OR (*-1 CC BARRIER NOT-NPMOD OR CC LINK -1 @SUBJ>)) ;
MAP:subjCoorTEST (@) TARGET Nom IF ((1 CC OR COMMA LINK *1 @SUBJ> - Rel BARRIER NOT-NPMOD) OR (*-1 CC BARRIER NOT-NPMOD OR CC LINK -1 @SUBJ>)) ;
MAP:subjCoorTEST (@Num (@SUBJ>) TARGET Num + Nom (*1 (N Sg Gen) BARRIER NOT-A LINK *1 VFIN + Pl3 BARRIER NOT-ADV-PCLE) ;
MAP:Coor2 (@SUBJ>) TARGET Nom (*-1 CC BARRIER NOT-NPMOD LINK -1 @SUBJ>)(*1 VFIN + Pl3 OR VFIN + Du3 BARRIER NOT-ADV-PCLE) ;
#MAP:Coor3 (@SUBJ>) TARGET Nom IF (1 CC OR COMMA LINK *1 @SUBJ> - Rel BARRIER NOT-NPMOD) ;
#MAP:subj>Coor4 (@SUBJ>) TARGET Nom IF (1 CC OR COMMA LINK *1 @SUBJ> - Rel BARRIER NOT-NPMOD) ;
#MAP:subj>Coor5 (@SUBJ>) TARGET Nom IF (*-1 CC OR COMMA BARRIER NOT-NPMOD LINK *-1 @SUBJ> - Rel BARRIER NOT-NPMOD) ;
MAP:subj>Rel (@SUBJ>) TARGET (Nom Pl) OR (Nom Pl3) IF (1 Rel LINK *1 FMAINV LINK *1 VFIN + Pl3) ;
#$ Dat mat sáhttet háhkkojuvvot, leat ovdalis juo namuhuvvon.
MAP:subj>App (@SUBJ>) TARGET Nom IF (1 COMMA LINK **1 @APP-N< OR @APP-Pron< LINK 1 COMMA LINK 1 VFIN) ;
MAP:subj>Rel (@SUBJ>) TARGET (N Nom) OR (Pron Nom) OR (A Nom) IF (*1 Rel BARRIER WORD LINK *1 FMAINV LINK *1 VFIN + Sg3 OR VFIN + Pl3)(NEGATE 0 Pl + LINK *-1 TV BARRIER NOT-NPMOD) ;
#$ ”miehtjeste lean åådtjeme {daeverh} mejgujmie lean maahteme åesiestidh”, Eajsa buerkeste.
MAP:subj>App (@SUBJ>) TARGET (N Nom) OR (Pron Nom) (1 COMMA LINK *1 @APP-N< OR @APP-Pron< BARRIER NOT-NPMOD LINK *1 FMAINV) ;
#$ Jovsset, su irgi, gii lei rehálaš olmmái ii ge hálidan heahppašuhttit su, áiggui earránit sus suoli.
# Rules for complements
#MAP:n< (@N<) TARGET N + Loc OR Pron + Loc (*-1 (N @SUBJ>) BARRIER NOT-NPMODADV)(1 VFIN)(0 HUMAN) ; #OBS, for generell, la foreløpig til 0 HUMAN
MAP:n< (@N<) TARGET N + Loc OR Pron + Loc (-1 @>N LINK -1 ADVLCASE LINK -1 N + @SUBJ>)(1 VFIN)(0 HUMAN) ; #OBS, for generell, la foreløpig til 0 HUMAN
MAP:n< (@N<) TARGET N + Loc OR Pron + Loc (-1 N + Gen LINK -1 NUM - Sem/Year)(1 VFIN) ;
MAP:n< (@Pron<) TARGET N + Loc OR Pron + Loc (-1 Pron + @SUBJ>)(1 VFIN) ;
MAP:Pron< (@Pron<) TARGET (N Loc) - TIME-N (*-1 (Pron @SUBJ>) BARRIER NOT-ADV - COMMA LINK NOT 0 Rel) (*1 VFIN BARRIER NOT-ADV-PCLE - COMMA) ;
MAP:Pron< (@Pron<) TARGET Pers + Loc (*-1 Pron + Nom BARRIER NOT-ADV - COMMA LINK NOT 0 Rel) ((*1 VFIN BARRIER NOT-ADV-PCLE - COMMA) OR (1 Rel)) ;
#$ Nu guhká go mii, opposišuvnnas, eat čohkká beaivválaččat daiguin dokumeanttaiguin, de lea bahá vajáldahttit.
#$ Bealli oahpahalliin leat nieiddat.
#$ Almmuhusat neahtas eai leat doarvái.
#$ Sullii okta goalmmátoassi dutkamuššii searvan ohppiin bohtet Norggas.
#% Nrk hoavda lohká ahte sámegielmáhttu Nrk Sámi direktevrras lea okta dain váldoeavttuin
#$ Ollugat sis dorjot sosialdemokráhtalaš bellodaga ásaheami.
#MAP:n< (@N<) TARGET (N Loc)(-1 (N Nom) LINK *-1 FMAINV BARRIER SV-BOUNDARY) ;
MAP:n< (@N<) TARGET N + Sg + Loc (-1 Num LINK -1 (Coll @SUBJ>))(1 VFIN) ;
#$ Gávccis logi politiijas háliidit guoddit vearjju bissovaččat.
MAP:num< (@Num<) TARGET (Pl Loc) OR Sem/Group + Loc OR Pers + Pl3 (**-1 Pron + Gen OR Pron + Loc OR A + Attr BARRIER NOT-Attr LINK -1 OKTA) ;
MAP:num< (@Pron<) TARGET (Pl Loc) OR Sem/Group + Loc OR Pers + Pl3 (*-1 SOAMES + Pl BARRIER NOT-NPMOD) ;
#$ Dat lea okta min buoremus girjjiin.
#$ Sámegiella lea okta dain dehálaš vuođđogeđggiin.
#$ Soapmásat sis soitet guođđit Bargiidbellodaga go leat suhttan.
MAP:num< (@Num<) TARGET (Sg Loc) (*-1 Num BARRIER NOT-A OR RIGHT LINK NOT 0 ("miljovdna") LINK *-1 OKTA OR Num OR Coll BARRIER NOT-NPMOD) ;
#$ Gáiddusoahpahus lea okta máŋgga molssaeavttus.
#$ Gávcci logi politiijas háliidit guoddit vearjju bissovaččat.
#$ Vaikke šleđggongeavaheapmi lassána, de leat áin dušše njealjis logi olbmos geat geavahit šleđggona.
#% Dán sámegiel tearpma lean viežžan Helandera (2012: 66) artihkkalis, mas son guorahallá guovttegielat oahpahusa
#% Kárášjohka lea ožžon 295 miljovnna Sámedikkis.
MAP:num< (@Num<) TARGET (Sg Loc) (*-1 Ord BARRIER NOT-Attr LINK -1 ("juohke") LINK -1 Num) ;
#$ Okta juohke goalmmát norgalaččas lea ollásit boahkuhuvvon.
MAP:r253 (@Num<) TARGET (Sg Gen) IF (*-1 NUM BARRIER N OR MEASUREADJS OR REAL-CLB OR PUNCT LINK 0 Nom OR Acc LINK NOT 0 Ord)(NEGATE 0 Num)(NEGATE 1 A OR N)(NEGATE -1 COMMA);
#$ Mun vuiten 50 ru.
LIST VEL = ("vel" ) ;
MAP:HNOUNn< (@Num<) TARGET VEL (-1 Num) ;
#$ Mun áiggun ovtta vel
MAP:>ADVL (@>ADVL) TARGET VEL (1 Comp OR (Gram/Comp)) ;
#$ Jus guovddášsámi politihkkáriid áirraslohku unnu vel eambbo, de massá Sámediggi legitimitehta.
#!! * __-fsubj>__ (@-FSUBJ>) for HUMAN Gen; in a NP-clause. To your right is Actio Nom followed by a noun
MAP:-fsubj> (@-FSUBJ>) TARGET HUMAN + Gen (1 (Actio Nom) LINK 1 N) ;
#$ Máreha čállin teavsttat ledje buoremusat.
# Adverbials - ADVL
LIST MOVE-VERBS-sme = "báhcit" "beassat" "boahtit" "čuoigat" "fárret" "fierrat" "gahččat" "girdit" "johtit" "sihkkelastit" "sirdit" "vázzát" "vázzit" "viehkat" "viehkalit" "vuodjit" "vuojehit" "vuolgit" "vuolggahit" ;
LIST ELA-VERBS-NOT-PLC-sme = "árbet" "bálkestit" "báidnit" "beassat" "čiehkádit" "čoaggit" "čohkket" "diŋgot" "duvdit" "earránit" "fuollat" "gáibidit" "geassádit" "goaikut" "jearrat" "jorgalit" "logaldallat" "nákkáhallat" "njammat" "njoammut" "oastit" "oažžut" "rivvet" "sierranit" "suoladit" "suorggidit" "váldit" "válljet" "vuovdit" ;
LIST OTH-ELA-VERBS-sme = "ballat" "beroštit" "muitalit" "váldit" "viežžat" ;
SET ELA-VERBS-sme = MOVE-VERBS-sme OR OTH-ELA-VERBS-sme OR ELA-VERBS-NOT-PLC-sme ;
LIST INE-VERBS-sme = "ássat" "buolvvastallat" "buolvvastit" "čálašit" "čippostallat" "čohkahit" "čohkkát" "čuččodit" "čuožžut" "čállit" "eallit" "geahččat" "goddot" "gohččát" "gullát" "leat" "lahkonit" "morihit" "morránit" "oađđit" "oidnot" "orodit" "orrut" "stuorrut" "veallahit" "veallát" ;
LIST ELA-TRIGGER-NOUNS-sme = "ávki" "boađus" "dearvuohta" "dearvvuohta" "doarjja" "permišuvdna" "sáhka" "sirdin" "suorggádus" "suorggideapmi" "váikkuhus" ;
LIST INE-TRIGGER-NOUNS-sme = "atnu" "fuolahus" "gárrenvuohta" "heahti" "leaktu" "oktavuohta" ;
LIST ALWAYS-ELA-sme = "diimmáš" ;
LIST NOT-ELA-INE-PO-sme = "searvái" ;
MAP:>cc (@>CC) TARGET ("sihke")(*1 ("ja") OR ("ahte")) ;
MAP:>cc (@>CC) TARGET ("juogo" Adv) OR ("jogo" Adv) (*1 ("dahje") BARRIER S-BOUNDARY) ;
MAP:advl>cs (@ADVL>CS) TARGET ("beare" Adv) (1 CS LINK *1 FMAINV) ;
#$ Muhto dus ii leat riekti dearpat su beare danin go sáhtát.
LIST ADVLCASEAdv = Adv Ill Com Loc Po Pr Ine Ela ;
LIST NOT-INE-ELA = "mielde" "ovdan" ;
SET ADVL-INE-ELA = Ela OR Loc OR Po OR Pr OR Ine OR Adv - NOT-INE-ELA ;
MAP:advl< (@ADVL<) TARGET (N Sg Loc) IF (-1 ("oktii") OR ("guktii") OR ("golbmii") OR ("njelljii") OR ("vihttii") OR ("geardde"))(0 TIME-N);
#$ Mun ferten málestit guktii vahkus.
MAP:advl< (@ADVL<) TARGET (Pl Acc) (-1 MO)(*1 ("?")) ;
#$ Gos nevrriid Fávdna lei fidnen dan fiinna dávgebissu?
MAP:eret-ela (@ADVL-ela>) TARGET Loc ((-1 ("eret")) OR (1 ("eret") ))(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(0 ()) ;
MAP:eret-ela (@)) ;
MAP:arvvusatnit-ela (@ADVL-ela>) TARGET Loc ((-1 ("atnit")) OR (1 ("atnit") )) (0 ()) ;
MAP:Vf)) ;
#!! * __f)) ;
#$ Man divrras lea lasihit guovtti ráđđeaddis golbmasii?
MAP (@ADVL-ine>) TARGET ADVLCASEAdv (0 Loc OR Adv OR Po)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(*1 FMAINV BARRIER SV-BOUNDARY LINK NOT 0 ELA-VERBS-sme)(0 ()) ;
#% – Mii eat leat ožžon makkárge moaitagiid gehččiin eatge vuddjiin, dat lea hui somá.
MAP (@ADVL-ine>) TARGET Num + Gen (-1 DUSSE) ;
MAP (@ADVL-ine>) TARGET Sem/Year (0 Loc LINK *1 FMAINV)(NEGATE 1 Sem/Year OR Ill)(0 ()) ;
MAP (@)) ;
#$ 1964:s bođii Ráisii dálueamitskuvla.
MAP:f)) ;
MAP:f)) ;
MAP:f)) ;
#$ Min mielas goit lea veara jurddašit nissongova birra mii boahtá ovdan jearahallamiin.
#!! * __f (@-FADVL>) TARGET ADVLCASEAdv - MO - S-BOUNDARY OR TIME-N + Gen OR Gen-Sem/Route (NEGATE *-1 FMAINV BARRIER S-BOUNDARY OR CS)(*1 SYN-V - VGen - VAbess BARRIER SV-BOUNDARY OR CS OR FMAINV) ;
#$ Anán buorebun odne vuolgit go ihttážii vuordit.
LIST EDUVERB = "vázzit" "váldit" "gazzat" ;
MAP:edu_ine (@)) ;
#$ Mánáidskuvlla son váccii Praahkes, reálaskuvlla Rørosas, landsgymnása Orkdaeles ja šibitdoavtterallaskuvlla Oslos.
#$ Dan ovdal válddii bachelorgráda Norgga árktalaš universitehtas, Áhkánjárggas.
MAP:s-substance=advl> (@ADVL-ela>) TARGET ADVLCASEAdv + Loc ( 0 Sem/Mat OR Sem/Clth OR Sem/Substnc OR ("ruovdi"))(*1 FMAINV + ("ráhkadit") OR FMAINV + ("duddjot") OR FMAINV + ("goarrut") BARRIER SV-BOUNDARY)(0 ()) ;
MAP:s-substance=)) ;
MAP:s-substance=)) ;
#$ Ain vejolaš ohcat suohkana ealáhusfoanddas.
MAP:s-substance=advl> (@ADVL-ela>) TARGET ADVLCASEAdv + Loc ( 0 Sem/Mat OR Sem/Substnc OR ("ruovdi"))(*1 @>N + ("ráhkadit") OR FMAINV + ("duddjot") BARRIER SV-BOUNDARY)(0 ()) ;
#$ Dat lea muoras ráhkaduvvon mieseoaivi.
# Todo: Look at and recognize NPs of the type Loc + PrfPrc + N
MAP:perspektiiva=ela (@)) ;
MAP:dološ=ela (@ (@ADVL-ela>) TARGET N + Loc ( 0 Sem/Lang)(1 ("báidnit"))(0 ()) ;
MAP:s-báidnit=)) ;
#$ Jorgalus lea sámegielas báidnon dárogiella.
#!! * __s-boundary=advl>__ (@ADVL>) for ADVL that resemble s-boundaries. Mainverb to the right.
MAP:s-boundary=advl> ( @ADVL-ine>) TARGET Adv + Subqst (*1 FMAINV - ELA-VERBS-sme)(*-1 VFIN)(0 ()) ;
MAP:s-boundary=advl> ( @ADVL>) TARGET Adv + Subqst (*-1 VFIN OR FMAINV)(0 ) ;
MAP:s-boundary=advl> (@ADVL-ine>) TARGET ADVLCASEAdv + S-BOUNDARY (0 Loc OR Adv)(*1 FMAINV - ELA-VERBS-sme)(0 ()) ;
MAP:s-boundary=advl> ( @ADVL-ela>) TARGET Adv + Subqst (*1 FMAINV + ELA-VERBS-sme)(*-1 VFIN)(0 ()) ;
MAP:s-boundary=advl> (@ADVL-ela>) TARGET ADVLCASEAdv + S-BOUNDARY (0 Loc OR Adv)(*1 FMAINV + ELA-VERBS-sme)(0 ()) ;
MAP:s-boundary=advl> (@ADVL>) TARGET ADVLCASEAdv + S-BOUNDARY ((*1 FMAINV) OR (1* N + BARRIER S-BOUNDARY)) ;
#$ Dál de viimmat asttan lohkat reivve.
#!! * __diibmuadvl>__ (@ADVL>) for (diibmu Nom) if first one to the right is Num
MAP:diibmuadvl> (@ADVL>) TARGET ("diibmu") OR ("dii" Adv) (1 Num LINK *1 FMAINV BARRIER S-BOUNDARY) ;
#$ Diibmu golbma manan ruoktot.
LIST DADJAT = "čuoččuhit" "dadjat" "jáhkkit" "láhttestit" "lohkat" "muitalit" ;
# This set is for cealkkavástta: DADJAT + Acc + Inf or PrfPrc
#!! * __-fsubj__ (@-FSUBJ>) for HUMAN Acc after DADJAT verbs
MAP:-fsubj> (@-FSUBJ>) TARGET HUMAN + Acc OR Sem/Org + Acc (*1 V + Inf BARRIER NOT-ADV-PCLE)(*-1 DADJAT BARRIER NOT-NPMODADV) ;
#$ Sii jáhkket Elin Kåvena vuoitit
#$ Goalmmát fas lohká iežas rievtti mielde leat hui movttegis olmmožin.
MAP:-fsubj> (@-FSUBJ>) TARGET HUMAN + Acc OR Sem/Org + Acc (*1 N + Ess OR A + Ess BARRIER NOT-A-ADV)(*-1 DADJAT BARRIER NOT-NPMODADV) ;
#$ Goalmmát fas lohká iežas movttegis olmmožin.
#$ Goalmmát fas lohká iežas rievtti mielde hui movttegis olmmožin.
# Infinite object - FOBJ
#!! * __-fobj>__ (@-FOBJ>) for Acc if front of abessive, gerundium, actio locative, perfectum participle or infinitive. First one to the right not allowed to be Acc though
MAP:-fobj> (@-FOBJ>) TARGET Acc (1 (TV VAbess) OR (TV Ger) OR (TV Actio Loc) OR (TV PrfPrc) OR (TV Inf) LINK 0 SYN-V LINK NOT 1 Acc) (NEGATE *-1 TRANS-V BARRIER NOT-ADV-PCLE LINK NOT -1 Acc) ;
#$ Konvenšuvdnaevttohusa ráhkadettiin delegašuvnnat leat váldán vuhtii Ruoŧa ođđa boazodoallolága, ja boazodoallolágaid maiguin barget dál Norggas.
#$ Duosttažan go dan dahkat?
#!! * __-fobj>__ (@-FOBJ>) for Acc if human with ADVL-case to the left and transitive infinitive OBJ to the right. First one to the right not allowed to be Acc though
MAP:-fobj> (@-FOBJ>) TARGET Acc (-1 ADVLCASEAdv + Sem/Hum)(1 (TV Inf @) TARGET N + Loc IF (NOT 0 Sem/Time)(1 N + Ill + Sem/Time)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(0 ()) ;
#$ 58 miljovnna eaktodáhtolaš diimmu Norgga valáštallamis jahkái.
MAP:mielas-ela (@ADVL-ela>) TARGET ("miella") + Loc OR ("mielas") IF (-1 Gen)(NEGATE *-1 VFIN BARRIER S-BOUNDARY)(0 ()) ; #ine for sma, ela for smj
MAP:mielas-ela (@)) ; #ine for sma, ela for smj
#$ Leat nu roavva áitagat ahte gokčá min mielas rasismaparagráfa, oaivvilda son.
MAP:oahppat (@ADVL-ela>) TARGET HUMAN - INE-TRIGGER-NOUNS-sme (0 Loc)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(*1 FMAINV + ("oahppat") BARRIER SV-BOUNDARY LINK NEGATE 0 OTH-ELA-VERBS-sme)(0 ()) ;
MAP:oahppat (@ADVL-ela>) TARGET Sem/Org OR HUMAN (0 Loc LINK NOT 0 INE-TRIGGER-NOUNS-sme)(*-1 FMAINV + ("oahppat") BARRIER SV-BOUNDARY LINK NEGATE 0 OTH-ELA-VERBS-sme)(0 ()) ;
MAP:bivdit-ela (@)) ;
MAP:always-ela (@)) ;
MAP:always-ela (@ADVL-ela>) TARGET Loc IF (0 ALWAYS-ELA-sme LINK *1 FMAINV BARRIER SV-BOUNDARY)(0 ()) ;
#$ Sámi oahppit lassánan diimmážis.
#$ Diimmážis leat sámi oahppit lassánan.
MAP:ela-ill (@ADVL-ela>) TARGET N + Loc IF (1 N + Ill)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(0 ()) ;
MAP:ela-ill (@)) ;
#$ Man divrras lea lasihit guovtti ráđđeaddis golbmasii?
MAP:ela-ill (@)) ;
MAP:gaskkamuttus-ine (@ADVL-ine>) TARGET PREGEN + Loc IF (-1 Sem/Time)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(0 ()) ;
MAP:gaskkamuttus-ine (@)) ;
MAP:coahkkimis (@ADVL-ine>) TARGET Loc (0 ("čoahkkin"))(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(*1 FMAINV BARRIER SV-BOUNDARY LINK NOT 0 MOVE-VERBS-sme)(0 ()) ;
MAP:coahkkimis (@)) ;
MAP (@ADVL-ela>) TARGET ADVLCASEAdv - INE-TRIGGER-NOUNS-sme (0 Loc OR Adv OR Po)(NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(*1 FMAINV + ELA-VERBS-sme BARRIER SV-BOUNDARY LINK NOT 0 OTH-ELA-VERBS-sme LINK NEGATE *1 Loc BARRIER SV-BOUNDARY)(0 ()) ;
#% Giellabargu mánáidgárddis gáibida ollu barggu sihke bargiin ja vánhemiin.
#!! * __advl>mainV__ (@ADVL>) if; finite mainverb not found to the left, but the finite mainverb is found to the right.
MAP:advl>mainV (@ADVL>) TARGET ADVLCASEAdv (NEGATE *-1 FMAINV BARRIER S-BOUNDARY)(*1 FMAINV BARRIER SV-BOUNDARY) ;
#$ Dál de viimmat asttan lohkat reivve.
#$ Jos ja go suodjalus ii šat dárbbaš guovllu, dat galgá máhcahuvvot sámi geavahussii, Skum cealká.
MAP:V)) ;
#$ ... nu ahte dat bohtet oidnosii sihke politihkas, lágain ja geavatlaččat.
MAP:V)) ;
#$ Lea namuhuvvon ahte ruoŧŧelaččat vigge Finnmárkku váldit 1600-logus.
MAP:V)) ;
#$ Son bođii sotnabeaivvi nubbin sihkkelgilvvus Stavangeris.
MAP:V)) ;
#$ Navdet vuodján juhkanvuođas.
MAP:V)) ;
MAP:V)) ;
#$ Vujii ealgga njeaiga Luosnjárggas.
MAP:txt)) ;
MAP:nákkáhallatV)) ;
#$ Inker-Anni Sara nákkáhallá Jyväskylä universitehtas 18.1.2019.
MAP:PlcV)) ;
#$ Arctic Gold ožžon ohcanlobi Biedjovákkis.
MAP:PlcV)) ;
#$ Dalle lea digitála logaldallan «Sámi mánáid oahppama ođđa áiggis»
MAP:V)) ;
MAP:V)) ;
#$ das šaddá ..
MAP:plc))(NEGATE 0 Prop + Sem/Plc LINK -1 Prop LINK -1 Prop) ;
#$ Son jearai ja oaččui beavdesaji iežas gálvvuide Girjjálašvuođaguovddážis guovdu Kárášjoga márkana.
MAP:V)) ;
MAP:V)) ;
#$ Givssideapmi sáhttá boahtán das, go earránin nuppiin mánáin ja nuorain.
MAP:V)) ;
MAP:V)) ;
#$ mat čájehit fanaskurssa álggus gitta lohppii.
MAP:V)) ; #asf
MAP:V)) ; #asf
#!! * __VP)) ;
#$ Giellatekno álggahuvvui 1.8.2001 prošeaktan ráhkadit sámegiela grammatihkalaš analysa.
#$ Dán filmma leat Kárášjoga nuorat oaidnán, eaige šat vuolgge sirkusii.
#$ Eanet dieđuid gávnnat dáppe: www.denkulturelleskolesekken.no
#% Vare livččet jogo galmmas dahje liekkas.
#% Goh saabate sjïdti, dellie synagogese tjaangi jih almetjidie øøhpehti.
#% Doppe mánát ohppet giela lunddolaččat árgabeaivvi bargguid ja stoahkama bokte.
#% Måanta Daen biejjien Manne jih Janne vuelkebe Afrikese, eejehtimmesne {Daelie} tsåahka lea 05.30, jih mijjien feeleme lea 06.00.
MAP:Vv (@ADVL-ine>) TARGET ADVLCASEAdv OR TIME-N + Gen OR Gen-Sem/Route (0 Loc OR Adv)((*1 FMAINV - ELA-VERBS-sme BARRIER SV-BOUNDARY) OR (*1 ("de") BARRIER FMAINV LINK 1 FMAINV - ELA-VERBS-sme) OR (*-1 BOS BARRIER NOT-NPMOD LINK *1 TIME-N + Gen BARRIER NOT-NPMOD LINK *1 ("go") OR S-BOUNDARY BARRIER FMAINV LINK *1 FMAINV - ELA-VERBS-sme BARRIER SV-BOUNDARY))(0 ()) ;
MAP:advl>v (@ADVL-ela>) TARGET ADVLCASEAdv OR TIME-N + Gen OR Gen-Sem/Route (0 Loc OR Adv) ((*1 FMAINV + ELA-VERBS-sme BARRIER SV-BOUNDARY) OR (*1 ("de") BARRIER FMAINV LINK 1 FMAINV + ELA-VERBS-sme) OR (*-1 BOS BARRIER NOT-NPMOD LINK *1 TIME-N + Gen BARRIER NOT-NPMOD LINK *1 ("go") OR S-BOUNDARY BARRIER FMAINV LINK *1 FMAINV + ELA-VERBS-sme BARRIER SV-BOUNDARY))(0 ()) ;
#!! * __advl>v__ (@ADVL>) if; you are ADVL, time-noun or Sem/Route and there is a finite verb to the right in the clause, or if to your right is: de followed by a finite verb. OR: if you are a time-nound and to your right is: go or sentenceboundary followed by a finite verb
MAP:advl>v (@ADVL>) TARGET ADVLCASEAdv OR TIME-N + Gen OR Gen-Sem/Route ((*1 FMAINV OR FAUXV BARRIER SV-BOUNDARY) OR (*1 ("de") BARRIER FMAINV LINK 1 FMAINV OR FAUXV) OR (*-1 BOS BARRIER NOT-NPMOD LINK *1 TIME-N + Gen BARRIER NOT-NPMOD LINK *1 ("go") OR S-BOUNDARY BARRIER FMAINV LINK *1 FMAINV OR FAUXV BARRIER SV-BOUNDARY)) ;
#$ Maŋŋá jápmimis de aliduvvui Gonagas Olav bassin.
#$ Girkonjárggas fuomášin man ollu negatiiva oainnut dan áigge ledje sámiid vuostá.
#$ Báhkaid áigge, go boazu ruohttá čoahkkái, de sii lávejit muhtumin mannat alla báktegaskii ja dasa cakkadit dasságo nelgot ja oahpástuvvet olbmo oaidnit ja haksit.
#MAP:cs (@ADVL>CS) TARGET Adv (*-1 BOC BARRIER NOT-ADV)(1 CS LINK *1 FMAINV) ;
#$ Danne go ..
#$ Nu guhká go ...
#!! * ____ (@ (@ADVL>) TARGET Po OR Pr (*1 FMAINV BARRIER SV-BOUNDARY) ;
#!! * __BOSPo>__ (@ADVL>) for Po; if trapped between BOS to the right and S-BOUNDARY OR COMMA to the left, because the main verb will then automatically be on your right side.
MAP:BOSPo> (@ADVL>) TARGET Po (*-1 BOS BARRIER FMAINV)(*1 S-BOUNDARY OR COMMA BARRIER FMAINV)(NEGATE 0 @N<) ;
#$ Divššohasaid birra geat leat uminddegin dahkkon.
#$ Dán girjji vuođul ja ságastallamiiguin lullisámiin lea munnje báhcán millii ahte internáhttadoaibma ii lean gal alla dásis, muhto internáhttaskuvlii dattetge bohte viššalit lullisámi bearrašat.
#% Romssa ja davágeaži Norrbottena boazoorohagat ja čearut riikaráji guoras ja konvenšuvdnaguovlluin.
#!! * __"))(*1 EOC BARRIER FMAINV)(NEGATE 0 (Pl Loc))(NEGATE 0 Gen LINK 1 Pr OR Po) ;
#$ Sis lei unnán dahje ii makkárge oktavuohta earáiguin earretgo internáhtas orodettiin.
#$ Ii fal runiidan jalges gittiide, muhto meahccái, gosa návddit dávjá ja lunddolaččat fievrridit ráppiid.
#!! * __ (@ADVL>) TARGET (N Gen) (*1 FMAINV BARRIER SV-BOUNDARY OR Po)(NEGATE *1 N BARRIER NOT-A) ;
MAP:advl> (@ADVL>) TARGET Ess (*1 FMAINV BARRIER SV-BOUNDARY LINK NEGATE *1 Nom BARRIER NOT-NPMOD)(NEGATE *-1 REAL-V BARRIER S-BOUNDARY) ;
#$ Čuoikan ...
#!! * ____ (@