Sublanguage


A sublanguage is a subset of a language. Sublanguages occur in natural language, computer language, and relational databases.

In natural language

In informatics, natural language processing, and machine translation, a sublanguage is the language of a restricted domain, particularly a technical domain. In mathematical terms, "a subset of the sentences of a language forms a sublanguage of that language if it is closed under some operations of the language: e.g., if when two members of a subset are operated on, as by and or because, the resultant is also a member of that subset".

In computer languages

The term sublanguage has also sometimes been used to denote a computer language that is a subset of another language. A sublanguage may be restricted syntactically, and/or semantically.

Examples

For instance, ALGOL 68S was a subset of ALGOL 68 designed to make it possible to write a single-pass compiler for this sublanguage.
SQL statements are classified in various ways, which can be grouped into sublanguages, commonly: a data query language, a data definition language, a data control language, and a data manipulation language.

In relational database theory

In relational database theory, the term "sublanguage", first used for this purpose by E. F. Codd in 1970, refers to a computer language used to define or manipulate the structure and contents of a relational database management system. Typical sublanguages associated with modern RDBMS's are QBE and SQL. In 1985, Codd encapsulated his thinking in twelve rules which every database must satisfy in order to be truly relational. The fifth rule is known as the Comprehensive data sublanguage rule, and states: