Paper · 2015-07-07 · cs.CL
A Survey and Classification of Controlled Natural Languages
Surveys 100 English-based controlled natural languages (CNLs) and proposes the PENS scheme, which rates each language in five classes each for precision, expressiveness, naturalness and simplicity. Finds that CNLs form one scattered cloud between English and propositional logic. A survey with no algorithm or experiments; headline result: the 100-language catalogue and 25 observed PENS classes.
Controlled natural languageSemantic parsingsurveycontrolled-natural-languageclassification
AI-compiled by claude-haiku-5-5 on 2026-11-01, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.
In plain words
A controlled natural language is a version of an everyday language, here English, with deliberate rules that remove ambiguity or complexity. The rules are there so that people can read the text more easily, so that machines can translate or process it, or so that it can stand in for a formal notation. Over the decades many such languages were designed, under many names, and it was not clear what they had in common.
This paper gathers them, proposes one definition, and sorts them with a simple four-part scale: how precise the language is, how much it can express, how natural it looks, and how simple its complete description is. Placed on that scale, the languages spread out between plain English and pure logic. The paper is a map of the field and a checklist for someone designing a new one, not a method to run.
TL;DR
A survey, not a method: it defines a controlled natural language (CNL), gives a four-dimension classification (PENS) with five classes per dimension, and catalogues 100 English-based CNLs. Nothing here trains or runs. Use it to find prior CNLs for a use case, to place a language on the PENS scale, or to check how a design decision was handled before. Its counts and classes are the author's judgment from published sources available up to about 2013.
Problem
Many languages are called "controlled", "simplified", "structured" or "restricted" English, and the names do not agree on what the languages are §1. Existing definitions were biased toward one purpose: some covered only human-readable technical writing, others only machine-processable languages §2.1. Subset in the strict mathematical sense does not fit, because many CNLs add notation or deviate from the base grammar §2.1. Without a shared definition and classification, a designer cannot tell how much prior work exists for a given purpose §5.5, §6.
Method
The paper makes four contributions. Each is described below and cited to its section.
-
Definition. A CNL is a language that (1) is based on exactly one natural language, (2) is more restrictive than that base in lexicon, syntax and/or semantics as its main difference, (3) keeps most natural properties so that base-language speakers can understand it to a substantial degree, and (4) is explicitly constructed, not the product of natural change. A short form keeps the constructed, base-language, more-restrictive and natural-preserving elements §2.1, long and short definitions. Property 3 is deliberately vague; the paper later makes it concrete as naturalness class N3 or higher §3.3. Terms the paper separates from CNL: sublanguages (arise naturally), fragments of language (identified rather than defined), style guides, phraseologies, controlled vocabularies, and constructed languages in the broad sense §2.2.
-
Nine environment properties. The paper collects nine clear-cut labels that describe the application environment rather than the language itself §2.3, tab. 1:
Code Property c comprehensibility is the goal t translation is the goal f formal representation (including automatic execution) is the goal w intended to be written s intended to be spoken d designed for a specific narrow domain a originated in academia i originated in industry g originated in government The paper says any two can overlap, and every language must be w or s (not neither) §2.3. The life-cycle (birth, discontinuation) is tracked where known §2.3; the paper treats the life cycle as a separate, non-classifying aspect.
-
PENS scheme. Four dimensions describe the language itself §3:
- Precision (P): how much meaning follows from the text alone. P1 is imprecise (natural languages); P5 has fixed semantics §3.1.
- Expressiveness (E): the features a language supports, from five listed: universal quantification over individuals, relations of arity above 1, general rule structures, negation, and second-order universal quantification §3.2. E1 has none of (a) and (b) or lacks one of them; E2 has (a) and (b); E3 adds (c) and (d); E4 adds (e); E5 is maximal (natural language) §3.2. The paper uses a weaker, procedural notion of expressiveness: a construct counts if its removal would force a global reorganisation of the program §3.2.
- Naturalness (N): how natural the language looks and reads. N1 is unnatural symbols and brackets; N4 is valid natural sentences; N5 is natural texts as well §3.3.
- Simplicity (S): the page count of an exact, comprehensive description of syntax and semantics, in one-column format, about 700 words per page. S5 fits on one page; S4 needs more than one and up to ten; S3 needs more than ten; S2 and S1 cannot be fully described §3.4.
The scheme has 5^4 = 625 combinations. For example, English is P1 E5 N5 S1 and propositional logic is P5 E1 N1 S5 §3. The paper states that PENS describes languages and does not rank them §3.4.
A CNL, by the definition in step 1, must have N3 or higher. Languages at N1 or N2 are therefore not CNLs §3.3. The comparison languages in §4.2 include N1 propositional logic, which confirms this boundary.
Pseudocode for storing a language's classification (not in the paper, but built from its definitions):
# Record for one language on the PENS scale [§3] [tab. 2]
# Input: name, four classes 1..5, environment property codes
# Output: record; is_cnl() applies the naturalness boundary
def pens_record(name, precision, expressiveness, naturalness,
simplicity, props):
# Each dimension has five classes, 1 (low) to 5 (high) [§3]
for value in (precision, expressiveness, naturalness, simplicity):
assert 1 <= value <= 5
# Property codes from the nine-code list [§2.3] [tab. 1]
return {
"name": name,
"pens": (precision, expressiveness, naturalness, simplicity),
"props": set(props),
}
def is_cnl(record):
# Naturalness N3 or higher, per the paper's reading of the
# definition's property 3 [§3.3] [§2.1]
return record["pens"][2] >= 3- Survey and analysis. The paper lists 100 English-based CNLs in an appendix with short descriptions §4, app. A. Twelve are described in more detail: Sowa's syllogisms, Basic English, E-Prime, Caterpillar Fundamental English, FAA Air Traffic Control Phraseology, ASD Simplified Technical English, Standard Language (SLANG), SBVR Structured English, Attempto Controlled English, the Drafter language, E2V, and Formalized-English §4.1. Five comparison languages are English, propositional logic, first-order logic, COBOL and Manchester OWL syntax, which are not CNLs by definition §4.2. Each language gets a PENS class and property codes; the paper makes a best guess where information is scarce §4. Analysis covers PENS class distribution, correlations between dimensions, property statistics, design guidance, a timeline of 1930 to 2014 fig. 2, and a review of evaluation studies §5.1–5.5.
Hyperparameters
This survey trains nothing, so the table lists the scheme's fixed parameters.
| Name | Value | Where | Notes |
|---|---|---|---|
| classes per PENS dimension | 5 (numbered 1 to 5) | §3 | the paper says five is a middle ground and somewhat arbitrary |
| PENS combinations | 625 | §3 | 5^4; 25 observed in the survey §5.1, tab. 2 |
| expressiveness features | 5 (a to e) | §3.2 | features must be integral to the language, not special cases |
| naturalness threshold for a CNL | N3 or higher | §3.3 | interpretation of property 3 of the definition |
| simplicity page thresholds | S5: one page; S4: >1 to 10; S3: >10 | §3.4 | S2 and S1: no exhaustive description possible |
| words per page for simplicity | about 700, one column | §3.4 | the paper's convention |
| CNLs catalogued | 100 | §4 app. A | "exactly" this number is stated; the appendix list is not re-counted here |
| CNLs described in detail | 12 | §4.1 | sample chosen for influence, documentation and difference |
| comparison languages | 5 | §4.2 | not CNLs by definition |
| survey time span | 1930 to 2014 | fig. 2 | timeline axis |
Results
Author-reported. The survey has no baseline; the comparisons are with earlier
surveys and the paper's own internal analysis. Source data for the table below
is in data.tex in the paper's source tab. 3. Averages are per property,
over the catalogued CNLs.
| Property | Languages | Avg P | Avg E | Avg N | Avg S | Source |
|---|---|---|---|---|---|---|
| all catalogued CNLs | 100 | not stated | not stated | not stated | not stated | §4 |
| c comprehensibility | 45 | 2.0 | 4.3 | 4.7 | 1.2 | tab. 3 |
| t translation | 22 | 2.0 | 4.8 | 5.0 | 1.1 | tab. 3 |
| f formal representation | 54 | 4.4 | 2.3 | 3.8 | 3.2 | tab. 3 |
| w written | 93 | 3.3 | 3.5 | 4.3 | 2.3 | tab. 3 |
| s spoken | 7 | 2.0 | 1.6 | 3.4 | 1.9 | tab. 3 |
| d domain-specific | 53 | 2.8 | 3.5 | 4.4 | 1.9 | tab. 3 |
| a academia | 50 | 4.3 | 2.5 | 3.9 | 3.1 | tab. 3 |
| i industry | 43 | 2.3 | 4.3 | 4.7 | 1.4 | tab. 3 |
| g government | 10 | 2.4 | 2.5 | 3.8 | 2.0 | tab. 3 |
Other headline findings, all as stated by the author:
- The 100 CNLs cover 25 distinct PENS classes out of 625 §5.1, tab. 2. Classes are "widely scattered", and the paper calls them one connected cloud rather than separate groups §5.1, fig. 1.
- Spearman rank correlations between dimensions, computed on individual languages and excluding comparison languages: precision with simplicity ρ = 0.90; expressiveness with simplicity ρ = −0.82; naturalness with expressiveness ρ = 0.77; naturalness with simplicity ρ = −0.76; precision with naturalness ρ = −0.67; precision with expressiveness ρ = −0.66 §5.1. No significance values are reported in the text.
- Over 90% of catalogued CNLs are intended to be written; seven are intended to be spoken, six of them governmental §5.2.
- Comprehensibility and translation CNLs are mostly domain-specific and industrial and score higher on E and N; formal-representation CNLs are mostly academic and score higher on P and S §5.2.
- Evaluation studies report, for comprehensibility, a significant gain for AECMA Simplified English in two studies and a non-significant result in another; for translation, a reported five-to-one gain in translation time for MCE and a 20 percent post-editing time reduction for CLCM; for formal-representation tools, usability and comprehension results that are mixed for Rabbit §5.5.
- The 12 described CNLs and the classes assigned to them are listed in tab. 2 and the text of §4.1.
Paper vs code
No official code.
The paper links only a CSV data file at purl.org (/tkuhn/cnlsurvey/data)
§4, footnote. The arXiv metadata has no comment field. No project page is
linked. A GitHub repository search for "cnlsurvey" and for "controlled natural
language survey PENS" returned no results. No discrepancies between paper and
code apply, because no code exists. The CSV data file was not fetched or
checked for this card.
Pitfalls
- Survey, not method. There is no algorithm to implement. An agent using this card to build a CNL should expect to make many design decisions itself; the paper says so §5.3.
- Classes are best guesses. The paper assigns a best guess where information is missing §4. It also states that information about industrial CNLs is scarcer than about academic or governmental ones, so industrial languages that the survey missed are likely §5.2. Treat the distribution as a lower bound on coverage, not a census.
- Properties are not popularity. Counts treat all languages equally and do not weight how mature or widespread they are §5.2.
- PENS describes, does not rank. A higher score on one dimension does not make a language "better" §3.4.
- Five classes are coarse. Two languages in the same class can differ more than two in adjacent classes §3.4.
- Simplicity is a page-count proxy. It depends on whether an exact description can be written at all, which the author judged, and on a 700 words-per-page convention §3.4. Two different authors could place a language in different classes.
- Averages and correlations. The paper excludes comparison languages from the correlations §5.1. It does not say whether they are excluded from the property averages in tab. 3; treat that as not stated.
- Snapshot date. The paper was submitted in October 2012, revised in March 2013 and accepted in April 2013 [front matter]. Later CNLs are not covered, and the timeline ends in 2014 fig. 2.
- Expressiveness is weaker than in logic. The paper uses a procedural notion (removal would force global reorganisation of the program) rather than the usual logic definition. Compare languages only within this scheme §3.2.
- Naturalness boundary. Property 3 of the definition is operationalised as N3 or higher. Languages at N1 or N2 are excluded §3.3, which is why the comparison set includes N1 propositional logic §4.2.
- Evaluation evidence is thin. The paper calls the evidence "good" for each type but reports mixed and non-significant results for some CNLs, and says success depends on domain, users and design quality §5.5.
- Licensing of the source. CC BY 4.0. The paper contains no figures reproduced here; figures are described, not copied.
Lineage
- Builds on: prior definitions of controlled language and sublanguage by Kittredge and colleagues, Fuchs and colleagues, and O'Brian, which the paper uses to show the subset definition is too strict §2.1. The human-oriented versus computer-oriented split comes from Huijsen §2.3. The PENS dimensions start from the author's doctoral thesis, where the first dimension was called "clearness" §3.
- Compared against: Pool's earlier survey of 41 CNLs in various natural languages §6.
- Superseded by: not stated in the paper, and no later card in this wiki supersedes it.
Source and license
Adapted from “A Survey and Classification of Controlled Natural Languages” by Tobias Kuhn (arXiv:1507.01701), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors.