concrete StructuralPes of Structural = CatPes ** open MorphoPes, ParadigmsPes, Prelude, NounPes in { flags optimize=all ; coding = utf8; lin above_Prep = ss "bAlAy" ; after_Prep = ss ["bcd Az"] ; all_Predet = ss ["hmh y"] ; almost_AdA, almost_AdN = ss "tqrybAa." ; although_Subj = ss ["bA vjvd Ayn"] ; always_AdV = ss "hmyCh" ; and_Conj = sd2 [] "v" ** {n = Pl} ; because_Subj = ss ["brAy Ayn"] ; before_Prep = ss ["qbl Az"] ; behind_Prep = ss "pCt" ; between_Prep = ss "byn" ; both7and_DConj = sd2 "hm" ["v hm"] ** {n = Pl} ; but_PConj = ss "AmA" ; by8agent_Prep = ss "tvsT" ; by8means_Prep = ss "bA" ; -- can8know_VV,can_VV = mkV "skna" ** { isAux = True} ; during_Prep = ss ["dr Tvl"] ; either7or_DConj = sd2 "yA" "yA" ** {n = Sg} ; -- everybody_NP = MassNP (UseN (MorphoPnb.mkN11 ["hr kwy"])); -- not a good way coz need to include NounPnb every_Det = mkDet "hr" Sg ; -- everything_NP = MassNP (UseN (MorphoPnb.mkN11 ["hr XE"])); everywhere_Adv = ss ["hr jA"] ; few_Det = mkDet ["tcdAd kmy"] Pl True; -- check -- first_Ord = {s = "Avlyn" ; n = Sg} ; --DEPRECATED for_Prep = ss "brAy" ; from_Prep = ss "Az" ; he_Pron = personalPN "Av" Sg PPers3 ; here_Adv = ss "AynjA" ; here7to_Adv = ss "AynjA" ; here7from_Adv = ss "AynjA" ; how_IAdv = ss "c^Tvr" ; how8many_IDet = {s = "c^nd" ; n = Pl ; isNum = True} ; how8much_IAdv = ss "c^qdr" ; if_Subj = ss "Agr" ; in8front_Prep = ss "jlvy" ; i_Pron = personalPN "mn" Sg PPers1; in_Prep = ss "dr" ; it_Pron = personalPN "A:n" Sg PPers3; less_CAdv = {s = "kmtr" ; p = ""} ; many_Det = mkDet ["tcdAd zyAdy"] Pl True; -- check more_CAdv = {s = "byCtr" ; p = "" } ; most_Predet = ss "Akt-r"; much_Det = mkDet ["mqdAr zyAdy"] Pl ; -- must_VV = { -- s = table { -- VVF VInf => ["have to"] ; -- VVF VPres => "must" ; -- VVF VPPart => ["had to"] ; -- VVF VPresPart => ["having to"] ; -- VVF VPast => ["had to"] ; --# notpresent -- VVPastNeg => ["hadn't to"] ; --# notpresent -- VVPresNeg => "mustn't" -- } ; -- isAux = True -- } ; -----b no_Phr = ss "no" ; no_Utt = ss "nh" ; on_Prep = ss "rvy" ; -- one_Quant = demoPN "yk" ; -- DEPRECATED only_Predet = ss "fqT" ; or_Conj = sd2 [] "yA" ** {n = Sg} ; otherwise_PConj = ss ["drGyrAyn Svrt"] ; part_Prep = ss "Az" ; -- the object following it should be in Ezafa form please_Voc = ss "lTfAa." ; possess_Prep = ss "" ; -- will be handeled in Ezafeh quite_Adv = ss "kAmlAa." ; she_Pron = personalPN "Av" Sg PPers3 ; so_AdA = ss "bsyAr" ; -- somebody_NP = MassNP (UseN (MorphoPnb.mkN11 "kwy" )); someSg_Det = mkDet "mqdAry" Sg True ; somePl_Det = mkDet "c^nd" Pl True ; -- something_NP = MassNP (UseN (MorphoPnb.mkN11 "c^yzy")); somewhere_Adv = ss "jAyy" ; that_Quant = mkQuant "A:n" "A:n"; that_Subj = ss "A:n"; there_Adv = ss "A:njA" ; there7to_Adv = ss "A:njA" ; there7from_Adv = ss "A:njA" ; therefore_PConj = ss ["bh hmyn dlyl"] ; they_Pron = personalPN ["A:n hA"] Pl PPers3 ; this_Quant = mkQuant "Ayn" "Ayn" ; through_Prep = ss ["Az Tryq"] ; too_AdA = ss "Kyly" ; to_Prep = ss "bh" ** {lock_Prep = <>}; under_Prep = ss "zyr" ** {lock_Prep = <>}; very_AdA = ss "Kyly" ; want_VV = mkV "KvAstn" "KvAh" ** { isAux = False} ; we_Pron = personalPN "mA" Pl PPers1 ; whatSg_IP = {s = ["c^h c^yzy"] ; n = Sg } ; whatPl_IP = {s = ["c^h c^yzhAyy"] ; n = Pl } ; when_IAdv = ss "ky" ; when_Subj = ss "vqty" ; where_IAdv = ss "kjA" ; which_IQuant = {s = "kdAm" ; n = Sg} ; whichPl_IDet = {s = "kdAm" ; n = Pl ; isNum = False} ; whichSg_IDet = { s = "kdAm" ; n = Sg ; isNum = False} ; whoSg_IP = {s = ["c^h ksy"] ; n = Sg} ; whoPl_IP = {s = ["c^h ksAny"] ;n = Pl} ; why_IAdv = ss "c^rA" ; without_Prep = ss "bdvn" ; with_Prep = ss "bA"; -- yes_Phr = ss "blh" ; yes_Utt = ss "blh" ; youSg_Pron = personalPN "tv" Sg PPers2 ; youPl_Pron = personalPN "CmA" Pl PPers2 ; youPol_Pron = personalPN "CmA" Sg PPers2 ; -- no_Quant = demoPN "hyc^" ; not_Predet = {s="nh"} ; if_then_Conj = sd2 "Agr" "A:ngAh" ** {n = Sg} ; at_least_AdN = ss "HdAql" ; at_most_AdN = ss "HdAkt-r"; -- nothing_NP = MassNP (UseN (MorphoPnb.mkN11 "hyc^ c^yz" )); except_Prep = ss ["bh jz"] ; -- nobody_NP = MassNP (UseN (MorphoPnb.mkN11 "hyc^ ks")); as_CAdv = {s = ["bh AndAzh y"] ; p = ""} ; -- have_V2 = mkV2 (mkV "dACtn" "dAr") "rA" ; language_title_Utt = ss "persian" ; }