SlideShare ist ein Scribd-Unternehmen logo
1 von 100
Downloaden Sie, um offline zu lesen
Getting Started with Knowledge Graphs
European Semantic Web Conference
May 29, 2017
Peter Haase
2
Peter Haase
• Interest and experience in
ontologies, semantic
technologies and Linked Data
• PhD in KR and semantic
technologies
• 15 years in academic research
and software development
• Contributor to OWL 2
standard
metaphacts Company Facts
• Founded in Q4 2014
• Headquartered in Walldorf,
Germany
• Currently ~10 people
• Platform for knowledge graph
interaction & application
development
About the Speaker
3
Introduction: What are Knowledge Graphs?
Examples and Applications
• Wikidata
• Cultural Heritage
• Industrial Applications
Standards and Principles
Knowledge Graph Management
Hands-on Exercises:
• metaphactory Knowledge Graph Platform
Agenda
Preparation Hands-on Exercises
5
• Download metaphactory (or copy from USB stick)
http://www.knowledgegraph.info/
• Follow README, start metaphactory
start.sh / start.bat
• Open start page
http://localhost:10214
• Follow “Getting started tutorial”
http://localhost:10214/resource/Help:Tutorial
Hands-on Exercises
Introduction
What are Knowledge Graphs?
7
The Rise of Knowledge Graphs
8
• We need a structured and formal representation of
knowledge
• We are surrounded by entities, which are connected by
relations
• Graphs are a natural way to represent entities and their
relationships
• Graphs can be managed efficiently
Why (Knowledge) Graphs?
9
A (very small) Knowledge Graph
http://www.w3.org/TR/2014/NOTE-rdf11-primer-20140225/example-graph.jpg
10
• Semantic descriptions of entities and their relationships
• Uses a knowledge representation formalism
(Focus here: RDF, RDF-Schema, OWL)
• Entities: real world objects (things, places, people) and
abstract concepts (genres, religions, professions)
• Relationships: graph-based data model where
relationships are first-class
• Semantic descriptions: types and properties with a well-
defined meaning (e.g. through an ontology)
• Possibly axiomatic knowledge (e.g. rules) to support
automated reasoning
What are Knowledge Graphs?
11
Knowledge Graphs Enabling Intelligent Applications
Knowledge Graph
Algorithms
Applications
Data Transformation, Integration
Natural Language Processing
Data Sources
• Inferencing
• Machine Learning
• Entity Recognition
• Disambiguation
• Text Understanding
• Recommendations
• Semantic Search
• Question Answering
• Knowledge Sharing
• Knowledge Management
• Analytics
• Entities
• Relationships
• Semantic Descriptions
• Dashboards
Examples and Applications
13
Google Knowledge Graph
14
Entity Search and Summarizations
Google Knowledge Graph
15
Discovering Related Entities
Google Knowledge Graph
16
Google Knowledge Graph
Factual Answers
17
Knowledge Graph Search API
https://developers.google.com/knowledge-graph/
18
LinkedIn Economic Graph
18
Examples and Applications
Wikidata
20
Open Knowledge Graphs
21
Wikipedia page A query against Wikipedia
Query the Knowledge of Wikipedia like a Database
21
22
• Collecting structured data. Unlike the
Wikipedias, which produce encyclopedic
articles, Wikidata collects data, in a
structured form.
• Collaborative. The data in Wikidata is
entered and maintained by Wikidata editors,
who decide on the rules of content creation
and management in Wikidata supporting the
notion of verifiability.
• Free. The data in Wikidata is published
under the Creative Commons
• Large.
• 26 million entities
• 150 million statements
• 130 million labels
• 350 languages
• >1500 million triples
Wikidata
25
Wikidata Query Service
https://query.wikidata.org
26
• Build your applications using Wikidata
• Free corpus of structured knowledge
• Easily accessible and standards-based
• See http://query.wikidata.org/
• Contextualize your enterprise data
• Wikidata provides stable identifiers into the open data world
• Seamless integration of private data with open data
• Enrich Wikidata with your data
• Contribute your data to Wikidata
• Link to your own data, make it visible
• Examples:
• Open biomedical databases – Wikidata as a central hub
• Cultural heritage
Use Cases for the Wikidata Knowledge Graph
28
Histropedia
Examples and Applications
Cultural Heritage
30
• Challenge:
• Very context-rich data
• Multi-disciplinary data, e.g. archaeologists, historians, librarians
• Multi-institutional data
• Complex domain, relationships, e.g. temporal, spatial, historical, political
• Benefits of Knowledge Graphs
• Integration and interchange of heterogeneous cultural heritage information
• Rich ontologies for knowledge representation
• Deep semantics for true conceptual merging
• Multi-lingual knowledge representation
• Knowledge access across museums and organizations
• Enabling knowledge sharing and collaboration
Benefits of Knowledge Graphs for Cultural Heritage
31
• Collaboration environment for
researchers in Cultural Heritage
• Expert users: researchers, curators
• Based on CIDOC-CRM: very rich,
expressive ontology
• Large, cross-museum data sets
• E.g. British Museum: 100s millions of
triples
• Advanced search capabilities
• Supporting query construction
• Sharing of searches, results,
visualizations
• Knowledge sharing
• Discussions around cultural heritage
annotations
• Argumentation support:
Representation of conflicting views and
opionions
ResearchSpace: Knowledge Graphs for Cultural Heritage
http://researchspace.org/
32
Demo ResearchSpace Platform
Standards and Principles
34
• Instance data (ground truth)
• Schema data (vocabularies,
ontologies)
• Metadata (e.g. provenance,
versioning, documentation
licensing)
• Comprehensive taxonomies to
categorize entities
• Links between internal and external
data
• Mappings to data stored in other
systems and databases
Multi-domain, source, granularity
Holistic Knowledge
35
Semantics on the Web
Semantic Web Stack
Berners-Lee (2006)
Syntactic basis
Basic data model
Simple vocabulary
(schema) language
Expressive vocabulary
(ontology) language
Query language
Application specific
declarative-knowledge
Digital signatures,
recommendations
Proof generation,
exchange, validation
36
Knowledge Graphs Built on the Semantic Web Layer Cake
Unicode URIs
RDF	(Resource	Description	Framework)
RDF-Schema
OWLSKOS
SPARQL
Query language
Entities
Relationships
Vocabularies
Ontologies
Expressive Ontology
Language
Thesauri,
classification
schemes
Graph data
model
Simple vocabulary
language
37
Our Knowledge Graph again (a bit more technical)
38
Graph consists of:
• Resources
(identified via
URIs)
• Literals: data
values with data
type (URI) or
language
(multilinguality
integrated)
• Attributes of
resources are
also URI-
identified (from
vocabularies)
Our Knowledge Graph again (a bit more technical)
• Various data sources and vocabularies can be arbitrarily mixed and meshed
• URIs can be shortened with namespace prefixes; e.g. schema: →
http://schema.org/
39
Allows one to talk about anything
Uniform Resource Identifier (URI) can be used to identify entities
http://dbpedia.org/resource/Leonardo_da_Vinci
is a name for Leonardo da Vinci
http://www.wikidata.org/entity/Q12418
is a name for the Mona Lisa painting
Resource Description Framework (RDF)
40
Allows one to express statements
An RDF statement consists of:
• Subject: resource identified by a URI
• Predicate: resource identified by a URI
• Object: resource or literal
Resource Description Framework (RDF)
41
N-Triples Syntax
<http://www.wikidata.org/entity/Q12418>
<http://purl.org/dc/terms/creator>
<http://dbpedia.org/resource/Leonardo_da_Vinci> .
<http://www.wikidata.org/entity/Q12418>
<http://purl.org/dc/terms/title>
"Mona Lisa" .
Resource Description Framework (RDF)
URIs	are	given	in	
angle	brackets	in	
N-Triples.
Literals	are	given	in	quotes	in	N-Triples.
In	N-Triples	every	
statement	is	
terminated	with	a	
full	stop.
42
• Every set of RDF assertions can then be drawn and
manipulated as a (labelled directed) graph:
• Resources – the subjects and objects are nodes of the
graph.
• Predicates – each predicate use becomes a label for an arc,
connecting the subject to the object.
RDF Graphs
Subject Object
Predicate
43
Resource Description Framework (RDF)
<http://dbpedia.org/resource/
Leonardo_da_Vinci>
<http://www.wikidata.org/
entity/Q12418>
<http://purl.org/dc/terms/creator>
"Mona Lisa"
<http://purl.org/dc/terms/title>
44
• Turtle is a syntax for RDF more readable.
• Since many URIs share same basis we use prefixes:
RDF Turtle
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <http://schema.org/>.
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix wd: <http://www.wikidata.org/entity/>.
45
• Also has a simple shorthand for class membership:
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
<http://example.org/bob#me> a foaf:Person .
Is equivalent to:
<http://example.org/bob#me>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://xmlns.com/foaf/0.1/Person>.
RDF Turtle
46
• When multiple statements apply to same subject they can
be abbreviated as follows:
wd:Q12418 dcterms:title "Mona Lisa" ;
dcterms:creator <http://dbpedia.org/resource/Leonardo_da_Vinci> .
RDF Turtle
Same	subject
47
1. Follow http://localhost:10214/resource/Help:Tutorial
2. Load sample.ttl via
http://localhost:10214/resource/Admin:DataImportExport
3. Browse and explore
sample data
Hands-on: Loading Data
48
• Collections of defined relationships and classes of
resources.
• Classes group together similar resources.
• Terms from well-known vocabularies should be reused
wherever possible.
• New terms should be defined only if you can not find
required terms in existing vocabularies.
Describing Data: Vocabularies
49
A set of well-known vocabularies has evolved in the Semantic
Web community. Some of them are:
Describing Data: Vocabularies
Vocabulary Description Classes	and	Relationships
Friend-of-a-Friend (FOAF) Vocabulary	for	describing	
people.
foaf:Person,	foaf:Agent,	foaf:name,	
foaf:knows,	foaf:member
Dublin	Core	(DC) Defines	general	metadata	
attributes.
dc:FileFormat,	dc:MediaType,	
dc:creator, dc:description
Organization Ontology	(org) Publishing	of	organization	
information.
org:Organisation,	org:Site,	
org:Role,	org:member,	org:hasSite
schema.org Cross-domain	vocabulary	for	
annotation	of	Web	pages.
schema:Event,	schema:Product,	
schema:location,	schema:image
50
• Language for two tasks w.r.t. the RDF data model:
• Definition of vocabulary – nominate:
• the ‘types’, i.e., classes, of things we might make assertions
about, and
• the properties we might apply, as predicates in these
assertions, to capture their relationships.
• Inference – given a set of assertions, using these classes
and properties, specify what should be inferred about
assertions that are implicitly made.
RDF-S – RDF Schema
51
• rdfs:Class – Example:
foaf:Person – Represents the class of persons
• rdf:Property – Class of RDF properties. Example:
foaf:knows – Represents that a person “knows” another
• rdfs:domain – States that any resource that has a given property
is an instance of one or more classes
foaf:knows rdfs:domain foaf:Person
• rdfs:range – States that the values of a property are instances of
one or more classes
foaf:knows rdfs:range foaf:Person
RDF-S – RDF Schema
52
RDF-S – RDF Schema
foaf:knows
rdfs:range
foaf:Person .
<http://example.org/bob#me>
foaf:knows
<http://example.org/alice#me>.
<http://example.org/alice#me>
rdf:type
foaf:Person.
Schema
Existing
fact
Inferred
fact
We	expect to	use	this	
vocabulary	to	make	
assertions	about persons.
Having	made	such	an	
assertion...
Inferences can	be	drawn	that	
we	did	not	explicitly	make
53
1. Load foaf.rdf via
http://localhost:10214/resource/Admin:DataImportExport
2. Browse and explore FOAF vocabulary
Hands-on: Load FOAF Vocabulary
54
• RDFS provides a simplified ontological language for
defining vocabularies about specific domains.
• OWL provides more ontological constructs for knowledge
representation.
• Semantics grounded in Description Logics.
• Most graph databases concentrate on the use of RDFS with
a subset of OWL features.
OWL – Web Ontology Language
55
Extends the DL further, but has three more
computable fragments (profiles).
OWL 2.0 – Web Ontology Language 2.0
55
OWL	2	Full
• Used	informally	to	refer	to	RDF	graphs	considered	as	OWL	2	
ontologies	and	interpreted	using	the	RDF-Based	Semantics.
OWL	2	DL
• Used	informally	to	refer	to	OWL	2	DL	ontologies	interpreted	
using	the	Direct	Semantics.
OWL	2	EL
• Limited	to	basic	classification,	but	with	polynomial-time	
reasoning.
OWL	2	QL
• Designed	to	be	translatable	to	relational	database	querying.
OWL	2	RL
• Designed	to	be	efficiently	implementable	in	rule-based	systems.
OWL	2	Full
OWL	2	DL
OWL	2	EL
OWL	2	QL OWL	2	RL
56
OWL is made up of terms which provide for:
• Class construction: forming new classes from
membership of existing ones (e.g., unionOf,
intersectionOf, etc.).
• Property construction: distinction between OWL
ObjectProperties (resources as values) and OWL
DatatypeProperties (literals as values).
• Class axioms: sub-class, equivalence and disjointness
relationships.
• Property axioms: sub-property relationship, equivalence
and disjointness, and relationships between properties.
• Individual axioms: statements about individuals
(sameIndividual, differentIndividuals).
OWL – Web Ontology Language
57
Example: CIDOC-CRM Ontology
Class: Person
SubClassOf: Actor
SubClassOf: Biological Object
SubClassOf: was_born exactly 1
SubClassOf: has_parent min 2
Class: Physical Thing
SubClassOf: Legal Object
SubClassOf: Spacetime Volume
DisjointWith: Conceptual Object
SubClassOf: consists_of some Material
58
1. Load ecrm_current.owl via
http://localhost:10214/resource/Admin:DataImportExport
2. Browse and explore CIDOC-CRM ontology
Hands-on: Load CIDOC-CRM Ontology
59
• Data model for knowledge organization systems (thesauri,
classification scheme, taxonomies)
• Conceptual resources (concepts) can be
• identified with URIs,
• labeled with lexical strings in natural language,
• documented with various types of note,
• semantically related to each other in informal hierarchies
and association networks and
• aggregated into concept schemes.
SKOS - Simple Knowledge Organization System
http://www.w3.org/TR/skos-reference/
60
Example: Concept Definition for Paper
61
• Query language for RDF-based knowledge graphs.
• Designed to use a syntax similar to SQL for retrieving data
from relational databases.
• Different query forms:
• SELECT returns variables and their bindings directly.
• CONSTRUCT returns a single RDF graph specified by a graph
template.
• ASK test whether or not a query pattern has a solution. Returns
yes/no.
• DESCRIBE returns a single RDF graph containing RDF data about
resources.
SPARQL – * Protocol and RDF Query Language
62
Main idea: Pattern matching
• Queries describe sub-graphs of the queried graph
• Graph patterns are RDF graphs specified in Turtle syntax, which
contain variables (prefixed by either “?” or “$”)
• Sub-graphs that match the graph patterns yield a result
SPARQL – * Protocol and RDF Query Language
dbpedia:
Leonardo_da_Vinci
?var
dcterms:creator
63
SPARQL – * Protocol and RDF Query Language
?interest
<http://example.org/
bob#me>
foaf:topic_interest
Results:
?interest
wd:Q12418
Graph	pattern:
Data	graph:
64
SPARQL – * Protocol and RDF Query Language
?interest
<http://example.org/
bob#me>
foaf:topic_interest
Results:
?creator
dcterms:creator
?interest ?creator
wd:Q12418 dbpedia:
Leonardo_da_Vinci
Graph	pattern:
Data	graph:
65
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?creator
WHERE {
<http://example.org/bob#me> foaf:topic_interest ?interest .
?interest dcterms:creator ?creator
}
SPARQL Query: Components
Prologue:
• Prefix	definitions
• Subtly	different	from	Turtle	syntax - the	final	period	is	not	used
66
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?creator
WHERE {
<http://example.org/bob#me> foaf:topic_interest ?interest .
?interest dcterms:creator ?creator
}
SPARQL Query: Components
Query	form:
• ASK,	SELECT,	DESCRIBE or	CONSTRUCT
• SELECT retrieves	variables	and	their	bindings	as	a	table
67
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?creator
WHERE {
<http://example.org/bob#me> foaf:topic_interest ?interest .
?interest dcterms:creator ?creator
}
SPARQL Query: Components
Query	pattern:
• Defines	patterns	to	match	against	the	data
• Generalises	Turtle	with	variables	and	keywords	– N.B.	final	period	optional
68
• Use the local SPARQL endpoint:
http://localhost:10214/sparql
• Execute the queries from the tutorial
1. Select all statements about Bob
2. Select the creator of the things that Bob is interested in.
Hands-on: Execute SPARQL Query
69
• Namespaces are added with the ‘PREFIX’ directive
• Statement patterns that make up the graph are specified
between brackets (“{}”)
Query Form: ASK
PREFIX foaf: http://xmlns.com/foaf/0.1/
ASK WHERE {
<http://example.org/bob#me> foaf:knows
<http://example.org/alice#me> }
Does	Bob	know	Alice?Query:	
true
Results:	
Is	Alice	interested	in	the	Mona	Lisa?Query:	
false
Results:	
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX wd: <http://www.wikidata.org/entity/>
ASK WHERE {
<http://example.org/alice#me> foaf:topic_interest
wd:Q12418}
70
• A property path is a possible route through a graph
between two graph nodes
• Property paths allow for more concise expression of some
SPARQL basic graph patterns and also add the ability to
match arbitrary length paths
Query Form: SELECT – Property Paths
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?creator WHERE {
<http://example.org/bob#me>
foaf:topic_interest / dcterms:creator ?creator
}
Query:	Creator of things that Bob	is interested in?
71
Filter expressions
• Different types of filters and functions may be used
Query Form: SELECT - FILTER Expressions
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?person ?another WHERE {
?person foaf:knows ?another
FILTER NOT EXISTS { ?another foaf:knows ?person }
}
Query:	People	who know someone who does not	know them?
Filter:				Comparison	and	logical	operators
72
• Calculate aggregate values: COUNT, SUM, MIN, MAX, AVG,
GROUP_CONCAT and SAMPLE
• Built around the GROUP BY operator
• Prune at group level (cf. FILTER) using HAVING
Query Form: SELECT - Aggregates
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?person (COUNT(?another) as ?num_friends) WHERE {
?person a foaf:Person
OPTIONAL { ?person foaf:knows ?another }
}
GROUP BY ?person
How	many	friends	do	people	have?Query:
73
• CONSTRUCT WHERE: In order to query for a subgraph,
without change, it is no longer necessary to repeat the
graph pattern in the template
Query Form: CONSTRUCT
CONSTRUCT
WHERE {
<http://example.org/bob#me> ?p ?o
}
Example:
74
• Graph– and vocabulary transformations
Query Form: CONSTRUCT
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX dcterms: <http://purl.org/dc/terms/>
CONSTRUCT { ?creator wdt:P800 ?work }
# wdt:P800 = notable work
WHERE {
?work dcterms:creator ?creator
}
Example:
75
• Allows federating across multiple SPARQL endpoints
• The SERVICE keyword instructs to invoke a portion of
a SPARQL query against a remote SPARQL endpoint
SPARQL Federated Query
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT * WHERE {
<http://example.org/bob#me> foaf:topic_interest ?interest .
SERVICE <https://query.wikidata.org/sparql> {
?interest ?predicate ?object }
}
Find	information	about	things	that	Bob	likes	at	WikidataQuery:
76
SPARQL 1.1 provides data update operations:
• INSERT data: adds some triples, given inline in the
request, into a graph
• DELETE data: removes some triples, given inline in the
request, if the respective graphs contains those
• DELETE/INSERT data: uses in parallel INSERT and DELETE
SPARQL 1.1 Update
77
SPARQL Update: Example
BASE	<http://example.org/>		
PREFIX	foaf:	<http://xmlns.com/foaf/0.1/>		
PREFIX	wd:	<http://www.wikidata.org/entity/>		
PREFIX	rdfs:	<http://www.w3.org/2000/01/rdf-schema#>		
WITH	<http://www.metaphacts.com/tutorial/>		
INSERT	{	
<peter#me>	 a	foaf:Person ;				
rdfs:label "Peter";				
foaf:knows <alice#me>	,	<bob#me>	;				
foaf:topic_interest wd:Q12418
}	
WHERE	{}
Knowledge Graph Management
79
Aspects of Knowledge Graph Management
KNOWLEDGE GRAPH
STORAGE
• Scalable data loading and
storage
• Querying and analytics
• Built-in inferencing and
custom services
• Management of hybrid
data sources
KNOWLEDGE GRAPH
CREATION
• Model- and ontology
development
• Semi-automatic creation
from structures sources
(data lifting)
• Interlinking of data from
heterogeneous sources
• Collaborative authoring
• Data annotation
• Versioning and
provenance
• Quality Assurance
KNOWLEDGE GRAPH
CONSUMPTION
• Development of end-user
oriented applications
• Interactive visualization
• Exploration
• Semantic search
• Natural language
interfaces
80
metaphacts Supports the Whole Data Lifecyle
Data
Extraction &
Integration
Data Linking
& Enrichment
Storage &
Repositories
Querying &
Inferencing
Search
Visualization
Authoring
end-to-end
platform
81
metaphactory as an Open Platform
BUILT IN OPEN SOURCE
Ăź Dual licensing (LGPL & commercial license)
Ăź Open Platform API and SDK
Ăź Integration of external tools and application via APIs
Ăź Easy development of own web components and services
Ăź Full HTML5 compliance
Ăź Re-usable, declaratively configurable Web Components
= Easy modification, customization, and extensibility
BUILT ON OPEN STANDARDS
Ăź W3C Web Components
Ăź W3C Open Annotation Data Model
Ăź W3C Linked Data Platform Containers
Ăź Data processing based on W3C standards such as RDF, SPARQL
Ăź Expressive ontologies for schema modeling based on OWL 2, SKOS
Ăź Rules, constraints, and query specification based on SPIN and RDF Data
Shapes
= Sustainable Solution
82
metaphactory Platform Architecture
Data
Services
Applications
Graph Database Graph Analytics Provenance
Catalog Services Exploration VisualizationConfiguration Search Access Control
Knowledge Graph Management App Factory
End UsersExpert/domain Users
Smart Apps
Developers
InferencingSPARQL Endpoint
83
Users and their Benefits
EXPERT USERS
• Collaboratively construct
and manage knowledge
graphs
• Integrate data from
heterogeneous sources
• Use standard connectors
for a variety of data
formats
• Benefit from scalable data
processing for big graphs
• Conduct high-
performance querying and
analytics
DEVELOPERS
• Rapidly develop Web and
mobile end-user oriented
applications
• Benefit from various
deployment modes: stand-
alone, HA, scale-up, scale-
out
• Interact with an easy-to-
use interface
• Collaboratively manage,
annotate and author data
• Use large set of custom
query and templates
catalogs
• Capture of provenance
information
END USERS
• Benefit from user-friendly
interaction with data
• Gain insights into
complex relationships
• Enable transparency and
extract value
• Ask questions and obtain
precise results
• Reduce effort for data
analysis
• Reduce noise – obtain
targeted, high quality
results
• Enhance quality of
business decisions
84
Search
• Domain independent, fully
customizable search widget
• Satisfy complex information needs
without learning SPARQL
• Search functionalities
• Graphical query construction
• End user friendly search
interfaces for building and
sharing complex queries
• Semantic auto suggestion
• Interactive result visualization
• Faceted search and exploration
of item collections
• Ability to invoke external full text
search indices such as Solr including
the possibility to score, rank and limit
the results for responsive
autosuggestion
• Saving and sharing of queries and
search results
Search
85
Table
Transform your queries into
durable, interactive tables
Many customization
possibilities, e.g. pagination,
filters and cell templates
Graph
Visualize and explore connections in a graph view
Custom styling of the graph
Variety of graph layouts
Carousel
Animated browsing through a list of
result items
Chart
Visualize trends and
relationships between
numbers, ratios, or
proportions
Visuali-
zation
Tree Table
Tree-based
visualization,
navigation and
browsing through sub-
tree structures
Map
Displaying spatial
data on a
geographic map
Visualization
86
Autho-
ring
• Annotations
• Based on W3C Open
Annotation Data Model
• Automated semantic link
extraction
• Form based authoring
• Manually author and update
instance data, backed by
query templates, data
dependencies, and type
constraints
• Rich editing components for
special data types
• Customizable flexible forms
• Autosuggestion and
validation against the
knowledge graph
• Capturing of provenance
information
• User group management
Authoring
87
Install & Go: Out-of-the-Box Functionality
Getting Started Tutorial
to guide you through your
first steps with metaphactory
Get
started
Management of Queries in
Catalog
for easy reuse and updating
Keyword Search Interface
with semantic autosuggestion,
driven by SPARQL
Search
Data Overview Pages
with Web components for
end-user friendly data
presentation and interaction
Template-based Data Browser
used to define generic views
which are automatically applied
to entire sets of instances
Explore
88
Example: Simple Semantic Search
Keyword search with semantic
autosuggestion, driven by SPARQL
Set up in ~2 minutes!
Declarative Components
Developer embeds
‘semantic-simple-search’
into the page
<semantic-simple-search data-
config='{
"query":"
SELECT ?result ?label ?desc
?img WHERE {
?result rdfs:label ?label .
?result rdfs:comment ?desc .
?result foaf:thumbnail ?img .
FILTER(CONTAINS(?label,
?token))
}",
"searchTermVariable":"token", //
user input
"template":"
<span title="{{result}}">
<img src="{{img}}"
height="30"/>
{{label}} ({{desc}})</span>"
}'/>
1
Rendered component is
displayed to the user and
can be used right away
2
Autosuggestions are
dynamically computed
based on query and user
input
3
89
• Associate a class in the knowledge graph with a template
• The template is applied to instances of the class
HTML5 Template Pages
Bob
foaf:Person
rdf:type
Hands-on Exercises
91
Hands-on Exercises
DATA LOADING &
QUERYING
• Loading your
data
• Querying your
data
VISUALIZATION
• Visualizing
results in a table
• Visualizing
results in a graph
SEARCH
• Embedding a
simple search
interface
AUTHORING
• Creating a
template
• Inserting and
updating data
92
Data Loading & Querying
Load data into the store via
the data import and export
administration page
1 2
Query the data via the
SPARQL endpoint.
E.g.: issue a query for all
statements made about Bob
as a subject
3
Visualize results in a table
… or as raw data
93
Visualizing Results in a Table
3
Visualize results in a table
displaying thumbnails as
images, the labels of the
resources as captions, and
links to the individual
resource pages
1
Embed ‘semantic-table’
component
<semantic-table config='{
"query":"SELECT * WHERE {
<http://example.org/bob#me>
?predicate ?object }“
}'>
</semantic-table>
to visualize previous query
as a table in a page
2
Customize the query to
embed thumbnail images
in the result visualization
SELECT ?uri ?label
?thumbnail WHERE { ?uri
rdfs:label ?label;
<http://schema.org/thumbnail
> ?thumbnail }
Use tupleTemplate to
define a template for
displaying the new table
94
Visualizing Results in a Graph
1
Embed ‘semantic-graph’
component
<semantic-graph
query="CONSTRUCT WHERE { ?s ?p ?o
}">
</semantic-graph>
2
Visualize results in a graph
95
Embedding a Simple Search Interface
Embed ‘semantic-simple-
search’ into the page
<semantic-simple-search
config='{
"query":"
SELECT ?uri ?label
WHERE {
FILTER REGEX(?label,
"?token", "i")
?uri rdfs:label
?label
} LIMIT 10
",
"searchTermVariable":"token",
"resourceSelection":{
"resourceBindingName":"uri",
"template":"<span
style="color: blue;"
title="{{uri.value}}">{{label.
value}}</span>"
},
"inputPlaceholder":"Search for
something e.g. "Bob""
}'>
</semantic-simple-search>
1
Rendered component is
displayed and can be used
right away
2
Autosuggestions are
dynamically computed
based on query and user
input
3
96
Creating a Template
1
Use the templating mechanism to
create a template for the resource
type ‘Person’, to display:
• the person's name
• an image, if available
• his interests
• his friendship relationship
2
Visualize the result on
Bob’s instance page
97
Inserting and Updating Data
1
Use a SPARQL UPDATE operation
against the SPARQL endpoint to
create and add new instance data
• the person's name
• an image, if available
• his interests
• his friendship relationship
2
Visualize the result
98
• Knowledge graphs as a flexible model for data integration and knowledge representation
• Standards for “semantic” knowledge graphs
• RDF as graph-based data model
• OWL as expressive ontology language
• SKOS for taxonomic knowledge
• SPARQL as query language
• Application areas
• Open knowledge graphs, e.g. Wikidata
• Cultural Heritage
• Life Sciences
• And many more
• Get started with the metaphactory Knowledge Graph platform today!
Summary
99
• Some slides build on the Euclid training material
• Thanks to the team at metaphacts
• Thanks to the ESWC organizers
Acknowledgements and Thanks
http://www.euclid-project.eu
100
metaphacts GmbH
Daimlerstraße 36
69190 Walldorf
Germany
p +49 6227 6989965
m +49 157 50152441
e info@metaphacts.com
@metaphacts
www.metaphacts.com
Get in Touch!

Weitere ähnliche Inhalte

Was ist angesagt?

Data Mesh Part 4 Monolith to Mesh
Data Mesh Part 4 Monolith to MeshData Mesh Part 4 Monolith to Mesh
Data Mesh Part 4 Monolith to Mesh
Jeffrey T. Pollock
 

Was ist angesagt? (20)

Introduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AIIntroduction to Knowledge Graphs and Semantic AI
Introduction to Knowledge Graphs and Semantic AI
 
Introduction to Knowledge Graphs: Data Summit 2020
Introduction to Knowledge Graphs: Data Summit 2020Introduction to Knowledge Graphs: Data Summit 2020
Introduction to Knowledge Graphs: Data Summit 2020
 
Google Knowledge Graph
Google Knowledge GraphGoogle Knowledge Graph
Google Knowledge Graph
 
Introduction to Knowledge Graphs
Introduction to Knowledge GraphsIntroduction to Knowledge Graphs
Introduction to Knowledge Graphs
 
Debunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative FactsDebunking some “RDF vs. Property Graph” Alternative Facts
Debunking some “RDF vs. Property Graph” Alternative Facts
 
Enterprise Knowledge Graph
Enterprise Knowledge GraphEnterprise Knowledge Graph
Enterprise Knowledge Graph
 
AI, Knowledge Representation and Graph Databases -
 Key Trends in Data Science
AI, Knowledge Representation and Graph Databases -
 Key Trends in Data ScienceAI, Knowledge Representation and Graph Databases -
 Key Trends in Data Science
AI, Knowledge Representation and Graph Databases -
 Key Trends in Data Science
 
Building and using ontologies
Building and using ontologies Building and using ontologies
Building and using ontologies
 
Graph databases
Graph databasesGraph databases
Graph databases
 
Elsevier’s Healthcare Knowledge Graph
Elsevier’s Healthcare Knowledge GraphElsevier’s Healthcare Knowledge Graph
Elsevier’s Healthcare Knowledge Graph
 
RDF and OWL
RDF and OWLRDF and OWL
RDF and OWL
 
Knowledge Graphs & Graph Data Science, More Context, Better Predictions - Neo...
Knowledge Graphs & Graph Data Science, More Context, Better Predictions - Neo...Knowledge Graphs & Graph Data Science, More Context, Better Predictions - Neo...
Knowledge Graphs & Graph Data Science, More Context, Better Predictions - Neo...
 
Data Mesh Part 4 Monolith to Mesh
Data Mesh Part 4 Monolith to MeshData Mesh Part 4 Monolith to Mesh
Data Mesh Part 4 Monolith to Mesh
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Compact Representation of Large RDF Data Sets for Publishing and Exchange
Compact Representation of Large RDF Data Sets for Publishing and ExchangeCompact Representation of Large RDF Data Sets for Publishing and Exchange
Compact Representation of Large RDF Data Sets for Publishing and Exchange
 
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from RealityBuilding an Enterprise Knowledge Graph @Uber: Lessons from Reality
Building an Enterprise Knowledge Graph @Uber: Lessons from Reality
 
An Introduction to SPARQL
An Introduction to SPARQLAn Introduction to SPARQL
An Introduction to SPARQL
 
Dspace 7 presentation
Dspace 7 presentationDspace 7 presentation
Dspace 7 presentation
 
Introduction to Graph Databases
Introduction to Graph DatabasesIntroduction to Graph Databases
Introduction to Graph Databases
 
How Graph Algorithms Answer your Business Questions in Banking and Beyond
How Graph Algorithms Answer your Business Questions in Banking and BeyondHow Graph Algorithms Answer your Business Questions in Banking and Beyond
How Graph Algorithms Answer your Business Questions in Banking and Beyond
 

Ähnlich wie ESWC 2017 Tutorial Knowledge Graphs

Engaging Information Professionals in the Process of Authoritative Interlinki...
Engaging Information Professionals in the Process of Authoritative Interlinki...Engaging Information Professionals in the Process of Authoritative Interlinki...
Engaging Information Professionals in the Process of Authoritative Interlinki...
Lucy McKenna
 
DBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
DBpedia Mappings Wiki, SMWCon Fall 2013, BerlinDBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
DBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
Anja Jentzsch
 

Ähnlich wie ESWC 2017 Tutorial Knowledge Graphs (20)

Methodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked DataMethodological Guidelines for Publishing Linked Data
Methodological Guidelines for Publishing Linked Data
 
Introduction_to_knowledge_graph.pdf
Introduction_to_knowledge_graph.pdfIntroduction_to_knowledge_graph.pdf
Introduction_to_knowledge_graph.pdf
 
The Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open DataThe Europeana Strategy and Linked Open Data
The Europeana Strategy and Linked Open Data
 
Moving content across the OpenAIRE infrastructure boundaries (6th RDA Plenary)
Moving content across the OpenAIRE infrastructure boundaries (6th RDA Plenary) Moving content across the OpenAIRE infrastructure boundaries (6th RDA Plenary)
Moving content across the OpenAIRE infrastructure boundaries (6th RDA Plenary)
 
Smart Data Applications powered by the Wikidata Knowledge Graph
Smart Data Applications powered by the Wikidata Knowledge GraphSmart Data Applications powered by the Wikidata Knowledge Graph
Smart Data Applications powered by the Wikidata Knowledge Graph
 
Enabling better science: Results and vision of the OpenAIRE infrastructure an...
Enabling better science: Results and vision of the OpenAIRE infrastructure an...Enabling better science: Results and vision of the OpenAIRE infrastructure an...
Enabling better science: Results and vision of the OpenAIRE infrastructure an...
 
Enabling better science - Results and vision of the OpenAIRE infrastructure a...
Enabling better science - Results and vision of the OpenAIRE infrastructure a...Enabling better science - Results and vision of the OpenAIRE infrastructure a...
Enabling better science - Results and vision of the OpenAIRE infrastructure a...
 
ALIADA Project. AtCult
ALIADA Project. AtCultALIADA Project. AtCult
ALIADA Project. AtCult
 
Linked Open Data for Cultural Heritage
Linked Open Data for Cultural HeritageLinked Open Data for Cultural Heritage
Linked Open Data for Cultural Heritage
 
IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020
IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020
IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020
 
IIIF and Mirador at the YCBA: image based scholarly collaboration and research
IIIF and Mirador at the YCBA: image based scholarly collaboration and researchIIIF and Mirador at the YCBA: image based scholarly collaboration and research
IIIF and Mirador at the YCBA: image based scholarly collaboration and research
 
Publishing the British National Bibliography as Linked Open Data / Corine Del...
Publishing the British National Bibliography as Linked Open Data / Corine Del...Publishing the British National Bibliography as Linked Open Data / Corine Del...
Publishing the British National Bibliography as Linked Open Data / Corine Del...
 
International Image Interoperability Framework (IIIF)
International Image Interoperability Framework (IIIF)International Image Interoperability Framework (IIIF)
International Image Interoperability Framework (IIIF)
 
Engaging Information Professionals in the Process of Authoritative Interlinki...
Engaging Information Professionals in the Process of Authoritative Interlinki...Engaging Information Professionals in the Process of Authoritative Interlinki...
Engaging Information Professionals in the Process of Authoritative Interlinki...
 
DBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
DBpedia Mappings Wiki, SMWCon Fall 2013, BerlinDBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
DBpedia Mappings Wiki, SMWCon Fall 2013, Berlin
 
Entification: The Route to 'Useful' Library Data
Entification: The Route to 'Useful' Library DataEntification: The Route to 'Useful' Library Data
Entification: The Route to 'Useful' Library Data
 
Ee bdm ws-v1
Ee bdm ws-v1Ee bdm ws-v1
Ee bdm ws-v1
 
Linked Open Data and The Digital Archaeological Workflow at the Swedish Natio...
Linked Open Data and The Digital Archaeological Workflow at the Swedish Natio...Linked Open Data and The Digital Archaeological Workflow at the Swedish Natio...
Linked Open Data and The Digital Archaeological Workflow at the Swedish Natio...
 
Marc and beyond: 3 Linked Data Choices
 Marc and beyond: 3 Linked Data Choices  Marc and beyond: 3 Linked Data Choices
Marc and beyond: 3 Linked Data Choices
 
OpenAIRE Guidelines for data providers: new Metadata Application Profile for ...
OpenAIRE Guidelines for data providers: new Metadata Application Profile for ...OpenAIRE Guidelines for data providers: new Metadata Application Profile for ...
OpenAIRE Guidelines for data providers: new Metadata Application Profile for ...
 

Mehr von Peter Haase

Ephedra: efficiently combining RDF data and services using SPARQL federation
Ephedra: efficiently combining RDF data and services using SPARQL federationEphedra: efficiently combining RDF data and services using SPARQL federation
Ephedra: efficiently combining RDF data and services using SPARQL federation
Peter Haase
 
Linked Data as a Service
Linked Data as a ServiceLinked Data as a Service
Linked Data as a Service
Peter Haase
 
Fedbench - A Benchmark Suite for Federated Semantic Data Processing
Fedbench - A Benchmark Suite for Federated Semantic Data ProcessingFedbench - A Benchmark Suite for Federated Semantic Data Processing
Fedbench - A Benchmark Suite for Federated Semantic Data Processing
Peter Haase
 
Everything Self-Service:Linked Data Applications with the Information Workbench
Everything Self-Service:Linked Data Applications with the Information WorkbenchEverything Self-Service:Linked Data Applications with the Information Workbench
Everything Self-Service:Linked Data Applications with the Information Workbench
Peter Haase
 
The Information Workbench as a Self-Service Platform for Linked Data Applicat...
The Information Workbench as a Self-Service Platform for Linked Data Applicat...The Information Workbench as a Self-Service Platform for Linked Data Applicat...
The Information Workbench as a Self-Service Platform for Linked Data Applicat...
Peter Haase
 
Cloud-based Linked Data Management for Self-service Application Development
Cloud-based Linked Data Management for Self-service Application DevelopmentCloud-based Linked Data Management for Self-service Application Development
Cloud-based Linked Data Management for Self-service Application Development
Peter Haase
 
Semantic Technologies for Enterprise Cloud Management
Semantic Technologies for Enterprise Cloud ManagementSemantic Technologies for Enterprise Cloud Management
Semantic Technologies for Enterprise Cloud Management
Peter Haase
 

Mehr von Peter Haase (14)

Visual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactoryVisual Ontology Modeling for Domain Experts and Business Users with metaphactory
Visual Ontology Modeling for Domain Experts and Business Users with metaphactory
 
Hybrid Enterprise Knowledge Graphs
Hybrid Enterprise Knowledge GraphsHybrid Enterprise Knowledge Graphs
Hybrid Enterprise Knowledge Graphs
 
Ephedra: efficiently combining RDF data and services using SPARQL federation
Ephedra: efficiently combining RDF data and services using SPARQL federationEphedra: efficiently combining RDF data and services using SPARQL federation
Ephedra: efficiently combining RDF data and services using SPARQL federation
 
Building Enterprise-Ready Knowledge Graph Applications in the Cloud
Building Enterprise-Ready Knowledge Graph Applications in the CloudBuilding Enterprise-Ready Knowledge Graph Applications in the Cloud
Building Enterprise-Ready Knowledge Graph Applications in the Cloud
 
Discovering Related Data Sources in Data Portals
Discovering Related Data Sources in Data PortalsDiscovering Related Data Sources in Data Portals
Discovering Related Data Sources in Data Portals
 
Mapping, Interlinking and Exposing MusicBrainz as Linked Data
Mapping, Interlinking and Exposing MusicBrainz as Linked DataMapping, Interlinking and Exposing MusicBrainz as Linked Data
Mapping, Interlinking and Exposing MusicBrainz as Linked Data
 
The Information Workbench - Linked Data and Semantic Wikis in the Enterprise
The Information Workbench - Linked Data and Semantic Wikis in the EnterpriseThe Information Workbench - Linked Data and Semantic Wikis in the Enterprise
The Information Workbench - Linked Data and Semantic Wikis in the Enterprise
 
On demand access to Big Data through Semantic Technologies
 On demand access to Big Data through Semantic Technologies On demand access to Big Data through Semantic Technologies
On demand access to Big Data through Semantic Technologies
 
Linked Data as a Service
Linked Data as a ServiceLinked Data as a Service
Linked Data as a Service
 
Fedbench - A Benchmark Suite for Federated Semantic Data Processing
Fedbench - A Benchmark Suite for Federated Semantic Data ProcessingFedbench - A Benchmark Suite for Federated Semantic Data Processing
Fedbench - A Benchmark Suite for Federated Semantic Data Processing
 
Everything Self-Service:Linked Data Applications with the Information Workbench
Everything Self-Service:Linked Data Applications with the Information WorkbenchEverything Self-Service:Linked Data Applications with the Information Workbench
Everything Self-Service:Linked Data Applications with the Information Workbench
 
The Information Workbench as a Self-Service Platform for Linked Data Applicat...
The Information Workbench as a Self-Service Platform for Linked Data Applicat...The Information Workbench as a Self-Service Platform for Linked Data Applicat...
The Information Workbench as a Self-Service Platform for Linked Data Applicat...
 
Cloud-based Linked Data Management for Self-service Application Development
Cloud-based Linked Data Management for Self-service Application DevelopmentCloud-based Linked Data Management for Self-service Application Development
Cloud-based Linked Data Management for Self-service Application Development
 
Semantic Technologies for Enterprise Cloud Management
Semantic Technologies for Enterprise Cloud ManagementSemantic Technologies for Enterprise Cloud Management
Semantic Technologies for Enterprise Cloud Management
 

KĂźrzlich hochgeladen

➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men 🔝Thrissur🔝 Escor...
➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men  🔝Thrissur🔝   Escor...➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men  🔝Thrissur🔝   Escor...
➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men 🔝Thrissur🔝 Escor...
amitlee9823
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
amitlee9823
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
amitlee9823
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
karishmasinghjnh
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Probability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter LessonsProbability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter Lessons
JoseMangaJr1
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
amitlee9823
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

KĂźrzlich hochgeladen (20)

➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men 🔝Thrissur🔝 Escor...
➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men  🔝Thrissur🔝   Escor...➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men  🔝Thrissur🔝   Escor...
➥🔝 7737669865 🔝▻ Thrissur Call-girls in Women Seeking Men 🔝Thrissur🔝 Escor...
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Research
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
 
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% SecureCall me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
 
Capstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics ProgramCapstone Project on IBM Data Analytics Program
Capstone Project on IBM Data Analytics Program
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Probability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter LessonsProbability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter Lessons
 
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
Chintamani Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore ...
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFx
 
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

ESWC 2017 Tutorial Knowledge Graphs

  • 1. Getting Started with Knowledge Graphs European Semantic Web Conference May 29, 2017 Peter Haase
  • 2. 2 Peter Haase • Interest and experience in ontologies, semantic technologies and Linked Data • PhD in KR and semantic technologies • 15 years in academic research and software development • Contributor to OWL 2 standard metaphacts Company Facts • Founded in Q4 2014 • Headquartered in Walldorf, Germany • Currently ~10 people • Platform for knowledge graph interaction & application development About the Speaker
  • 3. 3 Introduction: What are Knowledge Graphs? Examples and Applications • Wikidata • Cultural Heritage • Industrial Applications Standards and Principles Knowledge Graph Management Hands-on Exercises: • metaphactory Knowledge Graph Platform Agenda
  • 5. 5 • Download metaphactory (or copy from USB stick) http://www.knowledgegraph.info/ • Follow README, start metaphactory start.sh / start.bat • Open start page http://localhost:10214 • Follow “Getting started tutorial” http://localhost:10214/resource/Help:Tutorial Hands-on Exercises
  • 7. 7 The Rise of Knowledge Graphs
  • 8. 8 • We need a structured and formal representation of knowledge • We are surrounded by entities, which are connected by relations • Graphs are a natural way to represent entities and their relationships • Graphs can be managed efficiently Why (Knowledge) Graphs?
  • 9. 9 A (very small) Knowledge Graph http://www.w3.org/TR/2014/NOTE-rdf11-primer-20140225/example-graph.jpg
  • 10. 10 • Semantic descriptions of entities and their relationships • Uses a knowledge representation formalism (Focus here: RDF, RDF-Schema, OWL) • Entities: real world objects (things, places, people) and abstract concepts (genres, religions, professions) • Relationships: graph-based data model where relationships are first-class • Semantic descriptions: types and properties with a well- defined meaning (e.g. through an ontology) • Possibly axiomatic knowledge (e.g. rules) to support automated reasoning What are Knowledge Graphs?
  • 11. 11 Knowledge Graphs Enabling Intelligent Applications Knowledge Graph Algorithms Applications Data Transformation, Integration Natural Language Processing Data Sources • Inferencing • Machine Learning • Entity Recognition • Disambiguation • Text Understanding • Recommendations • Semantic Search • Question Answering • Knowledge Sharing • Knowledge Management • Analytics • Entities • Relationships • Semantic Descriptions • Dashboards
  • 14. 14 Entity Search and Summarizations Google Knowledge Graph
  • 17. 17 Knowledge Graph Search API https://developers.google.com/knowledge-graph/
  • 21. 21 Wikipedia page A query against Wikipedia Query the Knowledge of Wikipedia like a Database 21
  • 22. 22 • Collecting structured data. Unlike the Wikipedias, which produce encyclopedic articles, Wikidata collects data, in a structured form. • Collaborative. The data in Wikidata is entered and maintained by Wikidata editors, who decide on the rules of content creation and management in Wikidata supporting the notion of verifiability. • Free. The data in Wikidata is published under the Creative Commons • Large. • 26 million entities • 150 million statements • 130 million labels • 350 languages • >1500 million triples Wikidata
  • 23.
  • 24.
  • 26. 26 • Build your applications using Wikidata • Free corpus of structured knowledge • Easily accessible and standards-based • See http://query.wikidata.org/ • Contextualize your enterprise data • Wikidata provides stable identifiers into the open data world • Seamless integration of private data with open data • Enrich Wikidata with your data • Contribute your data to Wikidata • Link to your own data, make it visible • Examples: • Open biomedical databases – Wikidata as a central hub • Cultural heritage Use Cases for the Wikidata Knowledge Graph
  • 27.
  • 30. 30 • Challenge: • Very context-rich data • Multi-disciplinary data, e.g. archaeologists, historians, librarians • Multi-institutional data • Complex domain, relationships, e.g. temporal, spatial, historical, political • Benefits of Knowledge Graphs • Integration and interchange of heterogeneous cultural heritage information • Rich ontologies for knowledge representation • Deep semantics for true conceptual merging • Multi-lingual knowledge representation • Knowledge access across museums and organizations • Enabling knowledge sharing and collaboration Benefits of Knowledge Graphs for Cultural Heritage
  • 31. 31 • Collaboration environment for researchers in Cultural Heritage • Expert users: researchers, curators • Based on CIDOC-CRM: very rich, expressive ontology • Large, cross-museum data sets • E.g. British Museum: 100s millions of triples • Advanced search capabilities • Supporting query construction • Sharing of searches, results, visualizations • Knowledge sharing • Discussions around cultural heritage annotations • Argumentation support: Representation of conflicting views and opionions ResearchSpace: Knowledge Graphs for Cultural Heritage http://researchspace.org/
  • 34. 34 • Instance data (ground truth) • Schema data (vocabularies, ontologies) • Metadata (e.g. provenance, versioning, documentation licensing) • Comprehensive taxonomies to categorize entities • Links between internal and external data • Mappings to data stored in other systems and databases Multi-domain, source, granularity Holistic Knowledge
  • 35. 35 Semantics on the Web Semantic Web Stack Berners-Lee (2006) Syntactic basis Basic data model Simple vocabulary (schema) language Expressive vocabulary (ontology) language Query language Application specific declarative-knowledge Digital signatures, recommendations Proof generation, exchange, validation
  • 36. 36 Knowledge Graphs Built on the Semantic Web Layer Cake Unicode URIs RDF (Resource Description Framework) RDF-Schema OWLSKOS SPARQL Query language Entities Relationships Vocabularies Ontologies Expressive Ontology Language Thesauri, classification schemes Graph data model Simple vocabulary language
  • 37. 37 Our Knowledge Graph again (a bit more technical)
  • 38. 38 Graph consists of: • Resources (identified via URIs) • Literals: data values with data type (URI) or language (multilinguality integrated) • Attributes of resources are also URI- identified (from vocabularies) Our Knowledge Graph again (a bit more technical) • Various data sources and vocabularies can be arbitrarily mixed and meshed • URIs can be shortened with namespace prefixes; e.g. schema: → http://schema.org/
  • 39. 39 Allows one to talk about anything Uniform Resource Identifier (URI) can be used to identify entities http://dbpedia.org/resource/Leonardo_da_Vinci is a name for Leonardo da Vinci http://www.wikidata.org/entity/Q12418 is a name for the Mona Lisa painting Resource Description Framework (RDF)
  • 40. 40 Allows one to express statements An RDF statement consists of: • Subject: resource identified by a URI • Predicate: resource identified by a URI • Object: resource or literal Resource Description Framework (RDF)
  • 41. 41 N-Triples Syntax <http://www.wikidata.org/entity/Q12418> <http://purl.org/dc/terms/creator> <http://dbpedia.org/resource/Leonardo_da_Vinci> . <http://www.wikidata.org/entity/Q12418> <http://purl.org/dc/terms/title> "Mona Lisa" . Resource Description Framework (RDF) URIs are given in angle brackets in N-Triples. Literals are given in quotes in N-Triples. In N-Triples every statement is terminated with a full stop.
  • 42. 42 • Every set of RDF assertions can then be drawn and manipulated as a (labelled directed) graph: • Resources – the subjects and objects are nodes of the graph. • Predicates – each predicate use becomes a label for an arc, connecting the subject to the object. RDF Graphs Subject Object Predicate
  • 43. 43 Resource Description Framework (RDF) <http://dbpedia.org/resource/ Leonardo_da_Vinci> <http://www.wikidata.org/ entity/Q12418> <http://purl.org/dc/terms/creator> "Mona Lisa" <http://purl.org/dc/terms/title>
  • 44. 44 • Turtle is a syntax for RDF more readable. • Since many URIs share same basis we use prefixes: RDF Turtle @prefix foaf: <http://xmlns.com/foaf/0.1/>. @prefix xsd: <http://www.w3.org/2001/XMLSchema#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix schema: <http://schema.org/>. @prefix dcterms: <http://purl.org/dc/terms/>. @prefix wd: <http://www.wikidata.org/entity/>.
  • 45. 45 • Also has a simple shorthand for class membership: @prefix foaf: <http://xmlns.com/foaf/0.1/>. <http://example.org/bob#me> a foaf:Person . Is equivalent to: <http://example.org/bob#me> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person>. RDF Turtle
  • 46. 46 • When multiple statements apply to same subject they can be abbreviated as follows: wd:Q12418 dcterms:title "Mona Lisa" ; dcterms:creator <http://dbpedia.org/resource/Leonardo_da_Vinci> . RDF Turtle Same subject
  • 47. 47 1. Follow http://localhost:10214/resource/Help:Tutorial 2. Load sample.ttl via http://localhost:10214/resource/Admin:DataImportExport 3. Browse and explore sample data Hands-on: Loading Data
  • 48. 48 • Collections of defined relationships and classes of resources. • Classes group together similar resources. • Terms from well-known vocabularies should be reused wherever possible. • New terms should be defined only if you can not find required terms in existing vocabularies. Describing Data: Vocabularies
  • 49. 49 A set of well-known vocabularies has evolved in the Semantic Web community. Some of them are: Describing Data: Vocabularies Vocabulary Description Classes and Relationships Friend-of-a-Friend (FOAF) Vocabulary for describing people. foaf:Person, foaf:Agent, foaf:name, foaf:knows, foaf:member Dublin Core (DC) Defines general metadata attributes. dc:FileFormat, dc:MediaType, dc:creator, dc:description Organization Ontology (org) Publishing of organization information. org:Organisation, org:Site, org:Role, org:member, org:hasSite schema.org Cross-domain vocabulary for annotation of Web pages. schema:Event, schema:Product, schema:location, schema:image
  • 50. 50 • Language for two tasks w.r.t. the RDF data model: • Definition of vocabulary – nominate: • the ‘types’, i.e., classes, of things we might make assertions about, and • the properties we might apply, as predicates in these assertions, to capture their relationships. • Inference – given a set of assertions, using these classes and properties, specify what should be inferred about assertions that are implicitly made. RDF-S – RDF Schema
  • 51. 51 • rdfs:Class – Example: foaf:Person – Represents the class of persons • rdf:Property – Class of RDF properties. Example: foaf:knows – Represents that a person “knows” another • rdfs:domain – States that any resource that has a given property is an instance of one or more classes foaf:knows rdfs:domain foaf:Person • rdfs:range – States that the values of a property are instances of one or more classes foaf:knows rdfs:range foaf:Person RDF-S – RDF Schema
  • 52. 52 RDF-S – RDF Schema foaf:knows rdfs:range foaf:Person . <http://example.org/bob#me> foaf:knows <http://example.org/alice#me>. <http://example.org/alice#me> rdf:type foaf:Person. Schema Existing fact Inferred fact We expect to use this vocabulary to make assertions about persons. Having made such an assertion... Inferences can be drawn that we did not explicitly make
  • 53. 53 1. Load foaf.rdf via http://localhost:10214/resource/Admin:DataImportExport 2. Browse and explore FOAF vocabulary Hands-on: Load FOAF Vocabulary
  • 54. 54 • RDFS provides a simplified ontological language for defining vocabularies about specific domains. • OWL provides more ontological constructs for knowledge representation. • Semantics grounded in Description Logics. • Most graph databases concentrate on the use of RDFS with a subset of OWL features. OWL – Web Ontology Language
  • 55. 55 Extends the DL further, but has three more computable fragments (profiles). OWL 2.0 – Web Ontology Language 2.0 55 OWL 2 Full • Used informally to refer to RDF graphs considered as OWL 2 ontologies and interpreted using the RDF-Based Semantics. OWL 2 DL • Used informally to refer to OWL 2 DL ontologies interpreted using the Direct Semantics. OWL 2 EL • Limited to basic classification, but with polynomial-time reasoning. OWL 2 QL • Designed to be translatable to relational database querying. OWL 2 RL • Designed to be efficiently implementable in rule-based systems. OWL 2 Full OWL 2 DL OWL 2 EL OWL 2 QL OWL 2 RL
  • 56. 56 OWL is made up of terms which provide for: • Class construction: forming new classes from membership of existing ones (e.g., unionOf, intersectionOf, etc.). • Property construction: distinction between OWL ObjectProperties (resources as values) and OWL DatatypeProperties (literals as values). • Class axioms: sub-class, equivalence and disjointness relationships. • Property axioms: sub-property relationship, equivalence and disjointness, and relationships between properties. • Individual axioms: statements about individuals (sameIndividual, differentIndividuals). OWL – Web Ontology Language
  • 57. 57 Example: CIDOC-CRM Ontology Class: Person SubClassOf: Actor SubClassOf: Biological Object SubClassOf: was_born exactly 1 SubClassOf: has_parent min 2 Class: Physical Thing SubClassOf: Legal Object SubClassOf: Spacetime Volume DisjointWith: Conceptual Object SubClassOf: consists_of some Material
  • 58. 58 1. Load ecrm_current.owl via http://localhost:10214/resource/Admin:DataImportExport 2. Browse and explore CIDOC-CRM ontology Hands-on: Load CIDOC-CRM Ontology
  • 59. 59 • Data model for knowledge organization systems (thesauri, classification scheme, taxonomies) • Conceptual resources (concepts) can be • identified with URIs, • labeled with lexical strings in natural language, • documented with various types of note, • semantically related to each other in informal hierarchies and association networks and • aggregated into concept schemes. SKOS - Simple Knowledge Organization System http://www.w3.org/TR/skos-reference/
  • 61. 61 • Query language for RDF-based knowledge graphs. • Designed to use a syntax similar to SQL for retrieving data from relational databases. • Different query forms: • SELECT returns variables and their bindings directly. • CONSTRUCT returns a single RDF graph specified by a graph template. • ASK test whether or not a query pattern has a solution. Returns yes/no. • DESCRIBE returns a single RDF graph containing RDF data about resources. SPARQL – * Protocol and RDF Query Language
  • 62. 62 Main idea: Pattern matching • Queries describe sub-graphs of the queried graph • Graph patterns are RDF graphs specified in Turtle syntax, which contain variables (prefixed by either “?” or “$”) • Sub-graphs that match the graph patterns yield a result SPARQL – * Protocol and RDF Query Language dbpedia: Leonardo_da_Vinci ?var dcterms:creator
  • 63. 63 SPARQL – * Protocol and RDF Query Language ?interest <http://example.org/ bob#me> foaf:topic_interest Results: ?interest wd:Q12418 Graph pattern: Data graph:
  • 64. 64 SPARQL – * Protocol and RDF Query Language ?interest <http://example.org/ bob#me> foaf:topic_interest Results: ?creator dcterms:creator ?interest ?creator wd:Q12418 dbpedia: Leonardo_da_Vinci Graph pattern: Data graph:
  • 65. 65 PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?creator WHERE { <http://example.org/bob#me> foaf:topic_interest ?interest . ?interest dcterms:creator ?creator } SPARQL Query: Components Prologue: • Prefix definitions • Subtly different from Turtle syntax - the final period is not used
  • 66. 66 PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?creator WHERE { <http://example.org/bob#me> foaf:topic_interest ?interest . ?interest dcterms:creator ?creator } SPARQL Query: Components Query form: • ASK, SELECT, DESCRIBE or CONSTRUCT • SELECT retrieves variables and their bindings as a table
  • 67. 67 PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?creator WHERE { <http://example.org/bob#me> foaf:topic_interest ?interest . ?interest dcterms:creator ?creator } SPARQL Query: Components Query pattern: • Defines patterns to match against the data • Generalises Turtle with variables and keywords – N.B. final period optional
  • 68. 68 • Use the local SPARQL endpoint: http://localhost:10214/sparql • Execute the queries from the tutorial 1. Select all statements about Bob 2. Select the creator of the things that Bob is interested in. Hands-on: Execute SPARQL Query
  • 69. 69 • Namespaces are added with the ‘PREFIX’ directive • Statement patterns that make up the graph are specified between brackets (“{}”) Query Form: ASK PREFIX foaf: http://xmlns.com/foaf/0.1/ ASK WHERE { <http://example.org/bob#me> foaf:knows <http://example.org/alice#me> } Does Bob know Alice?Query: true Results: Is Alice interested in the Mona Lisa?Query: false Results: PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX wd: <http://www.wikidata.org/entity/> ASK WHERE { <http://example.org/alice#me> foaf:topic_interest wd:Q12418}
  • 70. 70 • A property path is a possible route through a graph between two graph nodes • Property paths allow for more concise expression of some SPARQL basic graph patterns and also add the ability to match arbitrary length paths Query Form: SELECT – Property Paths PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?creator WHERE { <http://example.org/bob#me> foaf:topic_interest / dcterms:creator ?creator } Query: Creator of things that Bob is interested in?
  • 71. 71 Filter expressions • Different types of filters and functions may be used Query Form: SELECT - FILTER Expressions PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT ?person ?another WHERE { ?person foaf:knows ?another FILTER NOT EXISTS { ?another foaf:knows ?person } } Query: People who know someone who does not know them? Filter: Comparison and logical operators
  • 72. 72 • Calculate aggregate values: COUNT, SUM, MIN, MAX, AVG, GROUP_CONCAT and SAMPLE • Built around the GROUP BY operator • Prune at group level (cf. FILTER) using HAVING Query Form: SELECT - Aggregates PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?person (COUNT(?another) as ?num_friends) WHERE { ?person a foaf:Person OPTIONAL { ?person foaf:knows ?another } } GROUP BY ?person How many friends do people have?Query:
  • 73. 73 • CONSTRUCT WHERE: In order to query for a subgraph, without change, it is no longer necessary to repeat the graph pattern in the template Query Form: CONSTRUCT CONSTRUCT WHERE { <http://example.org/bob#me> ?p ?o } Example:
  • 74. 74 • Graph– and vocabulary transformations Query Form: CONSTRUCT PREFIX wdt: <http://www.wikidata.org/prop/direct/> PREFIX dcterms: <http://purl.org/dc/terms/> CONSTRUCT { ?creator wdt:P800 ?work } # wdt:P800 = notable work WHERE { ?work dcterms:creator ?creator } Example:
  • 75. 75 • Allows federating across multiple SPARQL endpoints • The SERVICE keyword instructs to invoke a portion of a SPARQL query against a remote SPARQL endpoint SPARQL Federated Query PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX dcterms: <http://purl.org/dc/terms/> SELECT * WHERE { <http://example.org/bob#me> foaf:topic_interest ?interest . SERVICE <https://query.wikidata.org/sparql> { ?interest ?predicate ?object } } Find information about things that Bob likes at WikidataQuery:
  • 76. 76 SPARQL 1.1 provides data update operations: • INSERT data: adds some triples, given inline in the request, into a graph • DELETE data: removes some triples, given inline in the request, if the respective graphs contains those • DELETE/INSERT data: uses in parallel INSERT and DELETE SPARQL 1.1 Update
  • 79. 79 Aspects of Knowledge Graph Management KNOWLEDGE GRAPH STORAGE • Scalable data loading and storage • Querying and analytics • Built-in inferencing and custom services • Management of hybrid data sources KNOWLEDGE GRAPH CREATION • Model- and ontology development • Semi-automatic creation from structures sources (data lifting) • Interlinking of data from heterogeneous sources • Collaborative authoring • Data annotation • Versioning and provenance • Quality Assurance KNOWLEDGE GRAPH CONSUMPTION • Development of end-user oriented applications • Interactive visualization • Exploration • Semantic search • Natural language interfaces
  • 80. 80 metaphacts Supports the Whole Data Lifecyle Data Extraction & Integration Data Linking & Enrichment Storage & Repositories Querying & Inferencing Search Visualization Authoring end-to-end platform
  • 81. 81 metaphactory as an Open Platform BUILT IN OPEN SOURCE Ăź Dual licensing (LGPL & commercial license) Ăź Open Platform API and SDK Ăź Integration of external tools and application via APIs Ăź Easy development of own web components and services Ăź Full HTML5 compliance Ăź Re-usable, declaratively configurable Web Components = Easy modification, customization, and extensibility BUILT ON OPEN STANDARDS Ăź W3C Web Components Ăź W3C Open Annotation Data Model Ăź W3C Linked Data Platform Containers Ăź Data processing based on W3C standards such as RDF, SPARQL Ăź Expressive ontologies for schema modeling based on OWL 2, SKOS Ăź Rules, constraints, and query specification based on SPIN and RDF Data Shapes = Sustainable Solution
  • 82. 82 metaphactory Platform Architecture Data Services Applications Graph Database Graph Analytics Provenance Catalog Services Exploration VisualizationConfiguration Search Access Control Knowledge Graph Management App Factory End UsersExpert/domain Users Smart Apps Developers InferencingSPARQL Endpoint
  • 83. 83 Users and their Benefits EXPERT USERS • Collaboratively construct and manage knowledge graphs • Integrate data from heterogeneous sources • Use standard connectors for a variety of data formats • Benefit from scalable data processing for big graphs • Conduct high- performance querying and analytics DEVELOPERS • Rapidly develop Web and mobile end-user oriented applications • Benefit from various deployment modes: stand- alone, HA, scale-up, scale- out • Interact with an easy-to- use interface • Collaboratively manage, annotate and author data • Use large set of custom query and templates catalogs • Capture of provenance information END USERS • Benefit from user-friendly interaction with data • Gain insights into complex relationships • Enable transparency and extract value • Ask questions and obtain precise results • Reduce effort for data analysis • Reduce noise – obtain targeted, high quality results • Enhance quality of business decisions
  • 84. 84 Search • Domain independent, fully customizable search widget • Satisfy complex information needs without learning SPARQL • Search functionalities • Graphical query construction • End user friendly search interfaces for building and sharing complex queries • Semantic auto suggestion • Interactive result visualization • Faceted search and exploration of item collections • Ability to invoke external full text search indices such as Solr including the possibility to score, rank and limit the results for responsive autosuggestion • Saving and sharing of queries and search results Search
  • 85. 85 Table Transform your queries into durable, interactive tables Many customization possibilities, e.g. pagination, filters and cell templates Graph Visualize and explore connections in a graph view Custom styling of the graph Variety of graph layouts Carousel Animated browsing through a list of result items Chart Visualize trends and relationships between numbers, ratios, or proportions Visuali- zation Tree Table Tree-based visualization, navigation and browsing through sub- tree structures Map Displaying spatial data on a geographic map Visualization
  • 86. 86 Autho- ring • Annotations • Based on W3C Open Annotation Data Model • Automated semantic link extraction • Form based authoring • Manually author and update instance data, backed by query templates, data dependencies, and type constraints • Rich editing components for special data types • Customizable flexible forms • Autosuggestion and validation against the knowledge graph • Capturing of provenance information • User group management Authoring
  • 87. 87 Install & Go: Out-of-the-Box Functionality Getting Started Tutorial to guide you through your first steps with metaphactory Get started Management of Queries in Catalog for easy reuse and updating Keyword Search Interface with semantic autosuggestion, driven by SPARQL Search Data Overview Pages with Web components for end-user friendly data presentation and interaction Template-based Data Browser used to define generic views which are automatically applied to entire sets of instances Explore
  • 88. 88 Example: Simple Semantic Search Keyword search with semantic autosuggestion, driven by SPARQL Set up in ~2 minutes! Declarative Components Developer embeds ‘semantic-simple-search’ into the page <semantic-simple-search data- config='{ "query":" SELECT ?result ?label ?desc ?img WHERE { ?result rdfs:label ?label . ?result rdfs:comment ?desc . ?result foaf:thumbnail ?img . FILTER(CONTAINS(?label, ?token)) }", "searchTermVariable":"token", // user input "template":" <span title="{{result}}"> <img src="{{img}}" height="30"/> {{label}} ({{desc}})</span>" }'/> 1 Rendered component is displayed to the user and can be used right away 2 Autosuggestions are dynamically computed based on query and user input 3
  • 89. 89 • Associate a class in the knowledge graph with a template • The template is applied to instances of the class HTML5 Template Pages Bob foaf:Person rdf:type
  • 91. 91 Hands-on Exercises DATA LOADING & QUERYING • Loading your data • Querying your data VISUALIZATION • Visualizing results in a table • Visualizing results in a graph SEARCH • Embedding a simple search interface AUTHORING • Creating a template • Inserting and updating data
  • 92. 92 Data Loading & Querying Load data into the store via the data import and export administration page 1 2 Query the data via the SPARQL endpoint. E.g.: issue a query for all statements made about Bob as a subject 3 Visualize results in a table … or as raw data
  • 93. 93 Visualizing Results in a Table 3 Visualize results in a table displaying thumbnails as images, the labels of the resources as captions, and links to the individual resource pages 1 Embed ‘semantic-table’ component <semantic-table config='{ "query":"SELECT * WHERE { <http://example.org/bob#me> ?predicate ?object }“ }'> </semantic-table> to visualize previous query as a table in a page 2 Customize the query to embed thumbnail images in the result visualization SELECT ?uri ?label ?thumbnail WHERE { ?uri rdfs:label ?label; <http://schema.org/thumbnail > ?thumbnail } Use tupleTemplate to define a template for displaying the new table
  • 94. 94 Visualizing Results in a Graph 1 Embed ‘semantic-graph’ component <semantic-graph query="CONSTRUCT WHERE { ?s ?p ?o }"> </semantic-graph> 2 Visualize results in a graph
  • 95. 95 Embedding a Simple Search Interface Embed ‘semantic-simple- search’ into the page <semantic-simple-search config='{ "query":" SELECT ?uri ?label WHERE { FILTER REGEX(?label, "?token", "i") ?uri rdfs:label ?label } LIMIT 10 ", "searchTermVariable":"token", "resourceSelection":{ "resourceBindingName":"uri", "template":"<span style="color: blue;" title="{{uri.value}}">{{label. value}}</span>" }, "inputPlaceholder":"Search for something e.g. "Bob"" }'> </semantic-simple-search> 1 Rendered component is displayed and can be used right away 2 Autosuggestions are dynamically computed based on query and user input 3
  • 96. 96 Creating a Template 1 Use the templating mechanism to create a template for the resource type ‘Person’, to display: • the person's name • an image, if available • his interests • his friendship relationship 2 Visualize the result on Bob’s instance page
  • 97. 97 Inserting and Updating Data 1 Use a SPARQL UPDATE operation against the SPARQL endpoint to create and add new instance data • the person's name • an image, if available • his interests • his friendship relationship 2 Visualize the result
  • 98. 98 • Knowledge graphs as a flexible model for data integration and knowledge representation • Standards for “semantic” knowledge graphs • RDF as graph-based data model • OWL as expressive ontology language • SKOS for taxonomic knowledge • SPARQL as query language • Application areas • Open knowledge graphs, e.g. Wikidata • Cultural Heritage • Life Sciences • And many more • Get started with the metaphactory Knowledge Graph platform today! Summary
  • 99. 99 • Some slides build on the Euclid training material • Thanks to the team at metaphacts • Thanks to the ESWC organizers Acknowledgements and Thanks http://www.euclid-project.eu
  • 100. 100 metaphacts GmbH Daimlerstraße 36 69190 Walldorf Germany p +49 6227 6989965 m +49 157 50152441 e info@metaphacts.com @metaphacts www.metaphacts.com Get in Touch!