{
node(Anchor).cat = value(coo);
Root >> Incise;
Foot < Incise; node Incise : [cat:incise, id:incise, type:std];
node(Incise).top.sync = node(Incise).bot.sync;
node(Incise).top.sync = value(-);
node(Incise).adjleft = value(atmostone);
node(Incise).adjright = value(sync);
Incise >> SeqLast; node SeqLast : [ type : sequence ];
SeqLast >> Anchor;
SeqLast >>+ Coord3; node Coord3: [cat: $xcat, type: $type, id: coord3];
SeqLast >> Punct3; node Punct3: [type: lex, lex: ',', optional: yes];
Punct3 < Anchor;
%% Last >> dot; node dot : [lex: '...', type: lex];
%% Last => node(Last).dummy.enum = value(+|-);
%% ~ Last => node(Last).dummy.enum = value(-);
%% dot + node(Last).dummy.enum = value(+);
%% SeqLast + node(Last).dummy.enum = value(-);
%% SeqLast < dot;
Seq < SeqLast;
Incise >> Seq; node Seq: [type: sequence, star: *];
Seq >> coo2; node coo2: [type: std, cat: coo, adj: no];
coo2 >> Punct; node Punct: [type: lex, lex: ','];
Seq >> coo21; node coo21: [type: coanchor,
cat: coo,
lex: ni|et|ou|soit|'et-ou'|'ainsi que'|'et puis'|'et encore'|'et même'|'et bien'|'ou alors'|'ou encore'|'ou bien'|'ou même'|'voire'|'voire même'|comme,
adj: no];
coo2 < coo21;
coo21 < Coord2;
coo21 =>
desc.dummy.repeated = value(+)
;
~ coo21 =>
desc.dummy.repeated = value(-)
;
Seq >> Coord2;
coo2 < Coord2; node Coord2: [cat: $xcat, type: $type, id: coord2];
Foot < Seq;
Anchor < Coord3;
desc.ht = value([arg0:@emptyarg_fs,arg1:@emptyarg_fs,arg2:@emptyarg_fs]);
Anchor +
desc.dummy.repeated = value(-)
|
desc.dummy.repeated = value(+),
( node(coo21).lex = node(Anchor).lex
|
node(coo21).lex = value(ni|soit),
node(Anchor).lex = value(mais)
|
node(coo21).lex = value('ainsi que'),
node(Anchor).lex = value(et)
)
;
Seq =>
node(Anchor).lex = value(et|ou|'et-ou'|'ainsi que'|plus|'et même'|'et encore'|'et puis'|'et bien'|'ou encore'|'ou bien'|'ou même'|voire)
|
desc.dummy.repeated = value(+)
;
Seq =>
node(Seq).dummy.coord2 = value(+);
~Seq =>
desc.dummy.repeated = value(-),
node(Seq).dummy.coord2 = value(-)
;
%% Last coord may be preceded by an advneg
%% example: il mange rapidemment mais pas salement.
%% example: Paul, et pas son frère, viendra
%% example: je veux Paul mais pas son frère.
%% example: je veux qu'il vienne mais pas qu'il parte
SeqLast >> pas;
Anchor < pas;
pas < Coord3;
node pas: [cat: advneg, id: pas, type: coanchor];
pas =>
node(Anchor).lex = value(mais|et|car),
node(pas).dummy.is_present= value(+)
;
~ pas =>
node(pas).dummy.is_present= value(-)
;
desc.dependency = value(coord);
}
Ajouter un commentaire