# Name Tagger

action names | tagNames
resources required | HMM name model
properties | NameTags.fileName NameTags.emitter NameTags.trace NameTags.recordMargin
annotations required | token
annotations added | enamex, numex, timex

The name tagger uses a Hidden Markov Model to identify the names in the text.
The specific tags depend on the name model employed. Jet provides a name model trained from the named-entity training corpus of Message Understanding Conference - 7, and uses the tags adopted for that evaluation. The following tags are used:

annotation type | TYPE feature | significance
ENAMEX | ORGANIZATION | organization name
ENAMEX | PERSON | person's name
ENAMEX | LOCATION | location name
TIMEX | DATE | date
TIMEX | TIME | time
NUMEX | MONEY | monetary expression
NUMEX | PERCENT | percentage

So, for example, a person would be tagged <ENAMEX type="PERSON">John Smith</ENAMEX>.
If the trace property has any non-null value, a one-line message is produced for each name tagged.
If the recordMargin property has any non-null value, the margin for this name tag is assigned as an attribute of the name ... <ENAMEX type="PERSON" margin=5>. The margin is the difference between the log probability of the top ranked hypothesis (which assigned this name tag) and the log probability of the best hypothesis which did not assign this name tag. This can serve as a crude measure of the confidence of the name tag.