A sublanguage is a
subset
In mathematics, Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they are ...
of a
language. Sublanguages occur in
natural language
In neuropsychology, linguistics, and philosophy of language, a natural language or ordinary language is any language that has evolved naturally in humans through use and repetition without conscious planning or premeditation. Natural languages ...
, computer
programming language, and
relational database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
s.
In natural language
In
informatics
Informatics is the study of computational systems, especially those for data storage and retrieval. According to ACM ''Europe and'' ''Informatics Europe'', informatics is synonymous with computer science and computing as a profession, in which ...
,
natural language processing
Natural language processing (NLP) is an interdisciplinary subfield of linguistics, computer science, and artificial intelligence concerned with the interactions between computers and human language, in particular how to program computers to pro ...
, 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". This is a specific term for what in most linguistic study is referred to a language variety or register.
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 (it accepts a
subgrammar of the original language), and/or semantically (the set of possible outcomes for any given program is a subset of the possible outcomes in the original language).
Examples
For instance,
ALGOL 68S
ALGOL 68S is a programming language designed as a subset of ALGOL 68, to allow compiling via a one-pass compiler. It was mostly for numerical analysis.
Implementations
A compiler for ALGOL 68S was available for the PDP-11, written in the language ...
was a subset of
ALGOL 68 designed to make it possible to write a single-pass
compiler for this ''sublanguage''.
SQL (Structured Query Language) statements are classified in various ways, which can be grouped into sublanguages, commonly: a
data query language
Data Query Language (DQL) is part of the base grouping of SQL sub-languages. These sub-languages are mainly categorized into four categories: a data query language (DQL), a data definition language (DDL), a data control language (DCL), and a data ...
(DQL), a
data definition language (DDL), a
data control language (DCL), and a
data manipulation language (DML).
In relational database theory
In
relational database
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
theory, the term "sublanguage", first used for this purpose by
E. F. Codd
Edgar Frank "Ted" Codd (19 August 1923 – 18 April 2003) was an English computer scientist who, while working for IBM, invented the relational model for database management, the theoretical basis for relational databases and relational da ...
in 1970, refers to a
computer language used to define or manipulate the structure and contents of a
relational database management system
A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
(RDBMS). Typical sublanguages associated with modern RDBMS's are
QBE (Query by Example) and
SQL (Structured Query Language). 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:
: ''A relational system may support several languages and various modes of terminal use (for example, the fill-in-the-blanks mode). However, there must be at least one language whose statements are expressible, per some well-defined syntax, as character strings, and that is comprehensive in supporting all of the following items:''
:* ''Data definition''
:* ''View definition''
:* ''Data manipulation (interactive and by program)''
:* ''Integrity constraints''
:* ''Authorization''
:* ''Transaction boundaries (begin, commit, and rollback)''
References
{{Reflist
Relational model
Language