53
김동범 [email protected], eastkim@twitter 2010-12-03 Linked DataRDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 - 2010 Korean Semantic Web Conference

Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Embed Size (px)

DESCRIPTION

2010년 Korean Semantic Web Conference 발표자료.http://www.websci.or.kr/events/2010/kswc/Workshop Track 3 : Social Semantic Web Tutorial

Citation preview

Page 1: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

김동범[email protected], eastkim@twitter

2010-12-03

Linked Data의RDF 어휘 이해하고 체험하기

- FOAF, SIOC, SKOS를 중심으로 -

2010 Korean Semantic Web Conference

Page 2: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 2 -

오늘의 키워드

Linked Data

Social Semantic Web

Web of Data

FOAFSIOC

SKOS

RDF

Page 3: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 3 -

Social Semantic Web

얘기를 해볼까요?

Page 4: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 4 -

Web2.0 시대를 지나…

어느덧...

Page 5: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 5 -

지금은 Social Web 시대

Page 6: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 6 -

My Social Sites

Page 7: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 7 -

Social Network은사람들 간의 관계(Relation) 뿐만 아니라

Social Object 를 통핚연결(Link)로도 형성됩니다.

- Flickr : Photo- Delicious : Bookmark, Tag- Blog : Post

Page 8: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 8 -

But Social websites are like data silos

Source : John Breslin & Alexandre Passant’s presentation at DERI

Page 9: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 9 -

Source : John Breslin & Alexandre Passant’s presentation at DERI

Need ways to connect these islands

Page 10: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 10 -

현재의 웹 = The Web of Documents

Source : http://www.talis.com/

Page 11: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 11 -

Linked Data ?

From http://en.wikipedia.org/wiki/Linked_Data:

Linked Data is a term used to describe a method ofexposing, sharing, and connecting data on the Web

via URIs.

URIs를 사용하여 웹 상에데이터를 공개하고, 공유하고, 연결하기 위한

방법을 설명

Page 12: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 12 -

The Web of Linked Data

Source : http://www.talis.com/

Page 13: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 13 -

Social Web이 Semantic Web 을 만났을 때...

Page 14: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 14 -

소셜 웹과 시맨틱 웹은 상호 보완재

소셜 웹 사이트는 사람, 컨텐츠(리소스) 그리고 그들 간의연결을 설명하는 동의된 시맨틱 포맷을 사용함으로써 상호작용이 가능

반면, 시맨틱 어플리케이션은 소셜 웹 사이트를 통해풍부한 데이터 소스를 제공받음

Page 15: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 15 -

소셜 시맨틱 웹을 위핚표현 모델

Page 16: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 16 -

Semantic Web uses RDF Data Model

RDF stands for

Resource

Description

Framework

: URI를 갖는 모든 것 (웹 페이지, 이미지, 동영상 등)

: 자원(Resource)들의 속성, 특성, 관계 기술

: 위의 것들을 기술하기 위한 모델, 언어, 문법

Page 17: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 17 -

RDF Data Model

subject Objectpredicate

RDF는 Graph Model 을 갖고 있다.

주어

(Resource)

술어

(Property, Relation)

목적어

(Resource, Literal)

Page 18: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 18 -

Graph Model 예제

By Ian Davis ([email protected])

http://dbpedia.org/resource/Billie_Jean has a singer whose value is Michael Jackson

Subject : http://dbpedia.org/resource/Billie_Jean (URI)

Predicate: http://www.example.com/terms/singer (URI)

Object: Michael_Jackson (Literal)

Page 19: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 19 -

Basic Graph

http://dbpedia.org/resource/Billie_Jean

http://www.example.com/terms/singer

Michael_Jackson1983-01-02

http://www.example.com/terms/released

Page 20: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 20 -

Basic Graph 확장

http://dbpedia.org/resource/Billie_Jean

http://www.example.com/terms/singer

Michael_Jackson

1983-01-02

http://www.example.com/terms/released

http://dbpedia.org/resource/Michael_Jackson

http://www.example.com/terms/name

2009

http://www.example.com/terms/deathYear

Page 21: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 21 -

RDF Syntax

<RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#”

xmlns:term=“http://www.example.com/terms/”>

<Description about=“http://dbpedia.org/resource/Billie_Jean”><term:released>1983-01-02</term:author>

<term:singer rdf:resource=“http://dbpedia.org/resource/Michael_Jackson”/> </Description>

<Description about=“http://dbpedia.org/resource/Michael_Jackson”><term:name>Michael_Jackson</term:name><term:deathYear>Michael_Jackson</term:deathYear>

</Description>

</RDF>

Page 22: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 22 -

RDF is A Graph !!

The formal semantics of RDF is described using graphs.

Think in terms of graphs, not XML or documents.

By Ian Davis ([email protected])

Page 23: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 23 -

Vocabularies

- FOAF

- SIOC

- SKOS

Page 24: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 24 -

Vocabulary (RDF 어휘)

: a set of predefined classes and properties using by RDF, OWL

왜 Vocabulary를 사용하는가? 온톨로지 모델링이 어렵다.

내가 만든 온톨로지를 누가 사용하지?

합의된 표준(de facto)이므로 Meaning을 Share핛 수 있다.

누군가가 만들어 놓은걸 굳이 다시 만들어야 하나? Reuse하자!

누구라도 제안핛 수 있다.

Page 25: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 25 -

Kinds of Vocabularies

RSS 1.0 (RDF Site Summery)

DC (Dublin Core Metadata)

FOAF (Friend Of A Friend)

SIOC (Semantically Inter-linked Online Community)

SKOS (Simple Knowledge Organization System)

SCOT (Social Semantic Cloud of Tag)

XMP (Extensible Metadata Platform)

Page 26: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 26 -

FOAF

Friend of a Friend

- 사람에 대해, 그리고 사람 사이의 관계를 기술하는 온톨로지- 사람들은 자싞의 FOAF 문서를 생성하고, 홈페이지에 연결- 다른 Vocabulary와 통합되어 사용될 수 있다.

People, Groups, accounts, photos, email, IM, life on the web

De-centralized, freely extensible, Machine-readable pages

Page 27: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 27 -

FOAF Classes

Class(12)

Organization

Agent Group

Person

Project

OnlineAccount

Document

Image

PersonalProfileDocument

OnlineGamingAccount

OnlineEcommerceAccount

OnlineChatAccount

Page 28: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 28 -

Properties

Page 29: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 29 -

Personal Profile + Relation

Personal Profile 성별, 생일, 위치, 취미(관심)

이미지

이메일, 온라인 서비스 계정

직장, 학교

Relation knows : 사람과 사람 사이의 관계

Page 30: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 30 -

FOAF-a-Matic

FOAF 문서를 손쉽게 생성할 수 있는 Javascript Application

http://www.ldodds.com/foaf/foaf-a-matic.ko.html

Page 31: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 31 -<link rel="meta" type="application/rdf+xml" title="FOAF" href="foaf.rdf" />

foaf.rdf

Page 32: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 32 -

Page 33: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 33 -

Integrating social networks with FOAF

Common formats,

unique URIs

Source: Sheila Kinsella, Applications of Social Network Analysis 2007

Page 34: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 34 -

Distributed social networking with FOAF

Flickr

Blog

Twitter

Source : www.deri.ie

Page 35: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 35 -

상호 연결된 소셜 네크워크 브라우징

http://apassant.net/home/2008/01/foafgear Thanks to common semantics, only 100 lines of code

Page 36: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 36 -

SIOC

Semantically Inter-linked Online Community

From Disconnected Communities To Inter-linked Online Communities

Page 37: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 37 -

SIOC

아일랜드 DERI 연구소에서 만들어 짐

커뮤니티 사이트의 컨텐츠와 구조에 대해 기술

온라인 커뮤니티의 정보를 통합

시맨틱 웹에 Social Aspect를 추가

Social Web 사이트의 구조를 명확하게, 정보를 보다풍부하게…

약 50개 어플리케이션에서 채택

400여개 사이트에서 SIOC 모델 적용

Page 38: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 38 -

SIOC 주요 클래스와 속성

Source : www.deri.ie

Page 39: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 39 -

FOAF와 SIOC 결합하기

The sioc:User 클래스: foaf:OnlineAccount의 하위 클래스

foaf:holdsAccount 속성: foaf:Agent를 foaf:OnlineAccount 와 관계

Links a foaf:Person to various sioc:User(s)

As many sioc:User(s) as required can be linked to a single person

One people, various identities

Users create and manage content: has_creator and has_modifier properties

:blogpost123 sioc:has_creator :john

Page 40: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 40 -

foaf:Agent

foaf:OnlineAccountfoaf:holdsAccount

sioc:User

foaf:Person

rdfs:subClassOf rdfs:subClassOf

sioc:Postsioc:Item

sioc:has_creator

rdfs:subClassOf

FOAF

SIOC

foaf:holdsAccount

Page 41: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 41 -

FOAF와 SIOC 결합하기

Source : www.deri.ie

Page 42: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 42 -

SPARQL 문을 이용해서 패턴 가져오기

어떤 사람이 가입한 여러 사이트에 작성한 모든 item(post)를 가져오는 질의문

Page 43: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 43 -

SIOC Applications

Source : www.deri.ie

Page 44: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 44 -

SKOS

- 컨텐츠에 태그, 주제어 연결하기 -

Page 45: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 45 -

Various types of content we create and consume…

• Discussions

• Bookmarks

• Annotations

• Profiles

• Microblogs

• Multimedia

Page 46: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 46 -

Various types of content we create and consume…

Page 47: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 47 -

Interlinking Content with SKOS

Page 48: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 48 -

SKOS

Simple Knowledge Organization System

시소러스와 유사한 단순한 지식 체계를 표현 시소러스, 주제명 표목, 분류체계

특징 URI를 갖는 통제 어휘를 사용

서로 다른 KOS 들 사이의 상호운용성 문제를 해결

Page 49: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 49 -

주요 클래스와 속성

클래스 Concept, ConceptScheme

속성 계층관계

broader, narrower

broaderTransitive, narrowerTransitive

연관관계

related

매핑 관계 (주로 서로 다른 KOS 사이를 매핑)

broadMatch, narrowMatch

relatedMatch, closeMatch, exactMatch

Page 50: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 50 -

hasTopConcept

• semanticRelation

broader

narrower

broaderTransitive

narrowerTransitive

• note

changeNotecloseMatch

mappingRelationsym

trn definition

editorialNoteexactMatch

sym

example

topConceptOf

historyNote

• inScheme

broadMatch

narrowMatch

• notation

relatedsym

relatedMatch

scopeNote

• rdfs:label

prefLabel

hiddenLabel

altLabel

SKOS Property 정리

trn

sym

fnc

hasSubProp(Class)

inverseOf

objectProperty

functional

symmetric

transitive

trn

trn

sym

Page 51: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 51 -

A

D E

B C

F G H I

closeM exactM

DDC 학짂분류 전공과목 분류

K L

closeM closeM

M

closeM

J

closeM

g he fc da b

검색에서 SKOS의 활용- 서로 다른 KOS(Knowledge Organizatioin System) 간의 매핑관계를 추론

Page 52: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 52 -

Semantic Web 기술의 상업적 활용 사례

Page 53: Linked Data의 RDF 어휘 이해하고 체험하기 - FOAF, SIOC, SKOS를 중심으로 -

Korean Semantic Web Conference 2010 - 53 -

감사합니다.