# Semantic Ethereum – Linking Dapps together with data

- Channel: [Devcon](https://streameth.org/devcon)
- Date: 2018-10-09
- Duration: 17:16
- Topics: Science & Technology
- Watch: https://streameth.org/watch/yt-k1gQTNxSFB8
- YouTube: https://www.youtube.com/watch?v=k1gQTNxSFB8

## Description

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on IPFS and more.
https://archive.devcon.org/archive/watch/3/semantic-ethereum-linking-dapps-together-with-data

There has been a great deal of interest in using blockchain technology in order to enable the web of trust, and to realize the original vision of the Semantic Web (more commonly known to developers as “linked data” and “microdata”). Two papers to look at for this talk: Block Chain Technologies & The Semantic Web: A Framework for Symbiotic Development by Matthew English, Sören Auer, and John Domingue A more pragmatic Web 3.0: Linked Blockchain Data by Héctor E. Ugarte

Speaker(s): James Pitts
Skill level: Intermediate
Track: Developer Infrastructure


Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum
Learn more about devcon: https://www.devcon.org/
Learn more about ethereum: https://ethereum.org/ 

Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. 
Devcon 3 was held in Cancún, Mexico on Nov 1 - 4, 2017
Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

## Transcript

[Music] okay here we go my name is James Pitts and this is about semantic aetherium and when you talk about semantic or semantic technologies like the Semantic Web it starts with metadata so so what is metadata it provides context to the data that you have and so when you're marking up HTML you're you're creating context for the data that you've included in your webpage and it in that context can run very deep and regular metadata that we usually deal with as HTML developers it it's it's a bit of a burden when you do it but if you want to go to something like the Semantic Web it has it's a quite a big endeavor so the Semantic Web is proposed by Tim berners-lee who created the web and when the person who created the web proposed proposes a new idea a new concept a new set of standards were inclined to pay attention to him because we're grateful and it's he's a genius so a lot of people got very excited and I drunk the kool-aid myself I got extremely excited about it and so he started with web of content which is the current web and then he would he expanded it to be a web of data and a web of trust and as we all know we're solving the trust aspect of this and the deeper sense of what he's talking about is that once you establish all this context and once you know the source of the context you you you create something that's almost not so much of a thinking vein but something that is meaningful that that all the information is connected together in a very formal way and that can make that made a lot of people very sited and a w3c which which maintains its standards of the web developed the standards of the Semantic Web and many many tools came out standards lots of interesting diagrams like that to describe how things connect together but it largely failed and you'll find many articles about how the Semantic Web was a complete bust but the thing is there there's there's a lot of standards that are out there but they just weren't useful for people in their a bit of a burden to work with and famously cory doctorow even before the Semantic Web was really formally a set of standards he actually took on just metadata itself the whole concept he said it's MIT a crap and it's very snarky but it was very insightful too he talked about insurmountable obstacles lies laziness stupidity impracticality and it's a great article if you look it up the seven strongmen of meta utopia we ourselves or utopians in a way so we can learn a lot from people who just simply say things like that perhaps Tim berners-lee should have listened to that a little bit but the thing is even though Semantic Web is a failure or perhaps not two people are still working on it um metadata is ubiquitous anyone who's worked with webpages knows and the simple fact is apps share data and that data has important context and much of the data as web developers know is is embedded in HTML and that's the standard Micro data API calls are out there and the documentation behind it by API calls can be considered metadata and that's in its one of the reasons why we must maintain great documentation and much of this of the Semantic Web is out there not really forming a full semantic web not really forming something that everyone uses but it's out there and it it's useful for example wikipedia has been convert into a database and you can see wiki data you can go in there and pull a lot of data relate things together it's very useful so often we use metadata without really realizing it for example the emails that you receive in Gmail about your flight actually contain tags metadata microbe data in there and that's what Google will generate from those from that Micro data and github actions often when you do search results you'll see these little info boxes which are somewhat controversial Google grabs this data from various places and actually creates a summary much like Wikipedia and yeah those are called info boxes so the thing about there's a sort of a conundrum about metadata in general is if if you're if you're too loose about it it it's you're not clear right a famous lawyer said what you know what is is what is the definition of is sometimes we can be unclear so and it can lead to ambiguity and if you over structure data of course it's burdensome and here's some well-known phonetic characters if you think about the personality people who keep correcting you and saying you can't say it that way you know this you can't do it that way too much structure is annoying and developers don't want to deal with it right so let's go look at what the Semantic Web is right highly formalized metadata so it's it's very strict so whether something conforms to to what what your ontology is or not is really clear it's layered on top of the open web lots of standards data and tools and here's the things that it provides it's really important is there's linkage and there's lots of reference through your eyes the other one is the descriptions like how what things are and like somebody's a person what is a person well you might have a resource that describes what a person is sounds ridiculous but if you want to do something more automated it might be good to know this object as a person in this object as an airplane and the deeper side of it is reasoning that you structure your data in a way that something can reason about it and so here's why this is what Tim berners-lee wanted and this is what he was proposing this is why we all go through this this work to build a Semantic Web which many people didn't and ideas software agents that's a big one the the notion was that when if we all have the structured data out there something could comprehend it and create automated services for us arrange airplane flights agents things like that and I think I think one of the more interesting aspects of it was like an ecosystem a value chain of data if all the data is more formally connected you can you can build things on top of it reliably and in a way that's one of the great benefits of smart contracts so I give you that I'm gonna go over a interesting example some there's a tool called Protege and that's how you create ontology and Protege that people did projet did really humorous ontology called pizza and this this pizza ontology will help you bake the perfect pizza data and you can't violate it like you can't put a hamburger bun on top of that thing and call it a pizza and you can actually validate this verify this thing so think about linkage so here's some standards that that deal with linkage and you have your eyes which we're all familiar with but it's actually a really specific way to use your eyes and XML namespaces and you've probably seen these things in a lot of HTML you don't know what they are but essentially these are defining with with these your eyes what these names namespaces are as they're used later on this HTML or in this case in this RDF and you can see down here how there lies how these namespaces are utilized like right there you have a Creative Commons license and you see what their terms license what is a turn what are terms what is a license well something automated can go up here and and look at and and go to that URL and go find out what terms are and if you go to that URL about terms you can learn and see data about what those terms are if that you will still works that's the problem with the web is the VC rules might not work any more often on these servers go down so descriptive meaning it's it's essentially symbols like what what is describing what what is the name of something and it seems silly to us because we just talk when we understand this stuff but you know something automated really it's it has to know so an assertion that we might make is Los Angeles it is a city the assertion on a Semantic Web would be broken up like this subject predicate object this object is a URI it's really clear what Los Angeles is it's a type of and all this stuff right here this is at the basis of a stinner called RDF this is all the triple and RDF is all about declaring many many many triples to create something that's meaningful and and then it even connects so just descriptive meaning standards how how it would be expressed in the pizza ontology so you have toppings right you want to talk about what a topping is it's a functional property an ingredient of pizza and this is how you would declare that for a machine a machine could possibly understand what a topping is not that the Machine understands what a topping is but the machine would be able to interact with topping data in a way that is reasonable right it's as a developer it seems ridiculous however that you go through this effort to help something automated so to take it one step further and it gets further and further and deeper and deeper the more you dig in structural meaning to be able to reason about something you have to know how these things might relate how these entities that you're talking about pizza toppings mushrooms how they might relate and what is appropriate like it might not be appropriate to put a pizza as a topping on top of a mushroom and still call it a pizza that's not valid to us that's ridiculous but to a machine that really might count if it's making pizza so here's how the stander might come come about there's there's something in in the ontology standard w3c owl it's called transitive property now here this is the almost philosophical notion about it what is philosophical ingredients of ingredients are ingredients of the whole and the idea is that you have an ingredient on a pizza then agreement me have a sub ingredient but that sub ingredient is still an ingredient of the pizza and it's amazing but you have to tell a machine about that otherwise it's going to get very confused and possibly make a pizza that isn't isn't gonna work out right so here's here's how that looks again as a developer I might be terrified of this but I might use a tool that would generate this not enough tools are out there that are easy to deal with not enough tools are out there generating this kind of thing so here's here's a here's one of my favorite topics these crazy pizzas they make in places like Taiwan and Japan I'm probably Hong Kong this pizza has little baby hot dogs little ketchup so on top of each baby hotdog and then you can kind of see the logic now if you want to make an automatic Pizza make Baker its it could use the ontology and potentially make this pizza and still be a valid pizza according to the ontology but it's kind of ridiculous that's why I chose this really it's it's pedantic like it's it's it's too much work and that's man who's Barney called it right there and he actually worked on many at the w3c and and he started digital bazaar which is a really interesting company right now and I consider him sort of an antihero he developed a new standard called json-ld and the idea is that you're going to add context to data with a lot less work as a developer now json-ld is becoming a very important standard like for example the Google accepts it if you're an airline and you want you want the the flight tickets to show up in your email that way Google will accept json-ld so json-ld has become quite quite a large standard and here's what it looks like it's a lot less ponderous than the RDF that you saw earlier it's not XML is JSON very developer friendly but it still has a lot of elements that are semantic or provide context so when you think about semantic etherium like what's the appropriate level how far do we want to go I I consider it I'm thinking about it and I think it's important to foster creativity but not to overdo it right just enough for us to have composability and you know this is a good metaphor you create a standard for LEGO brick but you let people build whatever they want with it but you need to have some structure and aetherium obviously has a lot of metadata involved addresses signatures token balances you know we're going to have identity claims the your eyes are associated they're in a descriptive side you know you have a be eyes documentation of course and structure enforced in the AVM like you you can have as many objects as you want and you know that nobody is going to mess around with it if it's done right so one of the reasons why we we should put more metadata if possible into our work is the permanency of it we might not be around and this this application is still being used in the future and obviously ecosystem thinking about tokens or identity these these are and identity itself is potentially creating great ecosystems you create these footholds when you do metadata and when you do it right and swarm itself is actually quite an opportunity because you can use json-ld in there and you can connect connect all these things together like right now we're thinking yolk you'll refer to json-ld that's hosted on swarm in your contract but you should do it the other way around too so that all your documentation all your data all your contracts everything somebody could figure it all out even if you're not there to explain it even if your documentation is on the web that no longer exists so the lessons are pretty clear be light be light about standards if if we have standards it's more like documentation and we really encourage people to do it it's fun and the key is steal the good stuff from the w3c because they really do have a lot of good ideas we don't have to do it all but just explore it and you'll find it there's there's a lot of very interesting stuff in there just don't explore it too much because it's quite overwhelming it's for it's ridiculous sometimes but still the vision of it is quite amazing it's it's very interesting history so that's it hope this helps you make your applications that's it [Applause] [Music]
