I have now tried the WITH construction (with vislcg3 freshly compiled from the
newest git source), and I am wondering whether the NOPARENT flag has any effect.
Using NOPARENT:
WITH NOPARENT LastName IF (-1 Anthr + MF) {
MAP >NAMEMOD (*) ;
SETPARENT (*) TO (jC1 (*)) ;
};
the WITH rule and the SETPARENT subrule is triggered several times, as I can
see in the trace output.
When I change it to
WITH LastName IF (-1 Anthr + MF) (NEGATE p (*)) {
MAP >NAMEMOD (*) ;
SETPARENT (*) TO (jC1 (*)) ;
};
it is rune only once, which is the expected behaviour for the first version
also, I guess.
-- Paul Meurer
Am 30. 05. 23 um 11:44 schrieb Tino Didriksen <[email protected]>:
One of the papers for the NoDaLiDa CG workshop last week was the implementation
of WITH to do exactly that (and more):
https://visl.sdu.dk/pdf/CG-workshop2023_paper_3.pdf +
https://visl.sdu.dk/cg3/chunked/rules.html#with
So your rules could be rewritten to something like:
WITH NOPARENT V + Rel IF (1* VERB + IO:3SgNH BARRIER CLB) {
MAP >IOBJ (*) ;
SETPARENT (*) TO (jC1 (*)) ;
};
-- Tino Didriksen
On Tue, 30 May 2023 at 11:38, Paul Meurer
<[email protected]<mailto:[email protected]>> wrote:
Hi,
I am building dependency analyses from scratch in my CG3 grammar, using
SETPARENT and MAP.
Often I find myself establishing a parent relation, and using MAP to put a
label on it right afterwards, by basically repeating the constraints from the
SETPARENT rule (with the obvious adaptations).
So I would find a rule that would do both operations in one very useful,
something like
SETPARENT V + Rel
MAP >IOBJ
IF (NEGATE p (*))
TO (1* VERB + IO:3SgNH BARRIER CLB) ;
Perhaps I am missing something here?
Regards,
Paul Meurer
--
You received this message because you are subscribed to the Google Groups
"Constraint Grammar" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/constraint-grammar/57514DAE-20B0-4F64-ABE3-6C9231264EC8%40uib.no.