Table of content:
Note that each Wiki page has its own table of content about the details on that page.
Table of content:
Note that each Wiki page has its own table of content about the details on that page.
This is an old revision of the document!
The Gellish family of Formalized Languages use the vocabulary of natural languages, whereas its expressions are based on semantics (meaning) and a syntax (expression structure) that is universal and independent of any particular language. As a result Gellish expressions are close to natural languages. Therefore, they are also called Controlled Natural Languages (CNLs). The formalization is realized by building on two observations: 1) The recognition that concepts and the meanings of expressions are basically language independent things, although they are denoted in different languages by different terms and phrases and 2) By the discovery that it is possible to express ideas in a natural language independent way as collections of basically binary relations that are arranged in a network of relations.
The languages of the Gellish family are called formal languages, because they are formally defined, so that computers can unambiguously interpret the meaning from the expressions. Computers cannot do that with natural languages, neither they can do that with databases without precise knowledge about the dedicated data models of those databases. Information that is expressed in a Gellish formal language is computer interpretable and application system independent. It can be generated when exporting data from systems for data exchanged between systems and parties in messages in Gellish and can be imported, interpreted and stored in database systems and files. Queries can be expressed in Gellish formal languages as well. The language has a native standard Gellish Expression format (syntax), although it can also be stored in other formats. The expressions can be unambiguously interpreted when they conform to the Gellish universal basic semantic patterns. To enable natural language independent interpretations, each concept is represented in the Gellish family by a natural language independent unique identifier (UID) and each expression is part of a pattern that complies with the basic semantic patterns and uses concepts that are selected from or added to the Gellish Dictionary. Thus the languages of the Gellish family are based a universal basic semantic structure, a generic syntax and a standardized vocabulary, as is described in this wiki and described in more detail in the book 'Semantic Information Modeling Methodology'.
The Gellish languages are intended for facilitating data integration and the export and import of data exchange messages from and to database systems. Therefore Gellish enabled software is not intended to become natural language interpreters, but only be interpreters of formalized languages in tabular form. This differs from conventional data definitions for databases and for data exchange and data interpretation. Conventionally information analysts, data modelers and programmers use 'data models' to define the structure of data and the meaning of 'instances'. Data models are usually not called 'languages' and input or output is usually not called 'expressions'. However, conventional data models define expressions structures and terminology, which together in fact define some form of dedicated languages. But for example database tables or data exchange files cannot easily be read as natural language expressions. The formal languages of the Gellish family are a step further towards natural languages. In a Gellish Expression table, the information is expressed as collections of expressions, each with a structure that is in essence a binary relation. The core elements of each line in such a table can be read as a (nearly) normal natural language expression. The definition of the Gellish family of languages can be considered equivalent to a very large and flexible data model (actually it is a further development of the generic data model of the ISO 15926-2 standard). The formalization however implies that Gellish expressions do not have the free form that natural languages have.
Gellish can thus be described starting from a conventional data model and generalizing such a model towards the flexibility and capabilities of natural languages. But it can also be described starting from natural languages and adopting simplifications and constraints on the allowed expressions to a level that computer software is able to interpret the meaning of the expressions, apply logic and to act accordingly.
Starting from a natural language, Gellish adopted the following simplifications:
The Gellish family includes natural specific language variants by adding a dictionary that relates the UIDs of the concepts to the terms in a natural language and possibly to synonym terms, codes or abbreviations in a particular language community within that language. In this way the family currently includes Formal English, Formal Dutch and parts of French, German and Chinese language variants. These formal languages thus become semantic modeling languages for the modeling of knowledge, requirements, definitions, queries as well as information about any individual things and individual processes with as objective enabling universal system independent data exchange and data integration. And with one of its advantages that information that is expressed in one natural language variant can be searched and presented in any other language variant for which a dictionary is available.
People implicitly make use of logic when interpreting natural languages. For example, we know that the concept car is a subtype of vehicle. Thus when we talk about a vehicle we know that that may be about a car. In order to enable software to draw similar conclusions when using formal languages it is necessary to include relations between concepts in the definition of the concepts in the formal language. Definitions of concepts therefore relate them to other concepts by standardized kinds of relations. In particular, each concept is defined as a subtype of one or more direct supertype concepts, thus forming a taxonomy of concepts. Gellish formal languages therefore includes an electronic Taxonomic Dictionary that provide the concepts and terminology of the languages, as well as relations of particular kinds between the defined concepts, as far as required for the definition of the meaning of the concepts. Furthermore, every concept is identified by a natural language independent unique identifier (UID). Those UIDs represent the concepts independent of any language. Every concept can be denoted by various terms, names, codes or phrase, as are used by different language communities in different natural languages. Information that is expressed in one of the formal languages include the UIDs of the concepts. This enables that the expressions can be automatically translated from one formal language to another by Gellish enabled software. For example, queries in Formal Dutch, can be executed on databases that are in English, and the queries as well as the results can be presented to users in Dutch and vice versa. This is possible between any languages for which formal dictionaries are available.
The expression power of formal languages is largely determined by the number and variety of kinds of relations (also called relation types) that are available in the language definition. The Gellish formalized language definition includes over 1000 standard kinds of relations. They are defined in the upper ontology section of the Taxonomic Dictionary-Ontology. Their textual definitions and subtype-supertype hierarchy (taxonomy) is documented a computer readable file that itself is written in Gellish. The hierarchy is also available in printed form in the book Taxonomic Dictionary of Relations and in its Dutch equivalent Taxonomisch Woordenboek van Relaties. The definitions of kinds of relations also include specifications of the allowed roles and the allowed role players for the kinds of relations as well as a taxonomy of roles and of role players. Together that defines what are correct formal expressions and how expressions should be interpreted.
The electronic language definition can be licensed, and can then be directly imported in Gellish enabled application systems to enable searching for kinds of relations and for supporting the generation and interpretation of formal language expressions.
Each kind of relation is identified by a unique identifier (its Gellish UID). Furthermore, each kind of relation is denoted by at least one base phrase and by at least one inverse phrase. For example, a part-whole relation between two individual things is denoted in Formal English by the phrase <is a part of> and by the inverse phrases <has as part> and <is a whole for> and has UID 1260. This means that the same statement or idea can be expressed in either of the two ways. For example, the expression 'A <is a part of> B' has the same meaning as the expression 'B <has as part> A'. A kind of relation can also be denoted by alternative phrases, such as <is an assembly of>, or by phrases in other languages. Users may even define their own synonym phrases (provided that the UID remains the same) and they can indicate a 'language' and/or a 'language community' in which their phrase is preferred. For example: the Dutch (Nederlands) equivalent of the name of UID 1260 in the above example is: <is een deel van>.
For creating high quality Gellish expressions skills are required in 'Semantic Modeling', which primarily includes expressing information in the form of collections of binary relations. It also includes using the proper kinds of relations for expressing particular meanings. The search for the proper kinds of relations is supported by two mechanisms: 1) The fact that the kinds of relations are arranged in a taxonomy and 2) The fact that kinds of relations are denoted by phrases that apply logical naming conventions. A method for finding the required kinds of relations is described further in the taxonomy description of the Gellish wiki. The kinds of relations together form a taxonomy, being a subtype-supertype hierarchy of kinds of relations. This implies that all kinds of relations are subtypes of one concept, called relation. The first subtypes of 'relation' are the concepts binary relation and higher order or variable order relation. The binary relations have the following branches in the hierarchy:
Kinds of higher order relations include kinds that represent kinds of occurrences, such as processes, activities and events and kinds that represent correlations, such as for physical laws or geometric and mathematical formula. The expressions that specify which and how objects are involved in occurrences etc. are related to the higher order relations using kinds of binary involvement relations. An example of a kind of activity is project, and an example of an expression that specifies an involvement as a manager is:
For different application area's different kinds of relations are applicable. The definition of a collection of kinds of relations is free available in Gellish expression format in CSV via the download section of this website.
Continue with: Outline of Gellish