Create your own awesome maps

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account?
Log In

NLPA Controlled Language by Mind Map: NLPA Controlled Language
0.0 stars - reviews range from 0 to 5

NLPA Controlled Language


Every card is inserted into every slot.

If there is a card X1 then if there is a slot X2 then the card X1 is inserted into the slot X2.

[] [A] object(A,card,countable,na,eq,1)-1/2 => [] [B] object(B,slot,countable,na,eq,1)-1/7 => [C,D] property(C,inserted,pos)-1/4 predicate(D,be,A,C)-1/3 modifier_pp(D,into,B)-1/5

Mary cuts the card with the scissors.

[A,B,C] object(C,card,countable,na,eq,1)-1/4 object(B,scissors,countable,na,eq,1)-1/9 predicate(A,cut,named(Mary),C)-1/2 modifier_pp(A,with,B)-1/5

The man inserts the card with the code.

There is a man X1. The man X1 inserts a card with a code.

warning anaphor 1 The definite noun phrase 'the man' does not have an antecedent and thus is not interpreted as anaphoric reference, but as a new indefinite noun phrase.

[A,B,C,D] object(D,man,countable,na,eq,1)-1/2 object(C,card,countable,na,eq,1)-1/5 object(B,code,countable,na,eq,1)-1/8 predicate(A,insert,D,C)-1/3 modifier_pp(A,with,B)-1/6



John sees Jack. He is busy today.

reference "he" is ambiguous

in natural languages, resolve from context

even regular phrases: "the car", "a car"... which do they refer to?

possible rule: most recent grammatically feasible match

NB: incorrect anaphora hard to detect automatically

predefined vocabulary

predefined function words ("the", "for", "with", etc.)

predefined phrases "it is false that..." "it is possible that..."

predefined content words with ambiguities resolved


well defined syntax (parseable)

subset of regular English

fairly powerful subset


sentences frequently are ambiguous

"A customer inserts a card with a code."

Is that instrumental or a property?

resolution, could define "always instrumental", some exceptions

NB: errors in resolution by making a canonical choice is hard to detect automatically

controlled language

general view

language encodes knowledge

knowledge is logical statements about the world

"Every human being has a father and a mother. John is a human being". Does John have a father?"

machine translation view

translate statements in the source language into logical statements

translate logical statements back into target language

i.e., transfer-based MT with logic as intermediate


which language should we use?

first order logic?

temporal logic?

Bayesian statistics?


use something "like" natural language to express knowledge

instead of second-guessing meaning of natural language, control the language so that it remains intelligible but is more readable to machines

detect and signal errors

lots of interest

ontologies for the semantic web

automatic translation of instruction manuals etc.

automatically analyzable engineering and software specifications


a lot of language *is* about things that can be expressed as logic

a lot of language can be interpreted as logical statements simply syntactically


the logical content of language requires context and background knowledge to extract; it's not just parsing

a lot of language probably isn't about things that can be expressed in terms of logical statements

two forms

formal controlled languages: they have an exact syntax and semantics (but look natural), Clone, Attempto

informal controlled language: recommendations for making language more suitable for a particular purpose, but not formally specified, Basic English, used for broadcasts, international language, E-prime, no use of "to be", "The film was good." -> "I liked the film.", limit of "they", "the ____", etc., *"Most people say...", "X is Y" -> "X remains Y", "X equals Y", "X becomes Y"

online translation

simplify! you can use controlled language yourself.

The car driven around the lot stopped., Das Auto auf der viel gefahren gestoppt.

The car was driven around the parking lot. The car stopped., Das Auto wurde auf dem Parkplatz gefahren. Der Wagen hielt

simplify, stick to unambiguous words, use simple grammatical structures, limit anaphora, make them unambiguous

traditional attempts

simple English / basic English


COBOL, SQL, etc.


interesting questions

how would law, contracts, science, politics change if language was clear, logical, and unambiguous

what could we do if we could capture knowledge as found in Wikipedia?

can we translate regular English into controlled English?


controlled language has become more popular recently

not that much used for machine translation yet, few tools

examples, Gellish, Attempto

think about

simple parsers for controlled languages

controlled languages as an interlingua

English -> controlled, having well-defined, unambiguous meanings for texts would be useful in many contexts, not just MT, as a semantics checker (how would people interpret this?), as a binding definition of the meaning of the text (e.g., for laws)