A General Tool for Anaphora Resolution - GuiTAR (v1.1)
Download the file gtar1.1.zip and extract the contained files to a working directory.
Files withing the zip:
Version 1.2 of GuiTAR: gtarBeta1.2.jar
Just substitute file gtar1.1.jar referred to below with this one, gtarBeta1.2.jar, and everything else should work as before.
The new version includes a few bug fixes related to determining the agreement features of noun phrases.
New version (3.0.3) of GuiTAR
B. Running an Example under Linux
(though with slight changes of the scripts they should run under Windows as well, as long as a corresponding version of
ltchunk is also available - see below)
First make the two scripts executable as follows:
chmod 700 txtToXML
chmod 700 txtXMLPipeline
Download the following short sample text file bbcexcerpt.txt.
Then follow these steps:
I. Preprocessing-phase 1: Text-to-XML Conversion
(Here is an alternative to this step, which uses Charniak's full parser instead. Thus after using this alternative converter, you should continue with 'Preprocessing-phase 2' below and skip 'Preprocessing-phase 1'.)
txtToXML bbcexcerpt.txt bbcexcerpt.xml
The script does two things:
1. Calls another script txtXMLPipeline which produces (in this example) the file bbcexcerpt.xml
2. Runs class XMLTokeniser to produce the following file tagged.bbcexcerpt.xml (for this example)
Note: The script txtXMLPipeline makes an external call to ltchunk, a chunker which is part of the LT-XML suite of tools
developed by the University of Edinburgh's LTG.
To my understanding an evaluation copy may be requested from them and also an online demo is available at
I presume the online demo might be used in this example, only the corresponding processed text as defined by the flow of
the script (the pipeline) should be pasted into the text box and then the resulting text (processed by ltchunk) should be
passed over to the next steps of the script.
II. Preprocessing-phase 2: Syntactic heuristics
java -cp gtar1.1.jar uk.ac.essex.malexa.nlp.dp.GuiTAR.prepro.PreProSyntacticHeuristics tagged.bbcexcerpt.xml
Number of NEs: 26
For every ne marked-up by the chunker this class does the following:
1. Adds four attributes: np type and the three np agreement features - person, number and gender.
2. Markes-up the premodifiers
3. Markes-up the head
4. Markes-up the postmodifiers
The resulting file is masxml.tagged.bbcexcerpt.xml, which is compliant with the format MAS-XML.
III. Anaphora Resolution
java -cp gtar1.1.jar GTAR_Runner masxml.tagged.bbcexcerpt.xml > general.log
Spooled into file general.log.
This is the actual anaphora resolution module, which takes as an input a MAS-XML compliant file and adds new mark-up
holding anaphoric information ( elements). The resulting file for this example is
IV. Anaphora Resolution Evaluation
This example does not make use of the evaluation module which is also included in the jar file, because the text file
employed in the example has not been annotated, thus no reference annotation is available. If a reference annotation is
available it should come in a MAS-XML compliant file with additional elements holding the anaphoric information (the
format is exactly the same as for the elements added by the system, the only difference being the tag name
The following command may be issued to invoke the evaluation module:
java -cp gtar1.1.jar GTAR_Evaluation masxml.referenceAnnotation.xml > performance.log
Then performance.log may be imported to Excel using the symbol ^ as field separator.
Finally here is the (fairly complete, but a bit out of date :-) API specification of the system (generated by javadoc including private methods).
Source code also available here released
under the GPL Licence.
Feedback most welcome! (contact)
Last updated: Jan 2007.