Class

NLTagger

A tagger that analyzes natural language text.

Declaration

@interface NLTagger : NSObject

Overview

NLTagger supports many different languages and scripts. Use it to segment natural language text into paragraph, sentence, or word units and to tag each unit with information like part of speech, lexical class, lemma, script, and language.

When you create a linguistic tagger, you specify what kind of information you're interested in by passing one or more NLTagScheme values. Set the string property to the natural language text you want to analyze, and the linguistic tagger processes it according to the specified tag schemes. You can then enumerate over the tags in a specified range, using the methods described in Enumerating Linguistic Tags, to get the information requested for a given scheme and unit.

Topics

Creating a Tagger

- initWithTagSchemes:

Creates a linguistic tagger instance using the specified tag schemes and options.

string

The string being analyzed by the linguistic tagger.

Getting the Tag Schemes

+ availableTagSchemesForUnit:language:

Returns the tag schemes available for a particular unit (like word or sentence) and language on the current device.

tagSchemes

The tag schemes configured for this linguistic tagger.

NLTagScheme

Constants for the tag schemes specified when initializing a linguistic tagger.

Determining the Dominant Language and Orthography

dominantLanguage

The dominant language of the string set for the linguistic tagger.

- setLanguage:range:

Sets the language for a range of text within the tagger's string.

- setOrthography:range:

Sets the orthography for the specified range.

Enumerating Linguistic Tags

- enumerateTagsInRange:unit:scheme:options:usingBlock:

Enumerates over a given range of the string for a particular unit and calls the specified block for each tag.

NLTaggerOptions

Constants for linguistic tagger enumeration specifying which tokens to omit and whether to join names.

NLTag

A token type, lexical class, name, lemma, language, or script returned by a linguistic tagger for natural language text.

Getting Linguistic Tags

- tagAtIndex:unit:scheme:tokenRange:

Finds a tag for a given linguistic unit, for a single scheme, at the specified character position.

- tagsInRange:unit:scheme:options:tokenRanges:

Finds an array of linguistic tags and token ranges for a given string range and linguistic unit.

Deteriming the Range of a Unit Token

- tokenRangeAtIndex:unit:

Returns the range of the linguistic unit containing the specified character index.

NLTokenUnit

Constants representing linguistic units.

Using Models with a Tagger

- setModels:forTagScheme:

Assigns models for a tag scheme.

- modelsForTagScheme:

Returns the models that apply to the given tag scheme.

Relationships

Inherits From

See Also

Linguistic Tags

Identifying Parts of Speech

Classify nouns, verbs, adjectives, and other parts of speech in a string.

Identifying People, Places, and Organizations

Use a linguistic tagger to perform named entity recognition on a string.