See also: full discussion of the elements and attributes in NXT configuration files.

There are three built-in and configurable end user GUIs as described here. To configure them you need to understand a little about the NXT metadata file format, and rather more about the configurable tool specification file format, explained here. We will proceed by example, highlighting the use of one particular tool but linking to examples of the others.

Step 1: Edit your metadata file

Decide what you want to code and which tool you want to use. Add something like this to the callable-programs section of your metadata file:

 <callable-program description="Named Entity Annotation" name="">
    <required-argument name="corpus" type="corpus"/>
    <required-argument name="observation" type="observation"/>
    <required-argument name="config" default="myConfig.xml"/>
    <required-argument name="corpus-settings" default="my-corpus-settings-id"/>
    <required-argument name="gui-settings" default="my-gui-settings-id"/>

This tells NXT to allow the use of the built-in Named Entity coder on this corpus. When you start up NXT on this metadata, a new entry will appear called "Named Entity Annotation". The required-arguments require first that the corpus (metadata file name) is passed to the tool and than an observation is chosen by the user. The third required argument, config tells NXT where to find the configuration file for this tool, relative to the metadata, and the last two tell it which settings to use within that file (see below).

The other built-in tools at the time of writing are called:

and those can be added to the callable-programs section in exactly the same way.

Step 2: Create or edit your configuration file

Configuration files can look complicated but the requirements to get started are really very simple. One example configuration file is included in the NXT distribution as lib/nxtConfig.xml. It's also included here for reference. It contains extensive comments about what the settings mean. There is also a full discussion of the elements and attributes of the configuration files.

To continue with the above example, here is a configuration file (called myConfig.xml in the same dir as the metadata) that allows the named entity coder to be used:

    <!-- Corpus settings for the ICSI corpus -->
        id                      = "my-corpus-settings-id"
        segmentationelementname = "segment"
        transcriptionlayername  = "words-layer"
        transcriptiondelegateclassname = "net.sourceforge.nite.gui.util.AMITranscriptionToTextDelegate"
        neelementname           = "named-entity"
        neattributename         = "type"
        annotatorspecificcodings= "nees"

        id                      = "my-gui-settings-id"
        gloss                   = "My Corpus settings"
        applicationtitle        = "My Corpus Tool"


Note that we have a corpussettings element with the ID my-corpus-settings-id as referred to in the metadata file, and similarly a guisettings element named my-gui-settings-id. In this way, a configuration file can contain any number of different configurations for different corpora as well as different tools if desired (though normally we have one config file per corpus).

Important settings

More details, examples and explanation coming. See also Javadoc.


Last modified 05/09/06