Distributed Gellish

Gellish Messages

Exchange of data between computer systems can be done basically in two ways:

  1. Without meta data embedded in the message.
  2. With meta data embedded in the message.

A Gellish Message without embedded meta data means that the message (or file) only consists of one or more Gellish expressions tables, whereas the information about the intention of sending the file is not part of the file itself or it should be interpreted from the Gellish content. In that case such meta data is typically exchanged in another way. For example in the form of human readable text in an e-mail of which the exchange file is an attachment.

A Gellish Message with meta data embedded in the message means that the electronic message typically consists of three sections: a message envelop, a message header and a message body. The message envelop and header are not expressed in Gellish, but according to a formal standard data exchange protocol, such as the SOAP protocol. The message body is formed by a collection of Gellish expressions, similar to rows in a table in Gellish expression format. When the SOAP protocol is used, the Gellish message is exchanged in XML format. Other protocols use JSON.

A Gellish messages can also be a Gellish query for data from a Gellish enabled database or it can be a response to a query in a dialogue. This can be in a one-to-one communication to query a single database, but it can also be in a peer to peer network of Gellish enabled applications in which a query is distributed to a number of ‘engines’ that have access to Gellish enabled databases or to a decentralized Gellish enabled distributed database.
The architecture of such a peer-to-peer network of a distributed Gellish environment is illustrated in the figure below.

Continue with Querying a Gellish enabled database