diff --git a/lib/resource/finnish/RulesFin.gf b/lib/resource/finnish/RulesFin.gf index 4477a5ca4..16b53b8da 100644 --- a/lib/resource/finnish/RulesFin.gf +++ b/lib/resource/finnish/RulesFin.gf @@ -131,7 +131,7 @@ lin IdRP = identRelPron ; FunRP = funRelPron ; ----- RelSlash = relSlash ; + RelSlash = relSlash ; ModRS = modRelClause ; RelCl = relSuch ; @@ -144,7 +144,7 @@ lin FunIP = funIntPron ; QuestCl cl = {s = \\bsf => cl.s ! } ; ----- IntSlash = intSlash ; + IntSlash = intSlash ; QuestAdv = questAdverbial ; PosImpVP = imperVerbPhrase True ; diff --git a/lib/resource/finnish/SyntaxFin.gf b/lib/resource/finnish/SyntaxFin.gf index 3a7d19c35..4840ccd80 100644 --- a/lib/resource/finnish/SyntaxFin.gf +++ b/lib/resource/finnish/SyntaxFin.gf @@ -1193,10 +1193,15 @@ oper relVerbPhrase : RelPron -> VerbPhrase -> RelClause = \joka,ui -> {s = \\n => joka.s ! n ! npForm2Case n (complementCase True ui.c Inf) ++ ui.s ! Pres n P3 ++ ui.s2 ! Pres n P3} ; - - relSlash : RelPron -> SentenceSlashNounPhrase -> RelClause = \joka,saat -> - {s = \\n => joka.s ! n ! saat.c ++ saat.s2 ++ saat.s} ; -} + + relSlash : RelPron -> SentenceSlashNounPhrase -> RelClause = \joka,tapaat -> + {s = \\b,sf,n => + joka.s ! n ! npForm2Case n (complCase b tapaat.c (SCl sf)) ++ tapaat.s2 ++ + tapaat.s ! + } ; + + -- A 'degenerate' relative clause is the one often used in mathematics, e.g. -- "luku x siten että x on parillinen". @@ -1307,9 +1312,11 @@ oper -- intVerbPhrase : IntPron -> VerbPhrase -> Question = \kuka,ui -> -- predVerbPhrase (kuka ** {p = NP3}) ui ; --- intSlash : IntPron -> SentenceSlashNounPhrase -> QuestClause = \kuka,tapaat -> --- ss (kuka.s ! NPCase tapaat.c ++ tapaat.s2 ++ tapaat.s) ; - + intSlash : IntPron -> SentenceSlashNounPhrase -> QuestClause = \kuka,tapaat -> + {s = \\bsf => + kuka.s ! complCase bsf.p1 tapaat.c (SCl bsf.p2) ++ tapaat.s2 ++ + tapaat.s ! bsf + } ; --3 Interrogative adverbials --