User Tools

Site Tools


basic_principles

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
basic_principles [2018/09/20 23:47]
andries Examples added in tabular form
basic_principles [2018/11/10 22:32] (current)
andries [6. Use of synonyms, phrases and inverse phrases]
Line 1: Line 1:
 ====== How to start writing Gellish ======= ====== How to start writing Gellish =======
  
-Using Gellish can start in two ways: 1. Starting by expressing information in Gellish and 2. Starting by building software that can produce or read and interpret Gellish expressions. ​+Using Gellish can start in two ways: \\ 
 +1. Starting by expressing information in Gellish and \\ 
 +2. Starting by building software that can produce or read and interpret Gellish expressions. ​\\
 Understanding the first is required for starting the second. Therefore this section gives guidance on how to start making Gellish expressions. At the same time it describes a number of basic principles that are applied in Gellish.\\ Understanding the first is required for starting the second. Therefore this section gives guidance on how to start making Gellish expressions. At the same time it describes a number of basic principles that are applied in Gellish.\\
  
-The easiest way to start is by copying a Gellish expression format table from an existing table. For example, by copying one of the tables that are available in the download area or from the tables available in the Gellish project on GitHub. Such a table can be extended or simplified according to the options that are described in the document '​Gellish ​syntax ​and contextual facts'. Another option is to copy the full Gellish expression format table definition from the Expr_Table_Def.py module source code software, written in Python on GitHub.\\+The easiest way to start is by copying a Gellish expression format table from an existing table. For example, by copying one of the tables that are available in the download area or from the tables available in the Gellish project on GitHub. Such a table can be extended or simplified according to the options that are described in the document '​Gellish ​Syntax ​and Contextual Facts', which is [[http://​wiki.gellish.net/​gellish_expression_format|summarized in this wiki]]. Another option is to copy the full Gellish expression format table definition from the Expr_Table_Def.py module source code software, written in Python on GitHub.\\
  
 ====== 1. Expression of ideas by relations ====== ====== 1. Expression of ideas by relations ======
  
-A core principle of the Gellish language is the observation that any idea can be expressed as a collection of one or more binary relations, being relations between two objects. This is the ORO principle: the Object-Relation_type-Object principle (where '​Object'​ is interpreted in its widest sense). That principle is supported by the observation that complex ideas can be expressed as collections of binary relations, while adopting ​that complex ​idea is an object ​in its own right. For example, activities and processes are '​objects'​ that are interactions between multiple objects, whereas ​they can be modeled by a collection of binary involvement relations, each of which expresses the way in which an object ​is involved in the activity or process. \\+A core principle of the Gellish language is the observation that any idea can be expressed as a collection of one or more binary relations, being relations between two objects. This is the ORO principle: the Object-Relation_type-Object principle (where '​Object'​ is interpreted in its widest sense). That principle is supported by the observation that simple as well as complex ideas can be expressed as collections of binary relations, while taking into account ​that complex ​ideas are objects ​in their own right. For example, activities and processes are '​objects'​ that are interactions between multiple objects, whereas ​those interactions ​can be modeled by a collection of binary involvement relations, each of which expresses ​the role that an object plays, or the way in which it is involvedin the activity or process. \\
 Thus expressing information in Gellish begins with chopping the information in binary relations, each relating two objects, and selecting the appropriate kind of relation.\\ Thus expressing information in Gellish begins with chopping the information in binary relations, each relating two objects, and selecting the appropriate kind of relation.\\
 Examples are:\\ Examples are:\\
Line 16: Line 18:
 |Paris |is classified as a| city|\\ |Paris |is classified as a| city|\\
  
-There are a large number of such standard kinds of relations defined in the Gellish language. Those kinds of relations form the basic grammar of Gellish and the fact that they are standardized make that software can build on their meaning, which makes the language computer interpretable and system independent. The standard kinds of relations are defined in the [[:Gellish English Dictionary]],​ together with the other dictionary concepts and terms. The number of kinds of relations and other concepts is not limited to the current dictionary, because the [[:Gellish Modeling Methodology]] includes a specification of how the dictionary can be extended with additional concepts and relation types. For example, if the Eiffel tower or Paris or an appropriate relation type would not yet exist in the Gellish English Dictionary, then they can be added in a Domain Dictionary or as proprietary extensions. All the Gellish expressions can be stored and exchanged using the standard [[:Gellish Databases|Gellish Expression]] format.+Searching for the proper kinds of relations in the various expressions implies searching the [[:Gellish English Dictionary|Gellish Dictionary]] for kinds of relations and their subtypes and the phrases by which they are denoted. Therefore it is advisable that users shall have access to a tool that enables searching the Dictionary. ​There are a large number of standard kinds of relations defined in the Gellish language. Those kinds of relations form the basic grammar of Gellish and the fact that they are standardized make that software can build on their meaning. This makes the language computer interpretable and system independent ​and it enables making ​the software reusable  
 +The number of kinds of relations and other concepts is not limited to the current dictionary, because the [[:Gellish Modeling Methodology]] includes a specification of how the dictionary can be extended with additional concepts and relation types. For example, if the Eiffel tower or Paris or an appropriate relation type would not yet exist in the Gellish English Dictionary, then they can be added in a Domain Dictionary or as proprietary extensions. All the Gellish expressions can be stored and exchanged using the standard [[:Gellish Databases|Gellish Expression]] format.
  
 Furthermore,​ it is recognized that in a binary relation each of the related objects plays a particular role of a particular kind. Therefore, an extended expression of a fact in Gellish includes those (kinds of) roles and thus becomes: Object-First_role-Relation_type-Second_role-Object. For example, the fact that ‘the Eiffel tower is located in Paris’ is expressed as relation between the Eiffel tower and Paris, which relation is classified by the standard Gellish relation type called <is located in>. Furthermore,​ the Eiffel tower plays the role of //located// and Paris plays the role of //​location//​ in that relation.\\ Furthermore,​ it is recognized that in a binary relation each of the related objects plays a particular role of a particular kind. Therefore, an extended expression of a fact in Gellish includes those (kinds of) roles and thus becomes: Object-First_role-Relation_type-Second_role-Object. For example, the fact that ‘the Eiffel tower is located in Paris’ is expressed as relation between the Eiffel tower and Paris, which relation is classified by the standard Gellish relation type called <is located in>. Furthermore,​ the Eiffel tower plays the role of //located// and Paris plays the role of //​location//​ in that relation.\\
Line 45: Line 48:
 ====== 4. Standard data structure: the Gellish Expression format ====== ====== 4. Standard data structure: the Gellish Expression format ======
  
-The structure of Gellish expressions (its syntax) is intended to enable the expression of ideas of any kind. The development process of various ISO standards has revealed ​that there appears to be a generic structure that is suitable for expressing any kind of ideaThus, every expression has basically the same generic structure, although there are a large number of optional elements. Furthermore,​ it appears to be possible to model that structure in a single table. As a result, the Gellish Expression format consists of only one precisely defined table. The core of the structure is illustrated by the examples in Table 1.+The structure of Gellish expressions (its syntax) is intended to enable the expression of ideas of any kind. It was discovered ​that it is possible to express ideas as collections of binary relations, whereas such relations follows always a basic semantic pattern. As a consequence ​there appears to be a generic structure that is suitable for expressing ​ideas of any kind. This means that every expression has basically the same generic structure, although there are a large number of optional elements ​within that structure. Furthermore,​ it appears to be possible to model that structure in a single table with a number of optional columns. As a result, the Gellish Expression format consists of only one precisely defined table. The core of the structure ​of that table is illustrated by the examples in Table 1.
  
 ^ //Name of left hand object//^ //Name of the kind of relation//^ //Role of the right hand object//^ //Name of right hand object//^ //Unit of measure//^ ^ //Name of left hand object//^ //Name of the kind of relation//^ //Role of the right hand object//^ //Name of right hand object//^ //Unit of measure//^
Line 57: Line 60:
  
  
-Table 1, The [[:Gellish Databases|Gellish Expression]] format with example expressions of ideas+Table 1, Core of the Gellish Expression format with example expressions of ideas
  
-Each line in Table 1 is the expression of a single idea by a binary relation or a combination of binary relations. By default the expressions are interpreted as statements. Each related object plays a particular role or kind of role in a relation of the specified kind. That role or kind of role is determined by the definition of the kind of relation and may be further defined by the related objects. In most cases the roles and kinds of roles remain implicit. For example, in Table 1, the Eiffel tower and Paris are objects that play different roles in the relations of the various kinds. \\ +Each line in Table 1 is the expression of a single idea by a binary relation or a combination of binary relations. By default the expressions are interpreted as assertions (statements). Each related object plays a particular role or kind of role in a relation of the specified kind. That role or kind of role is determined by the definition of the kind of relation and may be further defined by the related objects. In most cases the roles and kinds of roles can remain implicit. For example, in Table 1, the Eiffel tower and Paris are objects that play different roles in the relations of the various kinds. \\ 
-For example the Eiffel tower and Paris play respectively the (implicit) roles '​located'​ and '​location'​ in the third relation. That relation is classified by a kind that is denoted by the phrase ‘is located in’. The Gellish language contains proper definitions of standard ​relation types, such as 'is located in'. Those definitions of kinds of relations include the proper definition of those kinds of roles as well as what kind of things may play roles of such kinds. These definitions enable software to some extent to execute semantic verification of the semantic correctness of the expressions.\\+For example the Eiffel tower and Paris play respectively the (implicit) roles '​located'​ and '​location'​ in the third relation. That relation is classified by a kind that is denoted by the phrase ‘is located in’. The Gellish language contains proper definitions of standard ​kinds of relations, such as 'is located in'. Those definitions of kinds of relations include the proper definition of those kinds of roles as well as what kind of things may play roles of such kinds. These definitions enable software to some extent to execute semantic verification of the semantic correctness of the expressions.\\
  
 The lines that classify ‘Eiffel tower’ as a ‘tower’ and ‘Paris’ as a ‘city’, are examples of classification relations, which relate individual things to known concepts (kinds of things) in the Gellish dictionary. Those classification relations add those individual things as new concepts to the dictionary.\\ ​ The lines that classify ‘Eiffel tower’ as a ‘tower’ and ‘Paris’ as a ‘city’, are examples of classification relations, which relate individual things to known concepts (kinds of things) in the Gellish dictionary. Those classification relations add those individual things as new concepts to the dictionary.\\ ​
Line 66: Line 69:
  
 The line that specifies that the Eiffel tower <has as aspect a> height, called 'the height of the Eiffel tower' shows the use of an additional column in the table to introduce the intrinsic aspect. It should be noted that this statement can be expressed without the need to also have the statement on the fourth line that states that a tower can have a height (meaning that it can have a value for a height in an information model; in reality it has by definition some height). The language definition does not put any constraints on which object can have which kind of aspect. \\ The line that specifies that the Eiffel tower <has as aspect a> height, called 'the height of the Eiffel tower' shows the use of an additional column in the table to introduce the intrinsic aspect. It should be noted that this statement can be expressed without the need to also have the statement on the fourth line that states that a tower can have a height (meaning that it can have a value for a height in an information model; in reality it has by definition some height). The language definition does not put any constraints on which object can have which kind of aspect. \\
-On the last line the (intrinsic) aspect ​is is quantified on a scale by an approximate value, whereas the relation is classified not only as an approximate equality ​of a scale, but is also classified by the quantification method, being the meter scale.\\ +On the last line the (intrinsic) aspect is quantified on a scale by an approximate value, whereas the relation is classified not only as an approximate equality ​on a scale, but the relation ​is also classified by the quantification method, being the quantification on a meter scale.\\ 
-Note that the usage of separate lines for quantification of aspects enables to allocate different values for different moments in time, and in different units or different measurement accuracies or various kinds of relations, such as equality, ​greater than, less than, etc. +Note that the usage of separate lines for quantification of aspects enables to allocate different values for different moments in time, and in different units or different measurement accuracies or by constraining the quantification by various kinds of relations, such as greater than, less than, greater than or equal, etc. 
  
  
-The Gellish expression format defines a number of other contextual binary relations that can be represented in additional column on the same line in the standard table. For example about the author, date of creation etc. The whole format is defined in the document [[http://​gellish.net/index.php/downloads/file/​1-formal-english-syntax-and-contextual-facts.html|The Gellish Syntax and Contextual Facts]]. The definition of the syntax/​format allows for the usage of user defined subsets of binary relations and thus of subsets of columns in expression format tables. It also does not prescribe a particular encoding, although Unicode (utf-8) and CSV or JSON are recommended.\\+The Gellish expression format ​defines UIDs for the above names of concepts and defines a number of other contextual binary relations that can be represented in additional column on the same line in the standard table. For example about the author, date of creationetc. See for more details [[gellish_expression_format|the appropriate page in this wiki]]. The format is defined in the document [[http://www.gellish.net/​downloads/​gellish-syntax-and-contextual-facts-definition-of-universal-semantic-databases-and-data-exchange-messages.html|The Gellish Syntax and Contextual Facts]]. The definition of the syntax/​format allows for the usage of user defined subsets of binary relations and thus of subsets of columns in expression format tables. It also does not prescribe a particular encoding, although Unicode (utf-8) and CSV or JSON are recommended.\\
 Note that Gellish does not prescribe the use of the Gellish Expression format. The separate binary relations that are combine on one line in such a table can also be expressed in other formats, such as RDF or XML. Note that Gellish does not prescribe the use of the Gellish Expression format. The separate binary relations that are combine on one line in such a table can also be expressed in other formats, such as RDF or XML.
  
 ====== 5. Use of standardized kinds of relations ====== ====== 5. Use of standardized kinds of relations ======
  
-The various kinds of relationships are standardized in the Gellish Dictionary and the kinds of relations are the core elements that determine the expression power of the formal language. Expression in Gellish are only correct Gellish expressions if the use kinds of relations that are selected from the Gellish Taxonomic Dictionary. The kinds of relations form a specialization hierarchy (subtype-supertype hierarchy) of kinds of relations to ensure consistency of the language. That hierarchy enables that software can also search for expressions that use more specialized subtypes of kinds of relations. For example, software can automatically search for things that are connected to each other by any kind of connection, but it can also search for welded connections only. The kinds of relations are further ​defined in the dictionary (ontology) by the kinds of roles that they require. Those roles are also explicitly defined and arranged in a specialization hierarchy that is compliant with the hierarchy of the kinds of relations. Finally it is defined which kind of objects can play roles of those kinds, whereas those role players are also defined and arranged in a specialization hierarchy. Together these definitions and hierarchies enable Gellish powered software to verify the correctness ​of Gellish expressions ​and the consistency of the use of the language and it enables the application of logic reasoning during the search to answer questions and queries. \\+The various kinds of relationships are standardized in the Gellish Dictionary and the kinds of relations are the core elements that determine the expression power of the formal language. Expression in Gellish are only correct Gellish expressions if they use kinds of relations that are selected from the Gellish Taxonomic Dictionary. The kinds of relations form a specialization hierarchy (subtype-supertype hierarchy) of kinds of relations to ensure consistency of the language. That hierarchy enables that software can also search for expressions that use more specialized subtypes of kinds of relations ​for expressing meanings more precisely. For example, software can automatically search for things that are connected to each other by any kind of connection, but it can also search for welded connections only. The kinds of relations are defined ​further ​in the dictionary (ontology) by the specification of the kinds of roles that they require. Those roles are also explicitly defined and arranged in a specialization hierarchy that is compliant with the hierarchy of the kinds of relations. Finally it is defined which kind of objects can play roles of those kinds, whereas those role players are also defined and arranged in a specialization hierarchy. Together these definitions and hierarchies enable Gellish powered software to verify the use of kinds of relations in Gellish expressions ​is consistent with the definition ​of the formal ​language and it enables the application of logic reasoning during the search to answer questions and queries. \\
 Some examples of important binary kinds of relations with rather trivial kinds of roles are: Some examples of important binary kinds of relations with rather trivial kinds of roles are:
   * A composition relationship,​ with the roles ‘part’ and ‘whole’.   * A composition relationship,​ with the roles ‘part’ and ‘whole’.
Line 111: Line 114:
 ====== 6. Use of synonyms, phrases and inverse phrases ====== ====== 6. Use of synonyms, phrases and inverse phrases ======
  
-Gellish ​enables the definition of synonyms, abbreviations,​ codes, etc. for names of concepts as well as for names of kinds of relationships. Each term and each alias is defined to belong to the vocabulary of either '​international',​ being the international community, or to a natural language and within that to a 'language community' ​such as a discipline, a standard or an organization. ​Standard synonyms ​are defined in the Gellish Dictionarybut users can define their own terminology as alias that is specific for and the preferred ​term for their organization. ​This means that their organization ​is specified as the language community where the term has its base. The same holds for kinds of relations, ​which are denoted by natural language ​phrases, such as the phrases in the column 'name of kind of relation'​ in Table 3. \\ +The Gellish ​dictionary contains terms as well as synonyms, abbreviations,​ codes, etc. for names of concepts as well as for names of kinds of relationships. Each term and each alias is defined to belong to the vocabulary of a natural language and within that to a **language community** such as a discipline, a standard or a particular ​organization. ​A special '​language'​ is called '​international',​ being reserved for terms that are used internationallysuch as units of measure, chemical formulas, codes, etc. Users can define their own terminology as aliases ​that are preferred ​terms for their organization. ​In the latter case the organization ​should be specified as the 'language community' ​where the term has its base. \\ 
-The way in which synonym phrases are defined for the relation types in the Gellish ​English ​dictionary is illustrated on row 5 in Table 3. Gellish English has also defined inverse Gellish phrases that imply that the left hand and the right hand related objects are inversed. Row 6 of Table 3 shows an example.\\ +Kinds of relations ​have namesbut are usually ​denoted by natural language ​**phrases**, such as the phrases in the column 'name of kind of relation'​ in Table 3. Note that the phrases have a particular reading direction, which means that the left hand and the right hand object have different roles in the relation. In order to make expressions in which the left and right hand objects are switched, Gellish also defined **inverse phrases**. Whether a phrase or an inverse phrase is used (with switched related objects) has no impact on the meaning of an expression. Phrases and inverse phrases are aliases for the names of kinds of relations ​ 
-Translations can be defined in the same way as aliases, but for the definition of bulk translations,​ the Gellish Expression format allows for additional columns ​with special IDs that are reserved ​for terms in a specified ​language.+The way in which the synonym phrases are defined for the relation types in the Gellish dictionary is illustrated on row 5 in Table 3. Row 6 of Table 3 shows an example ​of the definition of an inverse phrase for denoting the kind of relation with the name assembly relation.\\ 
 +Translations can be defined in the same way as aliases, but for the definition of bulk translations,​ the Gellish Expression format allows for additional columns that are dedicated ​for terms in a particular ​language. Such columns have column IDs that are the UIDs of those languages.
  
  
basic_principles.1537480056.txt.gz · Last modified: 2018/09/20 23:47 by andries