Mirror of the Rel4tion website/wiki source, view at <http://rel4tion.org>

[[ 🗃 ^yEzqv rel4tion-wiki ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/yEzqv

SSH: git clone USERNAME@vervis.peers.community:yEzqv

Branches

Tags

master :: projects / idan /

layers.mdwn

Layers

While designing Razom I had several layers and many components and aspects inside them. I’m going to re-iterate and eventually write final full designs, but at the moment I want to describe layers from a perspective of learning and analysis, rather than from a design perspective like then.

1

The first layer may be called the logical layer. Information is represented as a set of quadruples or in short quads, in which the order matters and each component of the four has a unique role. Each such quad is called a Statement. The 4 components of each statement are:

This quad model may therefore be referred to as the ISPO model.

The meaning of a statement is as follows: The Identifier is just a way to refer to the statement and does not participate in the iternal meaning of the statement as a separate unit. The meaning comes from the other three parts: The Predicate represents a relation between the Subject and the Object. The statement describes the Subject by saying that it relates through Predicate to some other entity, which is the Object.

In order to define which values these components can have, two abstract data types exist: Resource and Value. Resources are information items described by the graph itself, while values are fundamental predefined entities used as a basis for describing resources. Resources are referred to by unique identifiers or in short uids. Values are referred to by literals.

Since statements are defined in the graph, they are certainly not predefined, therefore each Identifier must be a uid. The subject is by design described by the graph, so it much be a uid as well. The model doesn’t define any predicates predefined on the logical level, so the predicate must be a uid too. The Object is allowed to be either a uid or a literal, e.g. a number.

2

The second layer is where the Smaoin ontology is used. The notions Class, Property and Type are defined here, as well as all the related properties and basic logic required to use them. Also, convenient tools such as Group and List are defined here.

3

So far there are enough tools to express information, but one fundamental thing is still missing: Making the information suitable for humans. Since the uids are generally meaningless random strings, raw quads from the graph don’t make much sense. In order to allow humans to create and understand the information, human interface concepts much be added to the model.

First we need fundamental tools to express or describe pieces of information in human language. The String and Character types already exist, but they are still just abstract symbols and sequences, with nothing being mentioned about descriptions or languages or names or any other human language concept. Therefore the following tools are introduced:

On this basis we now need to build two kinds of tools: Tools for understanding information, and tools for defining it. Therefore the following tools are introduced:

[See repo JSON]