SlideShare a Scribd company logo
JSON-LD and SHACL
for Knowledge Graphs
Dr. Jans Aasman
(allegrograph.com)
Contents
• Knowledge Graphs are getting popular very fast, are you
building a Knowledge Graph already?
• JSON-LD will help you add and delete objects to a
Knowledge Graph as easy as MongoDB
• SHACL will help you validate your data in the Knowledge
Graph.
Knowledge Graphs on the rise
• Line one
All the big ones in the US heavily investing in it
• Good luck trying to find a definition on the web that is not ideology or
vendor based or very application specific
Many technologies make a
Semantic Knowledge Graph
Documents: JSON, JSON-LD Graphs: RDF, Quads, Properties
Storage: Triple Attributes, Security Filters, Compression, Indexing, Full-text
Transactions: “Real” ACID, 2 Phase Commit
Management: Security, Multi-Master Replication, Backup/Restore, Warm Failover
Stored Procs:
JavaScript
Lisp
Prolog
SPARQL
Magic Predicates
Reasoning:
RDFS++
OWL2-RL
Prolog
Probabilistic
NLP:
Taxonomies
Entity Extract
Text Classify
Sentiment
Machine
Learning
ETL:
RDBMS
CSV
TEXT
NoSQL
Events:
Geospatial
Temporal
Social
REST GUI: GRUFF/AGWebView
Java Python Lisp
Built-In Integrations
Cloud:
Amazon AWS
Microsoft Azure
Data Science:
Anaconda
R Studio
Knowledge:
Linked Open Data
Editors:
Ontology, Taxonomy
NoSQL:
Cloudera, MongoDB,
Solr
Containers:
Docker, VMWare
Massively Parallel - Federation and Sharding
OSS Clients
SPARQL Prolog
Don’t worry, it is all easily accessible in
AllegroGraph Architecture
Successful Knowledge Graphs built on
• SKOS Taxonomies & OWL Ontologies
• RDF based Semantic Graph Technologies:
• Based on the uniqueness principle: one Thing, one URL
• If you don’t have that, you don’t have anything
• Property graphs destined to reinvent semantics
• But:
• Your User Experience and Application developers don’t want to learn
that entire stack
Challenge # 1 for UI and application developers:
How do you make it easy to
• Add data to a knowledge graph
• Retrieve data from a knowledge graph
• Validate your data
Solution:
• Knowledge Graphs are getting popular very fast, are you
building a Knowledge Graph already?
• JSON-LD will help you add, retrieve and delete objects to a
Knowledge Graph as easy as MongoDB
• SHACL will help you validate your data in the Knowledge
Graph.
JSON Won
• Messaging:
• the lingua franca for messaging and data exchange
• Configuration:
• JSON is replacing XML for configuration of nearly
anything
• Document and key/value store:
• JSON is the main data format stored in Document Stores
(Couchbase, Mongo, etc…)
JSON – the good
• Simple standard:
• Json.org spec is 5 pages, XML spec on W3C = 60 pages J
• only a few datatypes and with arrays!
• you can make your own complex data types if you want
• Easy to read and parse by humans and machines
• Easy to store in document stores
• Easy to program: support in every programming language
JSON (and JSON stores) – the bad
• No standards Schema (but close!)
• How do I know that the data I received is good, how do I know that
the data I’m going to send to my document store is good?
• No Semantics for attributes
• What does that attribute mean?
• Not set up for linking data
• How do I express linkage between JSON objects?
• No joins or graph search in document stores
• There simply is no concept of a relations between objects
• Client side joins or awkward procedures in javascript in the DB
JSON-LD = 100 % JSON +
• Add basic schema support to JSON: (but SHACL more complete)
• Add semantics to JSON objects: what does this attribute mean
• Designed to link JSON objects together
• Enables joins and graph search in document stores
Learn from JSON-LD.ORG
Google for
allegrograph python tutorial jsonld
It is everywhere: let’s look at this product
Search for @context in the source
JSON alone would lead to confusion, JSON-LD and
SCHEMA.ORG to the rescue
NO Meaning
WITH Meaning
Demo JSON-LD in Python
• Based on crunch base data from early 2000 till 2014
• Core objects: Investments, acquisitions, investors, companies
• For developers: how can you implement basic CRUD with AllegroGraph
JSONLD
• You can add and retrieve Python dictionaries directly
• Like many other document databases
• Objects are indexed with triples but can also be stored as blobs
• You can retrieve parts of objects in a SPARQL queries
• And you can retrieve as dictionaries.
And now SHACL
Semantic graphs allow you to be very ‘wild’
with your data
• Triples can be added without any schema definition
• Sometimes too flexible for the enterprise
• So the most asked question the last two years:
• Ummm, do you guys support SHACL validation?
SHACL seems to be replacing OWL
• Easier to read
• Less complicated
• OWL can still be derived automatically from SHACL
• Great tutorials on the web.
title
• Line one
SHACL
• Is data modeling language developed by a W3C Working Group.
• describes the “shapes” of the data so that applications can take better advantage
of that data.
• describes which properties go with which classes (like OWL)
• defines constraints on data with standardized models instead of procedural code.
• Has several built-in types of constraints such as cardinality
(minCount/maxCount), value type and allowed values, but it is also possible to
define more complex kinds of constraints for almost arbitrary validation conditions
• SHACL validation tools can verify whether your data fulfills the constraints
described by your data model, similar to how XML Schema or JSON Schema are
being used.
Derived from https://www.topquadrant.com/technology/shacl/tutorial/
Call SHACL validate from the command line
Deep integration with SPARQL
Conclusion: JSON-LD and SHACL
for Knowledge Graphs
• Make life easier for User Experience and Application
Developers that need to work with Knowledge Graphs.
• JSON-LD hides complexity of semantics and graphs
• SHACL easy way to validate new data.
Thank you

More Related Content

What's hot

WebTech Tutorial Querying DBPedia
WebTech Tutorial Querying DBPediaWebTech Tutorial Querying DBPedia
WebTech Tutorial Querying DBPediaKatrien Verbert
 
DSpace-CRIS, anticipating innovation
DSpace-CRIS, anticipating innovationDSpace-CRIS, anticipating innovation
DSpace-CRIS, anticipating innovation
4Science
 
Hw09 Hadoop Development At Facebook Hive And Hdfs
Hw09   Hadoop Development At Facebook  Hive And HdfsHw09   Hadoop Development At Facebook  Hive And Hdfs
Hw09 Hadoop Development At Facebook Hive And HdfsCloudera, Inc.
 
JSON-LD for RESTful services
JSON-LD for RESTful servicesJSON-LD for RESTful services
JSON-LD for RESTful services
Markus Lanthaler
 
Django for Beginners
Django for BeginnersDjango for Beginners
Django for Beginners
Jason Davies
 
From Semantic Interoperability towards Data Spaces
From Semantic Interoperability towards Data SpacesFrom Semantic Interoperability towards Data Spaces
From Semantic Interoperability towards Data Spaces
H2020 DEMETER
 
Building Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraBuilding Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and Hydra
Markus Lanthaler
 
GraphQL in Symfony
GraphQL in SymfonyGraphQL in Symfony
GraphQL in Symfony
Bernd Alter
 
What is Taxonomy and Ontology.pdf
What is Taxonomy and Ontology.pdfWhat is Taxonomy and Ontology.pdf
What is Taxonomy and Ontology.pdf
ssuser09bd27
 
SHACL in Apache jena - ApacheCon2020
SHACL in Apache jena - ApacheCon2020SHACL in Apache jena - ApacheCon2020
SHACL in Apache jena - ApacheCon2020
andyseaborne
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법
홍수 허
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
LeeFeigenbaum
 
django
djangodjango
Introduction to Django REST Framework, an easy way to build REST framework in...
Introduction to Django REST Framework, an easy way to build REST framework in...Introduction to Django REST Framework, an easy way to build REST framework in...
Introduction to Django REST Framework, an easy way to build REST framework in...
Zhe Li
 
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - IntroductionOntology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
Aldo Gangemi
 
Introducing Swagger
Introducing SwaggerIntroducing Swagger
Introducing Swagger
Tony Tam
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
Peter R. Egli
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
Richard Cyganiak
 
Inference on the Semantic Web
Inference on the Semantic WebInference on the Semantic Web
Inference on the Semantic Web
Myungjin Lee
 

What's hot (20)

WebTech Tutorial Querying DBPedia
WebTech Tutorial Querying DBPediaWebTech Tutorial Querying DBPedia
WebTech Tutorial Querying DBPedia
 
DSpace-CRIS, anticipating innovation
DSpace-CRIS, anticipating innovationDSpace-CRIS, anticipating innovation
DSpace-CRIS, anticipating innovation
 
Hw09 Hadoop Development At Facebook Hive And Hdfs
Hw09   Hadoop Development At Facebook  Hive And HdfsHw09   Hadoop Development At Facebook  Hive And Hdfs
Hw09 Hadoop Development At Facebook Hive And Hdfs
 
JSON-LD for RESTful services
JSON-LD for RESTful servicesJSON-LD for RESTful services
JSON-LD for RESTful services
 
Django for Beginners
Django for BeginnersDjango for Beginners
Django for Beginners
 
From Semantic Interoperability towards Data Spaces
From Semantic Interoperability towards Data SpacesFrom Semantic Interoperability towards Data Spaces
From Semantic Interoperability towards Data Spaces
 
Building Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and HydraBuilding Next-Generation Web APIs with JSON-LD and Hydra
Building Next-Generation Web APIs with JSON-LD and Hydra
 
GraphQL in Symfony
GraphQL in SymfonyGraphQL in Symfony
GraphQL in Symfony
 
What is Taxonomy and Ontology.pdf
What is Taxonomy and Ontology.pdfWhat is Taxonomy and Ontology.pdf
What is Taxonomy and Ontology.pdf
 
SHACL in Apache jena - ApacheCon2020
SHACL in Apache jena - ApacheCon2020SHACL in Apache jena - ApacheCon2020
SHACL in Apache jena - ApacheCon2020
 
SPARQL 사용법
SPARQL 사용법SPARQL 사용법
SPARQL 사용법
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
 
django
djangodjango
django
 
Beginners Guide to Drupal
Beginners Guide to DrupalBeginners Guide to Drupal
Beginners Guide to Drupal
 
Introduction to Django REST Framework, an easy way to build REST framework in...
Introduction to Django REST Framework, an easy way to build REST framework in...Introduction to Django REST Framework, an easy way to build REST framework in...
Introduction to Django REST Framework, an easy way to build REST framework in...
 
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - IntroductionOntology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
Ontology Design Patterns for Linked Data Tutorial at ISWC2016 - Introduction
 
Introducing Swagger
Introducing SwaggerIntroducing Swagger
Introducing Swagger
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
SHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data MudSHACL: Shaping the Big Ball of Data Mud
SHACL: Shaping the Big Ball of Data Mud
 
Inference on the Semantic Web
Inference on the Semantic WebInference on the Semantic Web
Inference on the Semantic Web
 

Similar to JSON-LD and SHACL for Knowledge Graphs

MongoDB Basics
MongoDB BasicsMongoDB Basics
MongoDB Basics
Sarang Shravagi
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 Questions
Mike Broberg
 
Practical Machine Learning for Smarter Search with Spark+Solr
Practical Machine Learning for Smarter Search with Spark+SolrPractical Machine Learning for Smarter Search with Spark+Solr
Practical Machine Learning for Smarter Search with Spark+SolrJake Mannix
 
Practical Machine Learning for Smarter Search with Solr and Spark
Practical Machine Learning for Smarter Search with Solr and SparkPractical Machine Learning for Smarter Search with Solr and Spark
Practical Machine Learning for Smarter Search with Solr and Spark
Jake Mannix
 
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
MLconf
 
Drupal and Apache Stanbol
Drupal and Apache StanbolDrupal and Apache Stanbol
Drupal and Apache Stanbol
Alkuvoima
 
MongoDB
MongoDBMongoDB
MongoDB
Rony Gregory
 
Sharing a Startup’s Big Data Lessons
Sharing a Startup’s Big Data LessonsSharing a Startup’s Big Data Lessons
Sharing a Startup’s Big Data LessonsGeorge Stathis
 
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
Lucas Jellema
 
Ontologies & linked open data
Ontologies & linked open dataOntologies & linked open data
Ontologies & linked open data
João Rocha da Silva
 
Introducción a NoSQL
Introducción a NoSQLIntroducción a NoSQL
Introducción a NoSQL
MongoDB
 
Validations in javascript in ReactJs concepts
Validations in javascript in ReactJs conceptsValidations in javascript in ReactJs concepts
Validations in javascript in ReactJs concepts
rajkumarmech801
 
JSON-LD Update
JSON-LD UpdateJSON-LD Update
JSON-LD Update
Gregg Kellogg
 
Case study of Rujhaan.com (A social news app )
Case study of Rujhaan.com (A social news app )Case study of Rujhaan.com (A social news app )
Case study of Rujhaan.com (A social news app )
Rahul Jain
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Tammy Bednar
 
No sq lv1_0
No sq lv1_0No sq lv1_0
No sq lv1_0
Tuan Luong
 
JSON as a SQL Datatype
JSON as a SQL DatatypeJSON as a SQL Datatype
JSON as a SQL Datatype
Robert Sell
 
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and SparkVital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
Vital.AI
 
SharePoint and the User Interface with JavaScript
SharePoint and the User Interface with JavaScriptSharePoint and the User Interface with JavaScript
SharePoint and the User Interface with JavaScript
Regroove
 

Similar to JSON-LD and SHACL for Knowledge Graphs (20)

MongoDB Basics
MongoDB BasicsMongoDB Basics
MongoDB Basics
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 Questions
 
Practical Machine Learning for Smarter Search with Spark+Solr
Practical Machine Learning for Smarter Search with Spark+SolrPractical Machine Learning for Smarter Search with Spark+Solr
Practical Machine Learning for Smarter Search with Spark+Solr
 
Practical Machine Learning for Smarter Search with Solr and Spark
Practical Machine Learning for Smarter Search with Solr and SparkPractical Machine Learning for Smarter Search with Solr and Spark
Practical Machine Learning for Smarter Search with Solr and Spark
 
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
Jake Mannix, Lead Data Engineer, Lucidworks at MLconf SEA - 5/20/16
 
Drupal and Apache Stanbol
Drupal and Apache StanbolDrupal and Apache Stanbol
Drupal and Apache Stanbol
 
MongoDB
MongoDBMongoDB
MongoDB
 
Sharing a Startup’s Big Data Lessons
Sharing a Startup’s Big Data LessonsSharing a Startup’s Big Data Lessons
Sharing a Startup’s Big Data Lessons
 
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
Introducing NoSQL and MongoDB to complement Relational Databases (AMIS SIG 14...
 
Ontologies & linked open data
Ontologies & linked open dataOntologies & linked open data
Ontologies & linked open data
 
Introducción a NoSQL
Introducción a NoSQLIntroducción a NoSQL
Introducción a NoSQL
 
Validations in javascript in ReactJs concepts
Validations in javascript in ReactJs conceptsValidations in javascript in ReactJs concepts
Validations in javascript in ReactJs concepts
 
JSON-LD Update
JSON-LD UpdateJSON-LD Update
JSON-LD Update
 
Case study of Rujhaan.com (A social news app )
Case study of Rujhaan.com (A social news app )Case study of Rujhaan.com (A social news app )
Case study of Rujhaan.com (A social news app )
 
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
Database@Home - Data Driven : Loading, Indexing, and Searching with Text and ...
 
No sq lv1_0
No sq lv1_0No sq lv1_0
No sq lv1_0
 
JSON as a SQL Datatype
JSON as a SQL DatatypeJSON as a SQL Datatype
JSON as a SQL Datatype
 
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and SparkVital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
Vital AI MetaQL: Queries Across NoSQL, SQL, Sparql, and Spark
 
SharePoint and the User Interface with JavaScript
SharePoint and the User Interface with JavaScriptSharePoint and the User Interface with JavaScript
SharePoint and the User Interface with JavaScript
 
NoSQL
NoSQLNoSQL
NoSQL
 

Recently uploaded

AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
e20449
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 

Recently uploaded (20)

AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 

JSON-LD and SHACL for Knowledge Graphs

  • 1. JSON-LD and SHACL for Knowledge Graphs Dr. Jans Aasman (allegrograph.com)
  • 2. Contents • Knowledge Graphs are getting popular very fast, are you building a Knowledge Graph already? • JSON-LD will help you add and delete objects to a Knowledge Graph as easy as MongoDB • SHACL will help you validate your data in the Knowledge Graph.
  • 3. Knowledge Graphs on the rise • Line one
  • 4. All the big ones in the US heavily investing in it • Good luck trying to find a definition on the web that is not ideology or vendor based or very application specific
  • 5. Many technologies make a Semantic Knowledge Graph
  • 6. Documents: JSON, JSON-LD Graphs: RDF, Quads, Properties Storage: Triple Attributes, Security Filters, Compression, Indexing, Full-text Transactions: “Real” ACID, 2 Phase Commit Management: Security, Multi-Master Replication, Backup/Restore, Warm Failover Stored Procs: JavaScript Lisp Prolog SPARQL Magic Predicates Reasoning: RDFS++ OWL2-RL Prolog Probabilistic NLP: Taxonomies Entity Extract Text Classify Sentiment Machine Learning ETL: RDBMS CSV TEXT NoSQL Events: Geospatial Temporal Social REST GUI: GRUFF/AGWebView Java Python Lisp Built-In Integrations Cloud: Amazon AWS Microsoft Azure Data Science: Anaconda R Studio Knowledge: Linked Open Data Editors: Ontology, Taxonomy NoSQL: Cloudera, MongoDB, Solr Containers: Docker, VMWare Massively Parallel - Federation and Sharding OSS Clients SPARQL Prolog Don’t worry, it is all easily accessible in AllegroGraph Architecture
  • 7. Successful Knowledge Graphs built on • SKOS Taxonomies & OWL Ontologies • RDF based Semantic Graph Technologies: • Based on the uniqueness principle: one Thing, one URL • If you don’t have that, you don’t have anything • Property graphs destined to reinvent semantics • But: • Your User Experience and Application developers don’t want to learn that entire stack
  • 8. Challenge # 1 for UI and application developers: How do you make it easy to • Add data to a knowledge graph • Retrieve data from a knowledge graph • Validate your data
  • 9. Solution: • Knowledge Graphs are getting popular very fast, are you building a Knowledge Graph already? • JSON-LD will help you add, retrieve and delete objects to a Knowledge Graph as easy as MongoDB • SHACL will help you validate your data in the Knowledge Graph.
  • 10. JSON Won • Messaging: • the lingua franca for messaging and data exchange • Configuration: • JSON is replacing XML for configuration of nearly anything • Document and key/value store: • JSON is the main data format stored in Document Stores (Couchbase, Mongo, etc…)
  • 11. JSON – the good • Simple standard: • Json.org spec is 5 pages, XML spec on W3C = 60 pages J • only a few datatypes and with arrays! • you can make your own complex data types if you want • Easy to read and parse by humans and machines • Easy to store in document stores • Easy to program: support in every programming language
  • 12. JSON (and JSON stores) – the bad • No standards Schema (but close!) • How do I know that the data I received is good, how do I know that the data I’m going to send to my document store is good? • No Semantics for attributes • What does that attribute mean? • Not set up for linking data • How do I express linkage between JSON objects? • No joins or graph search in document stores • There simply is no concept of a relations between objects • Client side joins or awkward procedures in javascript in the DB
  • 13. JSON-LD = 100 % JSON + • Add basic schema support to JSON: (but SHACL more complete) • Add semantics to JSON objects: what does this attribute mean • Designed to link JSON objects together • Enables joins and graph search in document stores
  • 16. It is everywhere: let’s look at this product
  • 17. Search for @context in the source
  • 18. JSON alone would lead to confusion, JSON-LD and SCHEMA.ORG to the rescue NO Meaning WITH Meaning
  • 19.
  • 20. Demo JSON-LD in Python • Based on crunch base data from early 2000 till 2014 • Core objects: Investments, acquisitions, investors, companies • For developers: how can you implement basic CRUD with AllegroGraph JSONLD • You can add and retrieve Python dictionaries directly • Like many other document databases • Objects are indexed with triples but can also be stored as blobs • You can retrieve parts of objects in a SPARQL queries • And you can retrieve as dictionaries.
  • 22. Semantic graphs allow you to be very ‘wild’ with your data • Triples can be added without any schema definition • Sometimes too flexible for the enterprise • So the most asked question the last two years: • Ummm, do you guys support SHACL validation?
  • 23. SHACL seems to be replacing OWL • Easier to read • Less complicated • OWL can still be derived automatically from SHACL • Great tutorials on the web.
  • 25. SHACL • Is data modeling language developed by a W3C Working Group. • describes the “shapes” of the data so that applications can take better advantage of that data. • describes which properties go with which classes (like OWL) • defines constraints on data with standardized models instead of procedural code. • Has several built-in types of constraints such as cardinality (minCount/maxCount), value type and allowed values, but it is also possible to define more complex kinds of constraints for almost arbitrary validation conditions • SHACL validation tools can verify whether your data fulfills the constraints described by your data model, similar to how XML Schema or JSON Schema are being used. Derived from https://www.topquadrant.com/technology/shacl/tutorial/
  • 26. Call SHACL validate from the command line
  • 28. Conclusion: JSON-LD and SHACL for Knowledge Graphs • Make life easier for User Experience and Application Developers that need to work with Knowledge Graphs. • JSON-LD hides complexity of semantics and graphs • SHACL easy way to validate new data.