Controlled natural languages (
CNLs) are subsets of
natural languages that are obtained by restricting the grammar and vocabulary in order to reduce or eliminate
ambiguity and complexity. Traditionally, controlled languages fall into two major types: those that improve readability for human readers (e.g. non-native speakers), and those that enable reliable automatic semantic analysis of the language.