1
0
forked from GitHub/gf-rgl

added DetNPMasc

This commit is contained in:
Krasimir Angelov
2018-06-24 11:28:21 +02:00
parent a2ba6a7d64
commit cdc2f36bdf
5 changed files with 34 additions and 7 deletions

View File

@@ -203,7 +203,8 @@ abstract Extend = Cat ** {
ComplSlashPartLast : VPSlash -> NP -> VP ; ComplSlashPartLast : VPSlash -> NP -> VP ;
-- Romance -- Romance
DetNPFem : Det -> NP ; DetNPMasc : Det -> NP ;
DetNPFem : Det -> NP ;
iFem_Pron : Pron ; -- I (Fem) iFem_Pron : Pron ; -- I (Fem)
youFem_Pron : Pron ; -- you (Fem) youFem_Pron : Pron ; -- you (Fem)

View File

@@ -179,6 +179,17 @@ lin
lin lin
ApposNP np1 np2 = {s = \\role => np1.s ! role ++ comma ++ np2.s ! role; a = np1.a; p = np1.p} ; ApposNP np1 np2 = {s = \\role => np1.s ! role ++ comma ++ np2.s ! role; a = np1.a; p = np1.p} ;
DetNPMasc det = {
s = \\role => let s = det.s ! False ! (AMasc Human) ! role
in case role of {
RObj Dat => "на" ++ s;
RObj WithPrep => with_Word ++ s;
_ => s
} ;
a = {gn = gennum (AMasc Human) (numnnum det.nn); p = P3} ;
p = det.p
} ;
DetNPFem det = { DetNPFem det = {
s = \\role => let s = det.s ! False ! AFem ! role s = \\role => let s = det.s ! False ! AFem ! role
in case role of { in case role of {

View File

@@ -93,7 +93,7 @@ lin
CompQS = variants {} ; -- QS -> Comp ; -- (the question is) who sleeps CompQS = variants {} ; -- QS -> Comp ; -- (the question is) who sleeps
CompVP = variants {} ; -- Ant -> Pol -> VP -> Comp ; -- (she is) to go CompVP = variants {} ; -- Ant -> Pol -> VP -> Comp ; -- (she is) to go
DetNPMasc = DetNP ;
DetNPFem = DetNP ; DetNPFem = DetNP ;
iFem_Pron = i_Pron ; -- DEFAULT I (masc) iFem_Pron = i_Pron ; -- DEFAULT I (masc)

View File

@@ -58,6 +58,11 @@ concrete ExtendEng of Extend =
c = NPAcc c = NPAcc
} ; } ;
DetNPMasc det = {
s = det.sp ;
a = agrgP3 det.n Masc
} ;
DetNPFem det = { DetNPFem det = {
s = det.sp ; s = det.sp ;
a = agrgP3 det.n Fem a = agrgP3 det.n Fem

View File

@@ -3,7 +3,7 @@ concrete ExtendSwe of Extend = CatSwe **
ExtendFunctor - ExtendFunctor -
[ [
GenNP, GenModNP, ComplBareVS, CompBareCN, GenNP, GenModNP, ComplBareVS, CompBareCN,
ApposNP, ApposNP, DetNPMasc, DetNPFem,
StrandRelSlash, EmptyRelSlash, StrandQuestSlash, StrandRelSlash, EmptyRelSlash, StrandQuestSlash,
PassVPSlash, PassAgentVPSlash, UttVPShort, PassVPSlash, PassAgentVPSlash, UttVPShort,
MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV,
@@ -158,6 +158,16 @@ concrete ExtendSwe of Extend = CatSwe **
lin lin
ApposNP np1 np2 = {s = \\nform => np1.s ! nform ++ comma ++ np2.s ! nform; a = np1.a; isPron = False} ; ApposNP np1 np2 = {s = \\nform => np1.s ! nform ++ comma ++ np2.s ! nform; a = np1.a; isPron = False} ;
DetNPMasc, DetNPFem = \det ->
let
g = utrum ; ----
m = True ; ---- is this needed for other than Art?
in {
s = \\c => det.sp ! m ! g ; ---- case of det!
a = agrP3 (ngen2gen g) det.n ;
isPron = False
} ;
CompoundN n1 n2 = { CompoundN n1 n2 = {
s = \\n,s,c => n1.co ++ BIND ++ n2.s ! n ! s ! c ; s = \\n,s,c => n1.co ++ BIND ++ n2.s ! n ! s ! c ;
co = n1.co ++ BIND ++ n2.co ; co = n1.co ++ BIND ++ n2.co ;