mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-28 01:18:57 -06:00
(Som) Add conjunction in RelCN, if the CN already has a modifier
This commit is contained in:
@@ -225,10 +225,9 @@ concrete NounSom of Noun = CatSom ** open ResSom, Prelude in {
|
|||||||
AdjCN ap cn = cn ** {
|
AdjCN ap cn = cn ** {
|
||||||
s = table { NomSg => cn.s ! Indef Sg ; -- When an adjective is added, noun loses case marker.
|
s = table { NomSg => cn.s ! Indef Sg ; -- When an adjective is added, noun loses case marker.
|
||||||
x => cn.s ! x } ;
|
x => cn.s ! x } ;
|
||||||
mod = \\n,c => cn.mod ! n ! Abs -- If there was something before, it is now in Abs
|
mod = let conj = if_then_Str cn.hasMod "oo" [] in
|
||||||
++ case cn.hasMod of {
|
\\n,c => cn.mod ! n ! Abs -- If there was something before, it is now in Abs
|
||||||
True => "oo" ;
|
++ conj -- If the sentence is already modified, any new modifier needs to be introduced with conjunction
|
||||||
False => [] }
|
|
||||||
++ ap.s ! AF n c ;
|
++ ap.s ! AF n c ;
|
||||||
hasMod = True
|
hasMod = True
|
||||||
} ;
|
} ;
|
||||||
@@ -236,7 +235,8 @@ concrete NounSom of Noun = CatSom ** open ResSom, Prelude in {
|
|||||||
|
|
||||||
-- : CN -> RS -> CN ;
|
-- : CN -> RS -> CN ;
|
||||||
RelCN cn rs = cn ** {
|
RelCN cn rs = cn ** {
|
||||||
mod = \\n,c => cn.mod ! n ! c ++ rs.s ! gender cn ! c ;
|
mod = let conj = if_then_Str cn.hasMod "ee" [] in
|
||||||
|
\\n,c => cn.mod ! n ! c ++ conj ++ rs.s ! gender cn ! c ;
|
||||||
hasMod = True ;
|
hasMod = True ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user