This package defines a number of features, lexical and syntactic, that are relevant for generation in SimpleNLG.

All features implement the basic interface {@link simplenlg.features.Feature}. All are defined for a category or set of categories to which they apply (for example, the feature Case only applies to pronouns).

Most of the features are enumerated types, with the exception of {@link simplenlg.features.ComplementFrame}, which is a template-like representation of the syntax of complements that a lexical item can take.

Some of the feature enums specify mutually exclusive values. For example, a pronoun can have at most one value of Case. This is not always the case, however. For instance, an adjective can have several values of {@link simplenlg.features.AdjectivePosition}, which specify the different syntactic positions it can occupy in the noun phrase.