Computational Semiotic Triangle (I)

Fig. 7 - R3DM first illustration on a Computational Semiotic Triangle

Computational Semiotic Triangle (II)

Fig. 1 - R3DM second illustration on a Computational Semiotic Triangle based on information resources, information representation and information realization

Computational Semiotic Triangle (III)

Fig. 2 - R3DM third illustration on a Computational Semiotic Triangle based on concepts, code and computer storage

Illustration for Triangle of Meaning (I)

Fig. 3 - Illustration of Aristotle's Semiotic Triangle with a real-world object (green leaves)

Illustration for Triangle of Meaning (II)

Fig. 4 - Illustration of Aristotle's Semiotic Triangle with an event (traffic lights)

R3DM Formalization v2.0

  • R3DM is a conceptual model of an information processing system based on semiosis. R3DM fundamental construct is the uniform information RESOURCE (UIR), i.e. a parent class of the following three derived subclasses :

  • A Term Information Resource (TIR) models any concept, subject, topic, idea at a highest level, S3, i.e. sense, context level, of abstraction. TIR is also called the signified information resource

  • On the next, intermediate level, S2 - sign level, a Sign Information Resource (SIR), models the notion of the sign in semiotics. Therefore (TIR) is REPRESENTED by (SIR).

  • Finally at level, S1, i.e. data level, (SIR) conveys information that are encoded inside a data container, i.e. Datum Information Resource (DIR), signifier. The content inside (DIR), i.e. data, is expressed with an atomic or complex data structure and REALIZED with operations on data. Therefore (SIR) is REALIZED by (DIR).

  • In all the levels, S3, S2, S1 of abstraction references are created and maintained for the context of the signified concept (S3), the construction of signs (S2), and for the addressing of containers and the indexing of content that express signifiers (S1). Thus, information resources are REFERENCED differently depending on the level of abstraction by a Reference Information Resource (RIR).

There is also a hidden level S0, machine-system level, where everything is encoded and expressed with a sequence of binary digits but this currently out of our scope.

Fig. 5 - Illustration of R3DM information processing system based on semiosis

Memorizing the formula

In a concise way R3DM can be described in any of the following memorable ways

  • R3DM Edges - Duality of Sign
    • Any Sign at level S2 is correlated to a Signifier at level S1 and the Signified at level S3
  • R3DM Nodes - Triadic Relationship
    • Any information RESOURCE at level S3 can be REPRESENTED at level S2 and REALIZED at level S1 using a different REFERENCE mechanism at each level.
  • R3DM Nodes - Triadic Relationship
  • R3DM Nodes - Triadic Relationship
    • Information RESOURCES are originated FROM level S3, are represented THROUGH level S2 and encoded IN level S1

R3DM Formalization v1.0

In fact it occurs that this formalization is also the first attempt to formalize the notion of the word “plerophoria”, i.e. information translated in Greek, using Aristotle’s semiotic triangle of meaning.

  • R3DM models any concept C at a highest level, L2, of abstraction.

  • Information RESOURCES about that concept are REPRESENTED and consequently encoded using a combination of signs S at an intermediate level, L1, into a message M.

  • Then at the lowest level, L0, the content of M is expressed with a complex data structure D and REALIZED with operations on data containers.

  • In all L0, L1, L2 levels of abstraction, we maintain REFERENCES for the context (L2), for the construction of signs (L1), and for the addressing of containers and the indexing of content (L0).

The Variable-Value Pair (VVP)

Recently, 5th of November 2013, another serialization of RDF, JSON-LD was proposed by W3C. This made me think over about the fundamental data representation in computing systems and applications. It is the name–value pair, key–value pair, field–value pair or attribute–value pair according to Wikipedia.

Professional IT developers will recognise it also as the variable-value pair in programming, as the (Object, Attribute), Value pair in OOP, as the field-value in RDB databases, as the key-value in no-SQL databases, as the query string in URL, as the (SP)-O in RDF and as the attribute-value pair in the most popular data interchange format in our days the JSON open standard format. This demonstrates how powerful this “pair” is. Two fundamental observations arise from this comparison.

First, there is an emergent need to describe any kind of relation between two things in a natural, human readable way. And second, there is the power of using it as the cornerstone to build on top of it. Everything has to be expressed as VVP in a semantic layered approach, similar to what the Topic Map data model proposed, i.e. distinguish between associations between concepts and occurrences for the representation of them. In my opinion, this is where the semantic web stack fails as it has mixed the syntax, with retrieval of information and representation of it.

What I propose in R3DM data model is a clear separation of Information Realization (IREA), i.e. literals, data types, I call them DataIR or DIR (Data Information Resources) from Information Representation (IREP), i.e. image, web page, quantity, number, etc. I call them BinIR or BIR (Binary Information Representation).

Collectively I call all of them Information Resources (IRES), or Term Information Resources, TermIR or TIR for simplicity. This definition includes concepts from our daily life like humans, cars, trees and sky.

In order to avoid confusion on the definition of all these terms and for identification purposes, Information Reference (IREF), i.e. authority, user, host, domain, etc. has to be added as an extra dimension on the representation of information. I also call this term RefIR or RIR (Reference Information Representation).

As a reminder, one can easily arrive in the following memorable formula:


Information Resource = Information Reference + Information Representation + Information Realization

Or expressed in terms of things

TermIR = RefIR + BinIR + DataIR

And in an even simpler form as


In fact, the U1R3DM, Unified Information Resources with Reference, Representation, Realization Data Model proposes a new information theory that is based on the hypothesis that any information resource can be computed and represented as the unity of three components that happen to occur naturally in the description of Aristotle’s semiotic triangle. This is exactly what is illustrated in this post.

VVP and the identity crisis on the web

The more I am re-searching the subject of data modeling the more I understand the confusion that arises from the use of the variable-value pair, I am calling it VVP for short. Many of you will recognize that this is the fundamental unit of construction in computer hardware/software architecture including databases, i.e. Storage and retrieval mechanism. Nevertheless many fail to grasp the semantics behind this simple assignment statement of the VVP, i.e. VAR = VAL. Pointer logic in computer programming is very helpful here. Or think about a post box (container) with a street address and an envelope (content) inside. It’s also important to think about the type of container (post box) and the type of content (envelope).

What is the analogy with R3DM an identifier to (R)epresent the variable name, a.k.a container a literal to (R)ealize (materialize) the value, a.k.a content a memory address to (R)eference / De-Reference its content

Representation + Realization + Reference

You can see Variable from three perspectives, as an identifier, as an address and as a container with a type (data type). In the current semantic web of linked-data URI is overloaded with many roles, i.e. dereferencing, identification, serialization (Relational, Topic, Graph, JSON-XML). Is there a way to combine all these different perspectives in R3DM ? I think perhaps there is one.

Conceptual Model vs Data Model

RDF triplet, (Subject, Predicate, Object) or (Entity, Attribute, Value), strictly speaking, is neither a conceptual (information) model, nor a data model.

By definition conceptual model, is about concepts. It is about how I can deliver some message, I have in my head to someone else. Normally we use natural language, words, sentences, speech as the vehicle to convey that message. But that is not the only medium we use, think about art, figures, pictures, photos, diagrams, tactile feedback, music, video, and many others that are not based on words, that are not based on natural language.

So, let us assume for a moment that we focus on only textual representations. Is that SPO adequate as a constructing unit to model observations, data sets, or relations ? If yes, is there a standard way to structure concepts and relate instances ? Think about the components of SPO. Predicative units can become attributive and the opposite, object can take the position of a subject and the other way around, relations can be inverted.

But perhaps the most annoying of all is the abuse of that conceptual model to use it at the same time as a data model. That means to link values, such as numbers, strings and dates and binary objects. And of course everybody raises his hands when you ask the question, what exactly that value or that object represents. Or how about thinking the classic coding distinction in passing arguments. Are you calling by value or by reference ? Do you embed objects, are you building complex data types, how do you model the multi-value properties ? If you think there is a standard way to answer all these questions, think again because there is not one.

So, here comes R3DM into the game to make things more clear, Reference, Representation and Realization. Think about realization the encoding of 0s and 1s you have stored in memory. This is the only “real thing” you have stored. That is the lowest level of representation that computer understands. Then we have another level of representation, the highest one that we are familiar with, the conceptual level, it is about terms that we naturally think, that we naturally construct in our brains. And the third level of representation is an intermediate one. It is connecting the two worlds, the human one with the computer one. That is a vehicle, a medium we use to convey the message, the information according to semiotic triangle. We can use text, images, sound, video, etc to achieve this as long as we can digitize media.

Resource = Reference + Representation + Realization

the three levels of representation are unified as one and one is seen in three. That is the beauty of R3DM.

Data and Metadata

One of the main obstacles in data modeling is that we try to understand the mechanism of abstraction. In fact we are trying to model abstraction, to model the machine that creates models ! Recall at this point what is metadata. It is data about data. So you see how easily you can fall into a loophole.

Think about the “name” term. It is one of the most essential concepts we use to model, to reason, to refer, to identify. It is so hard to escape from naming and change everything to an alphanumeric id. Who is doing the naming, what does he mean, in what natural language ?

Name is just one of the many “signs” we use according to “semiosis” to carry the message, a piece of information. Think about any kind of programming paradigm, or any kind of data model or information model. You draw a flowchart, a nice diagram, to describe your model and at the same time you use symbols and words-terms to enhance it. All these are different kind of signs we use. So, do we have a model of the signs and how we use them to construct information and store, retrieve and update our data ? Not, at the moment I think.

Let’s move now to a term that apparently has become so popular in NoSQL movement, schemaless databases. That does not mean, there is not a schema. It means the database you use allows you to construct any kind of schema dynamically. In a sense we are talking about a database that has a generic kind of schema that enables you to produce any kind of schema.

Are you getting the picture now, data-metadata, schemaless-schema, data model - abstract model. It is an abstract machine, think about Turing machines, finite state machines, recursive functions, and lambda calculus and you get closer to it.

A Computational Semiotics Explanation

Resource = Reference + Representation + Realization


The following Wikipedia pages are related to realization, you may open and read about:

  1. Data type :
  2. Data structure :
  3. Class :
  4. Object :

You read the content of the web page with a specific presentation format suitable for the user and with at least three levels of encoding at the back for machine processing purposes.

  • wiki encoding : Wiki data type (interpretation of bits)
  • html encoding : HTML data type (interpretation of bits)
  • machine code : Series of bits

To keep things simple, encoding is about the format you give for various purposes, for data storage, for human reading, for human listening, for execution of machine instructions, and many more. If you started thinking about file types, and serialization formats like RDF and JSON I must say you are on the right path. We are at the data level where everything is centred around the encoding of the content. If we apply recursion to reach the machine encoding level, we have to think about a base case. For example, you can encode an integer as a 16bit binary number or 32bit binary number.


How do we represent an integer. In programming we call it an identifier, the name of a variable. This is our entry level to the world of semantics. According to semiotics, it is about signs we use to represent information about an entity. To continue our example, if we want to encode and use a salary figure we can write:

Salary = $150000

The left part (and the dollar sign) is the (R)epresentation (container) and the right part is the value (content). It is the (R)ealization of a monetary value. Such identifiers in computer programming are many, property names, class names, method names, and relations.


Speaking about computer programming, the following Wikipedia pages are related to reference:

  1. Pointer :
  2. Reference :
  3. Key :
  4. Identifier :

The concept of reference must not be confused with other values (keys or identifiers). In the previous example

  • “Salary” is an identifier, a (R)epresentation of an integer value
  • “Salary” is a reference, a (R)epresentation of the memory address where we encode the integer value.

To avoid that confusion, programmers defined another term, the pointer. Pointer (R)epresents a memory address. We dereference pointer to read the value, we use pointer to access memory block and store the value. The same idea is behind the dereferencing mechanism of WWW and the URL. But the URL reference has been overloaded:

  • URL denotes the source of information, e.g. Wikipedia.
  • URL is used to disambiguate terms, e.g. Object in object-oriented_programming.
  • URL is used to fetch the html content of the web page


The way we view information resources in our model is mainly through the use of terms (Term Information Resource - TermIR). If you take any of the previous web addresses, you have the term, the realization of the term (DatumIR), the representation of the term (SignIR) and a reference (RefIR) to the content. These are three concepts in one, and one concept in three.


The Core Terms of R3DM/S3DM

There are two sets of base terms one starting with the letter ‘R’ and the other with the letter ‘S’ that we can use in order to convey the fundamental principles of R3DM. Both of the sets are outlined hierarchically into three levels. Each level is described with one or more characteristic words that are useful for memorizing and recapitulating the distinguishing features of R3DM.


  • S3 : Signified, Sense, Semantic - Signify
    • Signified, in Greek “σημαινόμενον”, to mean something
  • S2 : Sign, Symbol, Syntax, Structure - SymbolizeS2 : Sign, Symbol, Syntax, Structure - Symbolize
    • Sign, in Greek “σημείο”
  • S1 : Signifier, Storage (String) - Store
    • Signifier, in Greek “σημαίνον”


  • R3 : Information Resource - InfoRes (Enity) - Originate

  • R2 : Information Representation - InfoRes (Symbol) - Represented

  • R1 : Information Realization (Datum) - Realized

Other Terms

There are also other terms that are often used when we describe relations, operations and features in R3DM these are:

  • Referenced
  • Interpreted
  • Formatted
  • Expressed
  • Decoded
  • Encoded
  • Parsed

Trilateral Relations

The trilateral schema of relations between R1, R2 and R3 or equally between S1, S2, S3 defines the core mechanism of semiosis. We will use the terms we defined in previous section to build simple sentences that convey the full meaning. We will also use three prepositions “from”, “through” and “in” that accompany RTerms and STerms in a specific order that signifies the left to right direction of abstraction

  • Direction from S1 through S2 in S3
    • Data from S1 are Symbolized through S2 and Signified in S3
    • Data from S1 are Decoded through S2 and Interpreted in S3
    • Realization from S1 is Parsed through S2 and Interpreted in S3
  • Direction from S3 through S2 in S1
    • Information Resources from S3 are Represented through S2 and Realized in S1
    • Information Resources from S3 are Represented through S2 and Encoded in S1
    • Information Resources from S3 are Represented through S2 and Formatted in S1

An Interpretation from S3 is Symbolized through S2 and Formatted in S1

Information Resources from S3 are Symbolized through S2 and Stored in S1

R3DM/S3DM Dogma

With the term dogma we want to bring together a set of R3DM principles laid down by an authority as incontrovertibly true. R3DM dogma serves as part of the primary basis of R3DM modelling system, and it cannot be changed or discarded without affecting the very system’s paradigm. R3DM is serving one purpose to become the paradigm of paradigms, the metamodel of metamodels.

The Trilateral Principle

Resource, symbol and data, each plays a distinct role but they are united with a trilateral relationship and act as one thing. They are present at every level of R3DM as

Signified - Sign - Signifier


Resource - Representation - Realization

In fact you cannot separate these three things in any computer engineering architecture, the signifier (the concept, semantics), the symbol (serialization, syntax), and the signified (storage, data form, i.e. strings, numbers, bits). They stay together from the lowest level of abstraction, to the highest level. You can only link these meaning triangles side by side and move in two directions, specialization or generalization, Sowa Ontology, Metadata, and Semiotics.

Symbol’s Duality Principle

EVERYTHING is represented with a symbol

There is a duality on the characteristics of a sign. Symbols play two roles at the same time that of a container and content. These roles cannot be separated, they always come in pairs. You may think in terms of how computer memory works to understand this. In digital computers EVERYTHING is represented with a sequence of bits, but this sequence is stored in an array of memory cells. Therefore any such fundamental construct, i.e. data structure, that can be build at a higher level should comply with a symmetrical design, i.e. Types, Instances, Values, and Relations-Associations all of them have to be constructed from these atomic fundamental constructs.

The Threefold Tower of Babel in Information Technology

A concise synopsis of the chaotic situation that is present in information technology is this:

The user is experiencing a threefold Tower of Babel * in semantic web and linked data - conceptual modelling, * in computer programming - symbolic modelling * in persistent or temporary storage and retrieval of information - data modelling.

Is it possible to bring order to that chaos ? Yes, tune into the multi-perspective approach of R3DM.

Fig. 6 - Paralellizing the current status of information technology with the tower of babel


R3DM Project Posts


Intersystems Cache Python ORM
Intersystems Cache Object-Relational Mapper in Python 3
Intersystems Cache Object-Relational Mapper in Python 3

Relational Data Model: Back to the roots
Important design and implementation principle arising from studying relational data model theory
Important design and implementation principle arising from studying relational data model theory

Build valuable relations; establish effective communications
A post that explains our philosophy and goals behind HEALIS products
A post that explains our philosophy and goals behind HEALIS products

TRIADB at Connected Data London
My speech at Connected Data London conference and demos of TRIADB implementation on Intersystems Cache DBMS
My speech at Connected Data London conference and demos of TRIADB implementation on Intersystems Cache DBMS


The wizards of stored computer program and the next generation of programmers
The fundamental aspect that software pioneers have been missing when they invented new programming languages or new nosql databases
Have you noticed that what ever the model and data structure in databases we cannot escape from the fundamental principle of managing data allocation space with references, i.e. pointer based logic, memory addressing ?

Associative Semiotic Hypergraph API in Mathematica for Next-Generation BI Systems
European Wolfram Technology Conference 19-20 June 2017 in Amsterdam
My speech at European Wolfram Technology Conference 2017 about a new data modeling framework R3DM/S3DM that is implemented on top of OrientDB graph database and coded in Wolfram Mathematica

Are our old data model standards out of shape ?
An overview of critical points to consider when modeling with R3DM/S3DM
Both Topic Maps and RDF/OWL exhibit signs of aging. These signs do not indicate maturity levels but on the contrary they signal a re-examination of the data modeling, information representation problem

The three dimensions of AI and a fourth one as the key to unlock them
Comments on a review of AI by John Launchbury, special assistant to DIRO, DARPA
Although there has been significant progress with first and second generation AI systems in reasoning, learning and perceiving, abstraction has not been part of the game. The mechanism of abstraction can unify these other three processes.

Associative Data Modelling Demystified: Part 6/6
Demonstration of a new data model framework that transforms OrientDB into a HyperGraph Database
Demonstration of a new data model framework that transforms OrientDB into a HyperGraph Database

Data Modelling Topologies of a Graph Database
Definition and Classification of Graph Databases into Three Categories
The associative data graph database model is still a heavy hitter, stacking up well against property graphs and triples/quadruples. Expect a comeback.

A Quick Guide on How to Prevail in the Graph Database Arena
A brief discussion on criteria to meet a differentiation strategy for graph databases
A swift introduction to the key factors that influence the performance and unification character of graph databases

Associative Data Modeling Demystified: Part 5/6
Qlik Associative Model
Qlik's competitive advantage over other BI tools is that it manages associations in memory at the engine level and not at the application level. Every data point in every field of a table is associated with every other data point anywhere in the entire schema.


Associative Data Modeling Demystified: Part 4/6
Association in RDF Data Model
In this article we will see how we can define an association in RDF and what are the differences with other data models that we analyzed in previous posts of our series

Do you Understand Many-to-Many Relationships ?
Associative entities are represented differently in various data models
It is 2016 and in my opinion the situation with associative entities has become darn confusing. Edges of a Property Graph data model are bidirectional but RDF links are unidirectional.

Associative Data Modeling Demystified: Part 3/6
Association in Property Graph Data Model
In this article, we continue our investigation with the Property Graph Data model. We discuss how a many-to-many relationship is represented and compare its structure in other data models

Associative Data Modeling Demystified: Part 2/6
Association in Topic Map Data Model
In this post, we demonstrate how Topic Map data model represents associations. In order to link the two, we continue with another SQL query from our relational database

Associative Data Modeling Demystified: Part 1/6
Relation, Relationship and Association
In this article, we introduce the concept of association from the perspective of Entity-Relationship (ER) data model and illustrate it with the modeling of a toy dataset


Plerophoria vs Information
The ancient Greek origin of the word information
The ancient Greek origin of the word information

Towards a New Data Modelling Architecture
Part 2: Atomic Information Resource (AIR)
We introduce the Atomic Information Resource (AIR) unit of R3DM conceptual framework

Towards a New Data Modelling Architecture
Part1 - Relational/ER Constructs in Wolfram Language
We start with terms and constructs that most of us are familiar with from the Relational and Entity-Relationship database management systems


R3DM/S3DM Illustration and Formalization
Old wiki pages and LinkedIn posts ported from and
Old wiki pages and LinkedIn posts ported from and


Old wiki pages on R3DM ported from, examples of R3DM in TMDM
Old wiki pages on R3DM ported from, examples of R3DM in TMDM

R3DM Questions and Answers
Old wiki pages on R3DM ported from
Old wiki pages on R3DM ported from

URIs for Real-World Objects
The problem of information resources definition, representation and identification
The problem of information resources definition, representation and identification


Ignite Athens 2012 : From WWW To GGG
My first pitch at Ignite Athens on 20th of September 2012 about Neurorganon Upper Level Ontology (NULON)
My first pitch at Ignite Athens on 20th of September 2012 about Neurorganon Upper Level Ontology (NULON)