An engcg parse and its enhanced version


 

Sentence :

 

And now that little bogey had been exorcized with the rest !
(Angus Wilson, Hemlock and After)

 

Engcg parse :

 

"<*and>"

††††††††††† "and" <*> CC @CC

"<now>"

††††††††††† "now" ADV@ADVL

"<that>"

††††††††††† "that" PRON DEM SG@SUBJ††††††††††††††††††††††††††††† /* wrong parse !!! */

††††††††††† "that" DET CENTRAL DEM SG @DN>

††††††††††† "that" <**CLB> CS @CS†††††††††††††††††††††††††††††††††††††† /* wrong parse !!! */

"<little>"

††††††††††† "little" <NonMod> <Quant> PRON ABS SG@OBJ††††††† /* wrong parse !!! */

††††††††††† "little" <Quant> DET POST ABS SG @QN>†††††††††††††††††††† /* wrong parse !!! */

††††††††††† "little" A ABS@AN>

"<bogey>"

††††††††††† "bogey" N NOM SG@SUBJ

"<had>"

††††††††††† "have" <SVO> <SVOC/A> V PAST VFIN@+FAUXV

"<been>"

††††††††††† "be" <SVC/N> <SVC/A> PCP2@-FAUXV

"<exorcized>"

††††††††††† "exorcize" <SVO> PCP2@-FMAINV

"<with>"

††††††††††† "with" PREP@ADVL

"<the>"

††††††††††† "the" <Def> DET CENTRAL ART SG/PL @DN>

"<rest>"

††††††††††† "rest" N NOM SG@<P

"<$\!>"

 

 

Tagtxt-enhanced version :

 

txt(s,['bogey'],[w(0,1,text('and',u),lem('and',u),morph([m(pos,cconj,2)]),syn([s(type,cc,0,_)])),w(1,2,text('now',l),lem('now',l),morph([m(pos,adv,5)]),syn([s(func,adv,5,_)])),w(2,3,text('that',l),lem('that',l),morph([m(pos,pron,2),m(type,dem,2),m(num,sg,2)]),syn([s(func,subj,5,_)])),w(2,3,text('that',l),lem('that',l),morph([m(pos,det,2),m(type,central,0),m(type,dem,2),m(num,sg,2)]),syn([s(type,dn,0,r)])),w(2,3,text('that',l),lem('that',l),morph([m(type,clb,2),m(pos,sconj,2)]),syn([s(type,cs,0,_)])),w(3,4,text('little',l),lem('little',l),morph([m(type,nonmod,0),m(type,quant,2),m(pos,pron,2),m(degree,abs,0),m(num,sg,2)]),syn([s(func,obj,5,_)])),w(3,4,text('little',l),lem('little',l),morph([m(type,quant,2),m(pos,det,2),m(type,post,0),m(degree,abs,0),m(num,sg,2)]),syn([s(type,qn,3,r)])),w(3,4,text('little',l),lem('little',l),morph([m(pos,adj,5),m(degree,abs,0)]),syn([s(type,an,3,r)])),w(4,5,text('bogey',l),lem('bogey',l),morph([m(pos,n,5),m(case,nom,0),m(num,sg,2)]),syn([s(func,subj,5,_)])),w(5,6,text('had',l),lem('have',l),morph([m(pos,v,5),m(tense,past,1),m(type,finite,2)]),syn([s(type,aux,3,f)])),w(6,7,text('been',l),lem('be',l),morph([m(pos,edform,2)]),syn([s(type,aux,3,nf)])),w(7,8,text('exorcized',l),lem('exorcize',l),morph([m(pos,edform,2)]),syn([s(type,main,3,nf)])),w(8,9,text('with',l),lem('with',l),morph([m(pos,prep,2)]),syn([s(func,adv,5,_)])),w(9,10,text('the',l),lem('the',l),morph([m(type,def,3),m(pos,det,2),m(type,central,0),m(type,art,3),m(num,sg_or_pl,1)]),syn([s(type,dn,0,r)])),w(10,11,text('rest',l),lem('rest',l),morph([m(pos,n,5),m(case,nom,0),m(num,sg,2)]),syn([s(type,p,3,l)])),punct(11,12,unkn)],[np(2,3,c(2,3)),np(3,4,c(3,4)),np(3,5,c(4,5)),np(9,11,c(10,11))],[cadj('little','bogey'),cdobj('bogey','exorcize'),cdobj('little','exorcize'),cprep(8,'with','rest'),cdobj('rest','exorcize')],neg(0),passive(1),s,$And now that little bogey had been exorcized with the rest !$).

 

 

Commented version :

 

txt(

 

s,

% call on the matcher in single-word lexeme mode

 

['bogey'],

% selected word

 

 

[

% list of w-structures, one per word, except when the parser gives more than one solution
% as it does here, twice (that, little)

w(0,1,text('and',u),lem('and',u),morph([m(pos,cconj,2)]),syn([s(type,cc,0,_)])),

 

% the w-structure lists : the starting and end position of the word in the string,

% the textual word-form with case information (u=upper, l=lower),
% the lemma with case information,

% a list of morphological features m(Type,Value, Weight),
% a list of syntactic features s(Type,Vlaue, Weight).

 

 

w(1,2,text('now',l),lem('now',l),morph([m(pos,adv,5)]),syn([s(func,adv,5,_)])),

 

w(2,3,text('that',l),lem('that',l),morph([m(pos,pron,2),m(type,dem,2),m(num,sg,2)]),syn([s(func,subj,5,_)])),

w(2,3,text('that',l),lem('that',l),morph([m(pos,det,2),m(type,central,0),m(type,dem,2),m(num,sg,2)]),syn([s(type,dn,0,r)])),

w(2,3,text('that',l),lem('that',l),morph([m(type,clb,2),m(pos,sconj,2)]),syn([s(type,cs,0,_)])),

 

w(3,4,text('little',l),lem('little',l),morph([m(type,nonmod,0),m(type,quant,2),m(pos,pron,2),m(degree,abs,0),m(num,sg,2)]),syn([s(func,obj,5,_)])),

w(3,4,text('little',l),lem('little',l),morph([m(type,quant,2),m(pos,det,2),m(type,post,0),m(degree,abs,0),m(num,sg,2)]),syn([s(type,qn,3,r)])),

w(3,4,text('little',l),lem('little',l),morph([m(pos,adj,5),m(degree,abs,0)]),syn([s(type,an,3,r)])),

 

w(4,5,text('bogey',l),lem('bogey',l),morph([m(pos,n,5),m(case,nom,0),m(num,sg,2)]),syn([s(func,subj,5,_)])),

 

w(5,6,text('had',l),lem('have',l),morph([m(pos,v,5),m(tense,past,1),m(type,finite,2)]),syn([s(type,aux,3,f)])),

 

w(6,7,text('been',l),lem('be',l),morph([m(pos,edform,2)]),syn([s(type,aux,3,nf)])),

 

w(7,8,text('exorcized',l),lem('exorcize',l),morph([m(pos,edform,2)]),syn([s(type,main,3,nf)])),

 

w(8,9,text('with',l),lem('with',l),morph([m(pos,prep,2)]),syn([s(func,adv,5,_)])),

 

w(9,10,text('the',l),lem('the',l),morph([m(type,def,3),m(pos,det,2),m(type,central,0),m(type,art,3),m(num,sg_or_pl,1)]),syn([s(type,dn,0,r)])),

 

w(10,11,text('rest',l),lem('rest',l),morph([m(pos,n,5),m(case,nom,0),m(num,sg,2)]),syn([s(type,p,3,l)])),

 

punct(11,12,unkn)],

% punctuation

 

[np(2,3,c(2,3)),np(3,4,c(3,4)),np(3,5,c(4,5)),np(9,11,c(10,11))],

% np-list ; for each np, starting and end position are given, as well as a structure for the head : c(Starting,End)
% note that the np-finder is led into error by some of the parserís choices

 

[cadj('little','bogey'),cdobj('bogey','exorcize'),cdobj('little','exorcize'),cprep(8,'with','rest'),cdobj('rest','exorcize')],

% syntactic function list
% here too the parse-enhancer is led into error by the wrong parses
% e.g. little is not a noun, and cannot be the object of exorcize

 

neg(0),

% polarity flag

 

passive(1),

% voice flag

 

s,

% structural hypothesis

% the whole chunk is a clause (s)

 

$And now that little bogey had been exorcized with the rest !$).

% text chunk


Back to the DEFI Home Page