mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-28 09:28:54 -06:00
(Ara) Add subject case field to VP
This commit is contained in:
@@ -13,7 +13,7 @@ concrete CatAra of Cat = CommonX - [Utt] ** open ResAra, Prelude, ParamX in {
|
||||
SSlash,
|
||||
S = {s : Str} ;
|
||||
QS = {s : QForm => Str} ;
|
||||
RS = {s : Agr => Case => Str} ;
|
||||
RS = {s : Agr => Case => Str} ; -- case because the relative pronoun inflects in case
|
||||
|
||||
-- Sentence
|
||||
|
||||
@@ -79,7 +79,8 @@ concrete CatAra of Cat = CommonX - [Utt] ** open ResAra, Prelude, ParamX in {
|
||||
|
||||
V, VS, VQ, VA = ResAra.Verb ; -- = {s : VForm => Str} ;
|
||||
V2, V2A = ResAra.Verb2 ;
|
||||
VV, V2S, V2Q = ResAra.Verb2 ;
|
||||
VV = ResAra.Verb2 ** {sc : Preposition} ;
|
||||
V2S, V2Q = ResAra.Verb2 ;
|
||||
V2V, V3 = ResAra.Verb3 ;
|
||||
|
||||
A = ResAra.Adj ;
|
||||
|
||||
@@ -1363,6 +1363,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
|
||||
|
||||
VP : Type = {
|
||||
s : PerGenNum => VPForm => Str ;
|
||||
sc : Preposition ; -- subject case: e.g. يُمْكِنُ *لِ*Xِ
|
||||
obj : Obj;
|
||||
pred : Comp;
|
||||
isPred : Bool; --indicates if there is a predicate (xabar)
|
||||
@@ -1382,6 +1383,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
|
||||
VPImpf m => v.s ! (VImpf m Act pgn);
|
||||
VPImp => v.s ! (VImp gn.g gn.n)
|
||||
};
|
||||
sc = noPrep ;
|
||||
obj = emptyObj ;
|
||||
s2 = [];
|
||||
pred = {s = \\_,_ => []} ;
|
||||
@@ -1431,7 +1433,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
|
||||
subj = np.empty
|
||||
++ case <vp.isPred,np.a.isPron> of {
|
||||
<False,True> => [] ; -- prodrop if it's not predicative
|
||||
_ => np.s ! Nom
|
||||
_ => vp.sc.s ++ np.s ! vp.sc.c
|
||||
} ;
|
||||
|
||||
} in
|
||||
|
||||
@@ -22,7 +22,8 @@ concrete VerbAra of Verb = CatAra ** open Prelude, ResAra, ParamX in {
|
||||
s = \\pgn,vpf => vvVP.s ! pgn ! vpf
|
||||
++ vv.c2.s -- أَنْ
|
||||
++ vp.s ! pgn ! VPImpf Cnj ;
|
||||
isPred = False
|
||||
isPred = False ;
|
||||
sc = vv.sc
|
||||
} ;
|
||||
|
||||
-- : VS -> S -> VP ; -- say that she runs
|
||||
|
||||
Reference in New Issue
Block a user