What Is Semantic Ethereum?


Back

Last modified on January 12, 2017

Join over 115,115 Members
Angel Investors, Startups & Blockchain developers...
Yes, Get Access!
No Thanks!

Disclaimer: The views and opinions expressed in this article are those of the authors and do not necessarily reflect the official policy or position of Blockgeeks

EthOn — introducing semantic Ethereum

EthOn is a multi-purpose Ethereum ontology. It takes all these blockchain terms you might have heard of (Blocks, Transactions, Contracts, Nonce, …) brings them into relation with each other and gives short and clear definitions.

 What Is Semantic Ethereum?
Overview of the major EthOn modeling concepts

Back in the days of the DAO, its heist and the subsequent analysis of what happened, I spent a lot of time understanding Ethereum and its concepts. I read the white and the yellow papers (I really did!), crawled through stack exchange, devoured anything there was about Ethereum on Reddit and still many concepts of how it worked were really hard to figure out. Don’t get me wrong; there is no doubt that Ethereum is well defined, but the problem was that the information was not always available in a format that allowed me to comprehensively understand the concept I was interested in.

Since I love the idea of the Semantic Web and have a background in creating formal models, my natural approach is to describe Ethereum as an ontology.

These are some of the benefits that come for free with EthOn:

  • With EthOn dumb data turns into smart data — if a dataset references EthOn terms, it becomes self-explanatory
  • EthOn provides an automatically generated extensive glossary of Ethereum terms
  • by providing unambiguous terms, EthOn is a means to improve communication among developers, technical and non-technical people
  • EthOn is a learning resource for understanding how Ethereum works and for reading the yellow paper
  • EthOn provides a way to formally describe Ethereum artifacts in a machine readable format
  • EthOn provides the ability to semantically annotate content provided by Ethereum based tools and dApps (e.g. block explorers, analysis tools, markets, IPFS, …)
  • semantic reasoning about partially described Ethereum artifacts to infer new knowledge
  • … use it for YOUR project!

What is an ontology?

Ontologies are formal and schematic descriptions of an area of knowledge. The concepts of the domain are collected into a curated vocabulary and then organized. It can be explicitly defined how concepts relate to each other and what rules there are for their existence and the relations between them. The conclusiveness of concepts and their relations is a function of the desired area of application of the ontology.

Why should there be an ontology for Ethereum?

Ethereum is an ideal field of application for ontologies because a consensus about the semantics of the involved concepts is a prerequisite for reaching consensus about the state of the network. Any deviation from this consensus results in a fork. An Ethereum ontology may serve as a semantic specification of its concepts that complements its technical specification. It is also a learning resource for those trying to understand the yellow paper and a foundation for semantic annotation of Ethereum artifacts.

As an example, in Ethereum there is the concept of a Block. All Blocks must have a parent and child Block. This is true with the exception of the very first block, which only has a child and the newest Block for which the child has not yet been found. Also, a Block contains a list of Transactions (which may be empty). Blocks have an associated miner, who receives the Block reward.

In an ontology, these domain concepts are formalized in an ontology language (e.g. OWL) so that they can be referenced, queried and used for inference. Referencing an ontology can be useful in many scenarios. An Ethereum block explorer could, for example, reference the Block concept of the ontology to state that the term Block used in its user interface is identical to the one defined in the ontology. An API, be it from an Ethereum client or a wallet service, can reference ontological concepts to state compliance with a standard. Then, the ontology can be used to verify that the API actually complies with it. Querying an ontology can be useful to retrieve definitions of technical terms, in order to create a glossary. If a piece of data is retrieved from an API that identifies it as a Block, the ontology can be queried to find out about its structure, ranges of values and relations to other concepts. An ontology can also be used to infer knowledge. If a Block doesn’t have a parent, it can be concluded that it must be the first Block of a blockchain.

What Is Semantic Ethereum? A very short example

This example shows how EthOn can be used to describe Ethereum artifacts. Besides this, there are many other uses for EthOn.

This is how EthOn models an Ethereum Block:

What Is Semantic Ethereum?
EthOn block model (look here for more illustrations and the chart key)

According to the above model, a Block can now be described as Linked Data using the Turtle notation:

The Future of EthOn

EthOn is released using CC BY 4.0. Contributions are very much appreciated! Please have a look at the contribution guidelines.

When Ethereum changes, e.g. to Proof of Stake, this will be reflected in EthOn. If the ontology changes in an incompatible way, the version number will be increased.

EthOn could in future reuse or reference concepts from a project called BLONDiE, a more general blockchain ontology.

Further resources

These links may be useful if you want to learn more about EthOn:

  • EthOn GitHub repository:

This a talk by Tim Berners-Lee who explains his vision of the Semantic Web

 

Originally published on Medium 

Join over 115,115 Members
Angel Investors, Startups & Blockchain developers...
Yes, Get Access!
No Thanks!
Johannes Pfeffer

johannes pfeffer

Johannes graduated from Technische Universität in Dresden, Germany where he received a Masters degree in Mechatronics. He has been following the history of the blockchains from the beginning. Data is Johannes’ medium and he works on making the information on the public ledger accessible to anyone.
Johannes Pfeffer

Latest posts by johannes pfeffer (see all)