Introduction

Table of Contents of this page

  • Introduction to Gellish
  • Table of content of this Wiki

Introduction to Gellish

Gellish is a generic and extensible language for data storage, data exchange and data integration. It enables systems interoperability without the need for data model harmonization or data conversion. Information that is expressed in Gellish is computer interpretable and application system independent. Gellish provides a single way of expressing information about any subject area.

Gellish English is only one of the members of a family of formalized natural languages. The family members share definitions of concepts, whereas in principle, for each natural language the Gellish dictionary is extended with a vocabulary that links each concept to one or more terms (names and synonyms) and optionally textual definitions in that language. In this way vocabularies are created for formalized English, formalized Dutch and in principle for other formalized natural languages.
Gellish expressions include the information that is required for interpreting the meaning of the expressions. This implies that Gellish expressions do not need separate data models or other documentation for their interpretation.

The various kinds of information that can be expressed in Gellish include the expression of knowledge about possibilities, requirements, definitions, as well as information about any individual things, processes and documents and queries about all of that. The value of being a formalized language is that the language is formally defined, so that computer software can unambiguously interpret the meaning from the expressions. In this way Gellish differs from natural language processing (NLP) which do not define a language but try to interpret or generate unconstrained natural language expressions.
Data from non-Gellish databases can be converted to and from Gellish expressions by Gellish enabled software that is driven by Gellish mapping tables. Gellish expressions can be imported, interpreted and stored in (object oriented) database systems and semantic networks for further processing as is demonstrated in the Gellish Communicator reference implementation on GitHub. Queries can be expressed in the Gellish formal languages as well. This eliminates the need for separate query languages.
The structure of Gellish expressions is defined in the document “the Gellish Syntax” which is a tabular standard Gellish Expression Format. It enables storage in any tabular format, such as CSV or JSON.

Another advantage of Gellish is that its definition includes an electronic Taxonomic Dictionary that provides the concepts and terminology of the language, whereas the dictionary is extensible by any user. The power of a taxonomic dictionary is that all defined concepts inherit the knowledge about all their supertype concepts. This greatly simplifies searching and retrieval of information and it eliminates the need for re-specifying knowledge for subtypes of defined concepts. Each concept in the dictionary is identified by a natural language independent unique identifier (UID) whereas the concepts are denoted by various terms (synonyms and translations) in the formalized natural languages. The use of UIDs for representing the concepts independent of language makes that models and data structures become language independent. This enables that information that is expressed in one of the formal languages can be automatically translated by Gellish enabled software from that one formalized language to any other language. 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 or any other language and vice versa. This is possible between any languages for which formal dictionaries are available.

The creation of Gellish expressions is supported by the Gellish Semantic Information Modeling Methodology. This is a consistent methodology that provides guidance on how to express, store and exchange information, knowledge and requirements as collections of high quality semantic expressions that are unambiguous, consistent and by definition integrated.
The Methodology is documented in the book: ‘Semantic Information Modeling Methodology’. The book discusses general principles and guidelines for semantic modeling as well as among others topics such as: A generic integrated information architecture, the creation of taxonomic dictionaries and product catalogs, the expression of knowledge (the modeling of possibilities), the expression of requirements, the creation of information models, such as models of facilities and products as well as processes and activities, including also modeling of 2D drawings and the shapes of 3D objects.

The Gellish Information Management Methodology provides guidance for organizations on a systematic approach for the management, integration and quality control of their information, knowledge and requirements, including data, textual documents, drawings and 3D models.

For information about Gellish in other languages see: Russian and for Dutch speaking people see Gellish Nederlands

Table of content of this Wiki

We recommend to study formalized languages by following the wiki pages in the sequence that is given in the left hand sidebar. A more in-depth treatment of how to express information in Gellish is provided in the book: ‘Semantic Information Modeling Methodology. A more in depth treatment of the language definition and the content of the upper ontology in the Gellish Taxonomic Dictionary is provided in the book: ‘Semantic Information Modeling in Formalized Languages‘.

Table of content of this Wiki:

  1. Home (this page): Why Gellish – A description of the power of Gellish.
  2. Outline of Gellish – An introduction.
  3. Writing Gellish – How to start.
  4. The Semantic Modeling Methodology – Providing guidance on making high quality semantic information models.
  5. The Gellish taxonomic dictionary – The vocabulary of concepts for the Gellish languages with definitions, relations and arranged as a subtype-supertype hierarchy.
  6. Integrated information (models) – An architecture for data integration. For example in Building Information Models (BIM).
  7. Product modeling – Guidance on expressing product information during design operation and maintenance.
  8. Modeling of activities and processes – Including activity planning, scheduling and resourcing.
  9. Document management – Guidance on how to integrate documents (files) into product and process information.
  10. Knowledge modeling – Modeling information about kinds of things and kinds of activities and processes and their reuse in applications.
  11. Requirements modeling – Expression of requirements that are applicable in specific contexts.
  12. Product type modeling – Guidance on expressing information about product catalogue items.
  13. Verification of Gellish expressions – Rules that can be implemented in Gellish enabled software to validate expressions.
  14. How to write Gellish enabled software – Guidance on writing Gellish enabled applications and databases.
  15. Example software – the Gellish Communicator – A reference application that demonstrates capabilities of Gellish and provides example application software.
  16. The Gellish Expression Format: – The Gellish syntax and contextual facts. Typically a tabular format in CSV or JSON.
  17. Universal semantic databases – Characteristics of Gellish enabled database systems.
  18. Dictionary Extension – Guidance on proper definitions of concepts for public or proprietary extensions of the taxonomic dictionary.
  19. Rules for names of concepts – Recommended naming conventions for concepts in the taxonomic dictionary.
  20. Gellish messages – The structure of messages for data exchange.
  21. Queries in Gellish – Using Gellish as a query language for querying Gellish enabled databases.
  22. A Gellish Semantic Web – Extending the Semantic Web with Gellish as a common language.
  23. Verification of designs – Guidance on how product design information that is expressed in Gellish can be verified automatically using requirements that are also expressed in Gellish.
  24. Automatic translation – How Gellish expressions can be presented in various languages.
  25. Change Management – About keeping track of history and modifications of Gellish expressions.

Note that each Wiki page has its own table of content about the details on that page.

Continue with: Formalized languages.