/
Part 4: Knowledge Graph 1 Part 4: Knowledge Graph 1

Part 4: Knowledge Graph 1 - PowerPoint Presentation

hirook
hirook . @hirook
Follow
342 views
Uploaded On 2020-11-06

Part 4: Knowledge Graph 1 - PPT Presentation

Knowledge Graph Representing Data Linking Data Searching Data Main Issues A knowledge graph is a special kind of database which stores knowledge in a machinereadable form and provides a means for information to be collected organised shared searched and utilised ID: 816048

graph rdf data foaf rdf graph foaf data vocabulary org http person resource web description owl subject knowledge prefix

Share:

Link:

Embed:

Download Presentation from below link

Download The PPT/PDF document "Part 4: Knowledge Graph 1" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Part 4: Knowledge Graph

1

Slide2

Knowledge Graph

Representing Data?

Linking Data?

Searching Data?

Main Issues:

A knowledge graph is a special kind of database which stores

knowledge in a machine-readable form

and provides a means for information to be collected, organised, shared, searched and utilised.

2

Slide3

Building the Knowledge Graph

Representing Data?

Linking Data?

Searching Data?

Main Issues:

3

Slide4

4

A model for publishing data on the web

- author

- title

- ISBN-…

✓ Resource

Everything and anything to which we can make reference: a web page, a product, a service, a video…

Everything that can be identified by means of a URI

Knowledge Graph

URI

:

A Uniform Resource Identifier is a string of characters that unambiguously identifies a particular

resource on the Web

Slide5

5

Linked data

Through

descriptions

: relations among resources

Description: Triple ( subject ,

predicate , object )Ex : John is

24 

subject

object

Predicate

John

24

age

Knowledge Graph

Slide6

6

Linked data

Description

:

Triple ( subject , predicate , object )

Ex : Duhem wrote a book on the theory of physics in 2007 

Predicates : Text (“The theory of physics”) Creator

(“The theory of physics”,

Duhem

)

Date

(“The theory of physics”, 2007)

Subject

(“The theory of physics” , Physics)

Triples

: (“The theory of physics” ,

type

, Text)

(“The theory of physics” ,

creator

, Duhem)

(“The theory of physics” , date , 2007) (“The theory of physics” , subject , Physique)

subject

object

Predicate

Do it!

Knowledge Graph

Slide7

7

The theory of physics

type

Graph

Text

creator

Duhem

subject

Physics

date

2007

Knowledge Graph

Slide8

8

The theory of physics

type

K Graph

Text

creator

Duhem

subject

Physics

date

2007

K Graph

ns:Duhem

owl:sameAs

K Graph

ns:Science

rdfs:subClassOf

The theory of physics

K Graph

author

Duhem

subject

Physics

date

2006

owl:sameAs

Connecting Knowledge Graphs

Slide9

9

Connecting Knowledge Graphs

Slide10

10

Resource Description Framework (RDF) is a model of graphs dedicated to describing in a formal fashion the Web resources and their metadata, in such a way so as to permit the automatic treatment of such descriptions.

RDF is a standard model for data interchange on the Web

. RDF has features that facilitate

data merging

even if the underlying schemas differ, and it specifically supports the evolution of schemas over time without requiring all the data consumers to be changed.

A Graph of Data

Resource Description Framework (RDF)

RDF is a directed,

labeled

graph data format for representing information in the Web

. RDF is often used to represent, among other things, personal information, social networks, metadata about digital

artifacts

, as well as to provide a means of integration over disparate sources of information.

Slide11

11

A Graph of Data

RDF extends the linking structure of the Web to use

URIs to name the relationship between things as well as the two ends of the link

(this is usually referred to as a “triple”). Using this simple model, it allows structured and semi-structured

data to be mixed, exposed, and shared

across different applications.

This linking structure forms a

directed,

labeled

graph

, where the edges represent the named link between two resources, represented by the graph nodes. This graph view is the easiest possible mental model for RDF and is often used in easy-to-understand visual explanations

Resource Description Framework (RDF)

Slide12

12

Remarks

:

RDF

identifies

Resources (subjects, objects) and Properties using URIs or URLs (access on the web)

The objects can be literals : chains of characters, integers, dates…

Namespace (prefix) permits to access a« vocabulary » of resources and properties:

Ex :

the RDF vocabulary is identified by the URI (prefix):

http://www.w3.org/1999/02/22-rdf-syntax-ns#

the

type

predicate belongs to the RDF vocabulary and is also identified by the URI :

http://www.w3.org/1999/02/22-rdf-syntax-ns#type

Or if

http://www.w3.org/1999/02/22-rdf-syntax-ns#

is associated to the prefix

rdf

by:

rdf:type

Resource Description Framework (RDF)

Slide13

13

ns:the_theory_of_physics

rdf:

type

Name

Spaces

dt:text

dc:

creator

ns:duhem

dc:

subject

dc:

date

“2007”

“physics”

@

prefix

rdf

:

<http://www.w3.org/1999/02/22-rdf-syntax-ns#>.

@

prefix

dc:

<http://

purl.org

/dc/

elements

/1.1/>.

@

prefix

dt

:

<http://

purl.org

/dc/

dcmitype

/>.

@

prefix

ns:

<http://

ns.condillac.org

/ex#>.

Resource Description Framework (RDF)

Slide14

14

Syntax

RDF/XML

N-Triples

Turtle

N3

Resource Description Framework (RDF)

Slide15

1. <?xml version="1.0"?>

2. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"3.

xmlns:dc

="http://

purl.org

/dc/elements/1.1/"4. xmlns:exterms="http://www.example.org/terms/">5. <rdf:Description rdf:about="http://

www.example.org/index.html">6. <exterms:creation-date>August 16, 1999</

exterms:creation-date>7. <dc:language>en</dc:language>8. <

dc:creator

rdf:resource

="http://

www.example.org

/

staffid

/85740"/>

9. </

rdf:Description

>

10. </

rdf:RDF

>

15

RDF/XML

Resource Description Framework (RDF)

https://www.w3.org/TR/

rdf

-primer/#

rdfxml

Slide16

16

Turtle

@

prefix

rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>.

@prefix rdfs:<http://www.w3.org/2000/01/rdf-schema

#>.@prefix dc:<http://purl.org/dc/elements/1.1/>.@

prefix

dt

:<http://

purl.org

/dc/

dcmitype

/>.

@

prefix

ns:<http://

ns.condillac.org

/ex#>.

ns:the_theory_of_physics

a

dt:Text

; dc:title

“The theory of physics" ; dc:creator

ns:duhem ;

dc:subject

<http://

./

physics

>

.

a ==

rdf:type

Vocabulary (ontology)

Ontology of Sciences

Resource Description Framework (RDF)

Slide17

Vocabulary

Terminology

Ontology

Vocabulary

Terminology

Ontology

Vocabularies

Ontologies

Terminologies?

Properties

Values

17

Slide18

Ontologies

Vocabularies

Vocabularies

Ontologies

Terminologies?

Concepts

Relations

Human

Man

Woman

subclass

subclass

Material

Wood

Metal

subclass

subclass

18

Slide19

What is a Vocabulary?

On the Semantic Web,

vocabularies

define

the

concepts

and relationships (also referred to as “terms”) used to

describe

and

represent

an

area of concern

.

Vocabularies are used to classify the terms that can be used in a particular application, characterize possible relationships, and define possible constraints on using those terms.

In practice, vocabularies can be very complex (with several thousands of terms) or very simple (describing one or two concepts only).

There is no clear division between what is referred to as “vocabularies” and “ontologies”

. The trend is to use the word “ontology” for more complex, and possibly quite formal collection of terms, whereas “vocabulary” is used when such strict formalism is not necessarily used or only in a very loose sense. Vocabularies are the basic building blocks for inference techniques on the Semantic Web.

https://www.w3.org/standards/semanticweb/ontology

Vocabularies

Ontologies

Terminologies?

19

Slide20

Vocabularies

– Ontologies

Terminologies

RDF

✓ RDFS (RDF Schema

)✓ DC

FOAF

SKOS

OWL

20

Slide21

21

Vocabulary1

RDF

:

« 

An RDF vocabulary is a collection of IRIs intended for use in RDF graphs. »An RDF triple

consists of three components: - the subject

, which is an IRI or a blank node

-

the

predicate

,

which

is

an IRI

- the

object

,

which

is

an IRI, a

literal

or a blank

nodeIRI

: Internationalized Resource Identifier

1

: Ontology = Vocabulary whose terms are formally defined

The Internationalized Resource Identifier (IRI) – is an internet protocol standard which extends the ASCII characters subset of the Uniform Resource Identifier (URI) protocol. While URIs are limited to a subset of the ASCII character set, IRIs may contain characters from the Universal Character Set (Unicode/ISO 10646), including Chinese, Japanese kanji, Korean, and Cyrillic characters.

RDF Vocabulary

Slide22

22

Vocabulary RDF Schema 1.1 (www.w3.org/TR/rdf-schema/)

RDF

Schema

provides a data-modelling vocabulary for RDF data.RDF Schema

is an extension of the basic RDF vocabulary.

rdf:Property

rdfs:domain

rdfs:range

RDFS Vocabulary

Slide23

23

RDF & RDFS VOCABULARIES

Slide24

24

Vocabulary Dublin Core

The Dublin Core Schema is a small set of vocabulary terms that can be used to describe digital resources (video, images, web pages, etc.), as well as physical resources such as books or CDs, and objects like artworks. The full set of Dublin Core metadata terms can be found on the Dublin Core Metadata Initiative (DCMI) website. The original set of 15 classic metadata terms, known as the Dublin Core Metadata Element Set (DCMES), is endorsed in the following standards documents:

- IETF RFC 5013

- ISO Standard 15836-1:2017

- NISO Standard Z39.85

Dublin Core metadata may be used for multiple purposes, from simple resource description to combining metadata vocabularies of different metadata standards, to providing interoperability for metadata vocabularies in the linked data cloud and Semantic Web implementations.

15

meta

data

Dublin Core Vocabulary (DC)

Slide25

25

Vocabulaire Dublin Core

Dublin Core Vocabulary (DC)

Slide26

26

FOAF (an acronym of Friend of a friend) is a

machine-readable ontology describing persons

, their activities and their relations to other people and objects. Anyone can use FOAF to describe him- or herself. FOAF allows groups of people to describe social networks without the need for a centralised database.

FOAF is a descriptive vocabulary expressed using the Resource Description Framework (RDF) and the Web Ontology Language (OWL). Computers may use these FOAF profiles to find, for example, all people living in Europe, or to list all people both you and a friend of yours know.[1][2] This is accomplished by defining relationships between people. Each profile has a unique identifier (such as the person's e-mail addresses, a Jabber ID, or a URI of the homepage or weblog of the person), which is used when defining these relationships.

Friend Of A Friend Vocabulary (FOAF)

Slide27

27

Friend Of A Friend Vocabulary (FOAF)

Slide28

28

Friend Of A Friend Vocabulary (FOAF)

Slide29

29

Friend Of A Friend Vocabulary (FOAF)

Slide30

30

https://www.w3.org/TR/skos-reference/

Many knowledge organization systems, such as thesauri, taxonomies, classification schemes and subject heading systems, share a similar structure, and are used in similar applications. SKOS captures much of this similarity and makes it explicit, to enable data and technology sharing across diverse applications.

The SKOS data model provides a standard, low-cost migration path for porting existing knowledge organization systems to the Semantic Web. SKOS also provides a lightweight, intuitive language for developing and sharing new knowledge organization systems. It may be used on its own, or in combination with formal knowledge representation languages such as the Web Ontology language (OWL).

Simple Knowledge Organization System (SKOS)

skos:Concept

skos:broader

skos:narrower

The properties

skos:broader

and

skos:narrower

are used to assert a direct hierarchical link between two SKOS concepts. A triple <A>

skos:broader

<B> asserts that <B>, the object of the triple, is a broader concept than <A>, the subject of the triple. Similarly, a triple <C>

skos:narrower

<D> asserts that <D>, the object of the triple, is a narrower concept than <C>, the subject of the triple.

Slide31

31

Vocabulary OWL (

https

://www.w3.org/TR/

owl-ref

/)5.2.1 owl:sameAsThe built-in OWL property owl:sameAs links an individual to an individual. Such an owl:sameAs

statement indicates that two URI references actually refer to the same thing: the individuals have the same "identity".For individuals such as "people" this notion is relatively easy to understand. For example, we could state that the following two URI references actually refer to the same person:

<rdf:Description rdf:about="#William_Jefferson_Clinton"> <

owl:sameAs

rdf:resource

="#

BillClinton

"/>

</

rdf:Description

>

The

owl:sameAs

statements are often used in defining mappings between ontologies. It is unrealistic to assume everybody will use the same name to refer to individuals. That would require some grand design, which is contrary to the spirit of the web.

Ontology Web Language Vocabulary (OWL)

The Web Ontology Language OWL is a semantic markup language for publishing and sharing ontologies on the World Wide Web. OWL is developed as a vocabulary extension of RDF (the Resource Description Framework) and is derived from the DAML+OIL Web Ontology Language. This document contains a structured informal description of the full set of OWL language constructs and is meant to serve as a reference for OWL users who want to construct OWL ontologies.

Slide32

Querying the Knowledge Graph

Representing Data?

Linking Data?

Searching Data?

Main Issues:

32

Slide33

33

A

Query

Language for RDF Graph➥ a SPARQL query consists of writing a query graph

➥ Retrieval: - graph matching

- graphs which match with the query graph

Most forms of SPARQL query contain a set of triple patterns called a

basic graph pattern

.

Triple patterns are like RDF triples except that each of the subject, predicate and object may be a variable.

A basic graph pattern matches a subgraph of the RDF data when RDF terms from that subgraph may be substituted for the variables and the result is RDF graph equivalent to the subgraph.

SPARQL

Slide34

?name

?person

foaf:name

rdf:type

foaf:Person

SPARQL

I’m looking for the names of people

=> all the possible couples of values of ?person and ?name

Graph Pattern

34

Slide35

35

S

PARQL

P

rotocol And RDF Q

uery Language

http://www.w3.org/TR/rdf-sparql-query/

SPARQL is an RDF query language—that is, a semantic query language for databases—able to retrieve and manipulate data stored in Resource Description Framework (RDF) format.

Similar to SQL for Relational Database

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT distinct ?name

WHERE

{ ?person rdf:type foaf:Person .

?person foaf:name ?name

}

LIMIT 10

The full-stop expresses the "

conjunction

"

SPARQL

Slide36

36

✓ Queries

Name spaces (prefixes)

:

prefix p1: <…> prefix

p2:<…> …Selected variables:

select…Query graph pattern: where

{

}

Modifiers

:

limit

order by

Query patterns

generate an unordered collection of

solutions

. These solutions are then treated as a sequence on which

sequence modifiers

are applied to create another sequence. Finally, this latter sequence is used to generate one of the results of a SPARQL query form.

SPARQL

Slide37

37

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT distinct ?name

WHERE

{ ?person rdf:type foaf:Person .

?person foaf:name ?name }LIMIT 10

This query joins together all of the triples with a matching subject, where the type predicate, “rdf:type", is a person (foaf:Person), and the person has one or more names (foaf:name).

The result of the join is a set of rows – ?person, ?name.

This query returns the ?name because ?person is often a complex URI rather than a human-friendly string.

SPARQL

Slide38

select distinct *

where { ?x rdf:type foaf:Person. ?x rdfs:label

"

Socrate

"@

fr. ?x foaf:depiction ?z}http://fr.dbpedia.org/sparql

Slide39

ISSUES

?person

is-a

Person

name

?name

I’m looking for the names of people

Which Vocabularies (Ontologies)?

properties (relations)

concepts

foaf:name

skos:prefLabel

rdf:label

rdf:type

rdfs:member

foaf:Person

dbo:Person

foaf:Agent

<

:

NaturalPerson

>

?

?

?

Use standardized vocabularies

39

Slide40

40

END