linked open data

81
웹웹 웹 웹웹 웹웹 , 웹웹웹 웹웹웹웹웹웹 Linked Open Data 2012.04.07. 웹웹웹웹웹웹웹 웹웹웹

Upload: toby-yun

Post on 23-Dec-2014

1.608 views

Category:

Education


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Linked open data

웹의 또 다른 모습 , 글로벌 데이터베이스 Linked Open Data

2012.04.07. 국립중앙도서관 박진호

Page 2: Linked open data

This work is licensed under the Creative Commons 저작자표시 - 비영리 -변경금지 2.0 대한민국 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/2.0/kr/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

이 자료는 네이버에서 제공한 나눔글꼴이 적용되어 있습니다http://hangeul.naver.com/font

Page 3: Linked open data

Semantic Web ?

Page 4: Linked open data

Web

Page 5: Linked open data

The Web as Platform

웹을 플랫폼으로 거의 모든 정보활동이 일어나고 ,정보들은 웹에서 탄생하고 풍부해지고 재창조되고 ,

공유되고 , 확산되고 , 소멸된다 .

Page 6: Linked open data

Web

Web of Documents

Web of DataGlobal Data-base

Page 7: Linked open data

Resource

Resource

Resource

Resource

Resource

Resource

Resource

링크

링크 링크

링크

링크링크

링크

오늘날의 웹문서 중심의 Web(Web of Documents) - HTML

Page 8: Linked open data
Page 9: Linked open data

우리가 지향하는 바는Data(Things) 중심의 Web(Web of data)

SemanticWebPP

T

박진호

Senior

resear_cher

NLK

[email protected]

om

dc:creatordc:publisher

p:email

o:workplace

p:title

www.nl.go.

kr

o:homepage

Page 10: Linked open data

<div class="vevent"><h3 class="summary"> 웹데브모바일 4 월 세미나 " 마크업 개발 upgrade!"</h3><p> 일시 : <span class="dtstart"> <abbr class="value" title="2012-04-7>2012 년 4 월 7 일 </abbr> 토요일 <span class="value"> 오후 1:00</span> <span class="dtend"> <span class="value">6:00am</span> </span></p><p> 장소 : <span class="location"> 성공을 도와주는 가게 (1644-3025) 본점 2 층 </span></p></div>

Page 11: Linked open data

"The Semantic Web is an extension of the current web in which infor-

mation is given well-defined meaning, better enabling computers and people to work in cooperation."

Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001

Page 12: Linked open data

아직까지 웹의 문서들은 HTML 로 작성 ,HTML 은 문법으로 숨겨진 의미 (Meaning, Semantics) 를 표현하지는 못함

만약 컴퓨터가 , 우리처럼 Meaning 을 이해할 수 있다면 , 우리 ( 사람 ) 의 정보검색 ( 탐색 ) 은 더 풍요로워질 것임

Page 13: Linked open data

물론 HTML5 이야기는 아닙니다 .

Page 14: Linked open data

Mr. Hatem Mahmoud

Syntax is the study of grammar

Semantics is the study of meaning

Syntax is how to say something

Semantic is the meaning behind what you say

Different syntaxes may have the same semantic:

x += y

x = x + y

Page 15: Linked open data

[ 출처 : http://www.slideshare.net/sandhaus/all-about-rnews-evan-sandhaus]

structured

unstruc-tured

Page 16: Linked open data

Wikipedia Vs Dbpediahttp://en.wikipedia.org/wiki/Samul_nori

http://dbpedia.org/page/Samul_nori

Page 17: Linked open data
Page 18: Linked open data
Page 19: Linked open data
Page 20: Linked open data

어떻게 Web 을 Global Database 로 활용할 것인가 ?

Page 21: Linked open data

원칙과 표준이 필요합니다 .

Page 22: Linked open data

Semantic W

eb layer C

ake

Page 23: Linked open data

Elements of Linked Open Data Stack(revison 3)

Page 24: Linked open data

Linked Data 기본 원칙

• Use URIs as names for things.

• Use HTTP URIs so that people can look up those

names.

• When someone looks up a URI, provide useful infor-

mation, using the standards (RDF, SPARQL)

• Include links to other URIs. so that they can

discover more things.

Page 25: Linked open data

Metadata, XML

Page 26: Linked open data

XML

• XML 은 메타 언어 (meta-language)

• eXtensible Markup Language 의 약자

• 데이터를 서술하기 위해 개발

• XML 태그는 정의된 것이 없음 , 스스로 자신의 태그를 정의할 수 있음

• XML 은 DTD, XML Schema 로 자기기술이 가능함 (Self-descriptive)

Page 27: Linked open data

HTML Vs XML

<H1> 웹의 또 다른 모습 , 글로벌 데이터베이스 Linked Open Data</H1> <UL> <LI> 강사 : 박진호

<LI> 일시 : 2012.04.07<LI> 장소 : 성공을 도와주는 가게

</UL>

<nameOfLecture> <title> 웹의 또 다른 모습 , 글로벌 데이터베이스 Linked Open Data</title> <lecturer> 박진호 </lecturer > <date>2012.04.07</date> <place> 성공을 도와주는 가게 </place></nameOfLecture >

HTML

XML

Page 28: Linked open data

XML Vs RDF

[ 출처 : http://www.oreillynet.com/xml/blog/2005/09/the_difference_between_xml_and.html]

XML 은 데이터 ( 문서 ) 의 구조 정의RDF 는 데이터 ( 문서 ) 의 구문의 의미 정의 ( 기계가 이해 )

Page 29: Linked open data

RDF

• Resource Description Framework

• 웹 상의 자원을 기술하기 위한 W3C 표준

– Resource: URI 를 갖는 모든 것

– Description: 자원 (resource) 들의 속성 , 특성 , 관계

기술

– Framework: 위의 것들을 기술하기 위한 모델 , 언어 ,

문법

• RDF 는 컴퓨터 애플리케이션이 정보를 읽고 이해할 수

있도록 하기위한 표준 방법

• RDF 로 기술된 것은 웹에서 보여주기 위함은 아님[ 김동범 , 2010.12.03 Linked Data 의 RDF 어휘 이해하고 체험하기 , 2010 Korea Semantic Web Conference]

Page 30: Linked open data

RDF 모델

• RDF 는 SPO, 주어 (Subject)/ 술어 (Predicate)/ 목적어

(Object) 로 구성됨

• “ 인간에 대한 예의” 의 “작가”는 “공지영”이다 .

• “http://www.amazon.com/Human-Decency-Jiyoung-

Gong/dp/8988095928” has a creator whose value is

“http://en.wikipedia.org/wiki/Gong_Ji-young”.

주어 (Subject) 술어 (Predicate) 목적어 (Object)

Page 31: Linked open data

RDF 모델

“http://www.amazon.com/Human-Decency-Jiyoung-

Gong/dp/8988095928”

has a creator

whose value is “http://en.wikipedia.org/wiki/Gong_Ji-young”.

주어 (Subject)

술어 (Predicate)

목적어 (Object)

Page 32: Linked open data

RDF Graph Model

주어(Sub-ject)

목적어(Object)

술어 (Predicate)

Page 33: Linked open data

RDF Graph Model

http://www.amazon.com/Human-De-cency-Jiyoung-Gong/dp/8988095928

Gong Ji-young

http://purl.org/dc/terms/creator

Page 34: Linked open data

RDF Graph Model

http://www.amazon.com/Human-Decency-Jiyoung-Gong/dp/

8988095928

http://purl.org/dc/terms/creator

http://en.wikipedia.org/wiki/Gong_Ji-young

1963-present

http://dbpedia.org/property/period

Jimoondang

http://purl.org/dc/terms/publisher

Gong Ji-young

http://dbpedia.org/property/name

Page 35: Linked open data

RDF/XML 로 표현

<RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#” xmlns:dc=http://purl.org/dc/terms/ xmlns:dbpprop="http://dbpedia.org/property/" >

<Description about=“http://www.amazon.com/Human-Decency-Jiyoung- Gong/dp/8988095928”> <dc:publisher>Jimoondang</dc:publisher> <dc:creator rdf:resource=“http://en.wikipedia.org/wiki/Gong_Ji-young”/> </Description>

<Description about=“http://en.wikipedia.org/wiki/Gong_Ji-young”> <dbpprop:name>Gong Ji-young</dbpprop:name> <dbpprop:period>1963-present</dbpprop:period > </Description></RDF>

Page 36: Linked open data

명확한가 ? 충분한가 ?

Page 37: Linked open data

인간에 대한 예의 공지영

작가 (writtenBy)

소설 (Class), 책 작가 (Class), 사람

Type Type

Page 38: Linked open data
Page 39: Linked open data

Ontology

• 철학 : 존재론 ( 存在論 ), 존재학 ( 存在學 )

– Onto(being) + logos(word)

– 세상의 구성요소에 대한 명확한 이해를 연구

• 언어학 : An ontology is a specification of a conceptualiza-

tion.

– 개념 ( 화 ) 의 명시적 명세 , 시소러스의 확장 개념

Page 40: Linked open data

Ontology

• 컴퓨터 , 웹 분야

– an ontology is an explicit formal specification of a shared

conceptualization(Gruber, 1993)

– An ontology provides a shared vocabulary, which can be used

to model a domain — that is, the type of objects and/or con-

cepts that exist, and their properties and relations.(Arvidsson,

2008)

– 공유된 개념의 명시적 형식 (?)

Page 41: Linked open data

Ontology

• an ontology is an explicit formal specification of a shared

conceptualization

– shared conceptualization: 인간과 컴퓨터가 공유하는

개념화

– Explicit Formal: 기계가 읽을 수 있는 형식으로 상세하게 개

념 , 개념간의 관계 등을 표현

Page 42: Linked open data

Ontology

• 개념화

– 우리 눈에 보이는 사물 혹은 추상적인 것들을 구체적인 집합으로 만듦

– SUV, 덤프트럭 , 세단 = 탈것 (Vehicle)

– 남자 , 여자 = 사람

– 라이언헤드 , 롭드와프 , 더치 = 토끼

분류 !!

Page 43: Linked open data

개념

내포[ 질적개념 : 합쳐도 개념을

나타내지 못함 ]

외연 [ 양적개념 :

합치면 개념을 나타냄 ]

Page 44: Linked open data

토끼

내포큰 귀를 가지고

앞발보다 뒷발이 길고 시뻘건 눈을

가진 포유류

외연 라이언헤드 ,

롭드와프 , 더치

Page 45: Linked open data

Ontology 요소

• 클래스 (Class) : 개념 , 조직화된 언어

• 관계 (Relation) : 개념간의 관계

• 함수 (Function) : 개념 간의 관계가 갖는 값 , 속성이 계속해서

적용

• 공리 (Axiom) : 추론의 기반 . 유효한 규칙 . 증명 없이 자명한

진리 ,

다른 명제 증명하는 전제

• 인스턴스 (Instance) : 개념을 표현하는 대상 객체

Page 46: Linked open data

인간에 대한 예의 공지영

isWrittenBy

소설 소설가

type type

문학인문학

subClassOfsubClassOf

RDF

RDFS

isWrittenBy

domain

시인

subClassOf

range

Page 47: Linked open data

RDF Schema

• RDF 를 확장하기 위한 소규모의 Vocabulary 를 정의

– Class, subClassOf, type

– Property, subPropertyOf

– Domain, range

Page 48: Linked open data

RDF Schema Example(RDF Description)

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xml:base="http://www.animals.fake/animals#">

<rdf:Description rdf:ID="animal">  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/></rdf:Description>

<rdf:Description rdf:ID="horse">  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>  <rdfs:subClassOf rdf:resource="#animal"/></rdf:Description>

</rdf:RDF>

[ 출처 : http://www.w3schools.com/rdf/rdf_schema.asp]

Page 49: Linked open data

RDFS / RDF Classes

Element Class of Subclass of

rdfs:Class All classes  

rdfs:Datatype Data types Class

rdfs:Resource All resources Class

rdfs:Container Containers Resource

rdfs:Literal Literal values (text and numbers) Resource

rdf:List Lists Resource

rdf:Property Properties Resource

rdf:Statement Statements Resource

rdf:Alt Containers of alternatives Container

rdf:Bag Unordered containers Container

rdf:Seq Ordered containers Container

rdfs:ContainerMembershipProperty

Container membership properties Property

rdf:XMLLiteral XML literal values Literal

[ 출처 : http://www.w3schools.com/rdf/rdf_reference.asp]

Page 50: Linked open data

RDFS / RDF Properties

Element Domain Range Description

rdfs:domain Property Class The domain of the resource

rdfs:range Property Class The range of the resource

rdfs:subPropertyOf Property Property The property is a sub property of a property

rdfs:subClassOf Class Class The resource is a subclass of a class

rdfs:comment Resource Literal The human readable description of the resource

rdfs:label Resource Literal The human readable label (name)  of the resource

rdfs:isDefinedBy Resource Resource The definition of the resource

rdfs:seeAlso Resource Resource The additional information about the resource

rdfs:member Resource Resource The member of the resource

[ 출처 : http://www.w3schools.com/rdf/rdf_reference.asp]

Page 51: Linked open data

RDF Attributes

Element Domain Range Description

rdf:about     Defines the resource being described

rdf:Description     Container for the description of a resource

rdf:resource     Defines a resource to identify a property

rdf:datatype     Defines the data type of an element

rdf:ID     Defines the ID of an element

rdf:li     Defines a list

rdf:_n     Defines a node

rdf:nodeID     Defines the ID of an element node

rdf:parseType     Defines how an element should be parsed

rdf:RDF     The root of an RDF document

xml:base     Defines the XML base

xml:lang     Defines the language of the element content

rdf:aboutEach     (removed)

rdf:aboutEachPrefix     (removed)

rdf:bagID     (removed)

[ 출처 : http://www.w3schools.com/rdf/rdf_reference.asp]

Page 52: Linked open data
Page 53: Linked open data

RDFaMicroformatsHTML5 MicroData

Page 54: Linked open data

RDFaMicroformatsHTML5 MicroData

WEB

Page 55: Linked open data

Your web pages have an underlying meaning that people un-derstand when they read the web pages. But search engines have a limited understanding of what is being discussed on those pages. By adding additional tags to the HTML of your web

pages—tags that say, "Hey search engine, this information describes this specific movie, or place, or person, or video"—you can help search engines and other applications better understand your content and display it in a useful, relevant way. Microdata is a set of tags, introduced with HTML5, that allows you to do this.

HTML5 MicroData

Page 56: Linked open data

[Daum 영화 ]

Page 57: Linked open data

itemscope and itemtype

<div> <h1> 화차 </h1> <span> 감독 : 변영주 (1966 년 12 월 20 일 출생 )</span> <span> 미스터리 </span> <a href="../movies/hwacha2012_trailer.html"> 예고편 </a> </div>

<div itemscope itemtype="http://schema.org/Movie"> <h1> 화차 </h1> <span> 감독 : 변영주 (1966 년 12 월 20 일 출생 )</span> <span> 미스터리 </span> <a href="../movies/hwacha2012_trailer.html"> 예고편 </a> </div>

Page 58: Linked open data

itemprop

<div itemscope itemtype="http://schema.org/Movie"> <h1> 화차 </h1> <span> 감독 : 변영주 (1966 년 12 월 20 일 출생 )</span> <span> 미스터리 </span> <a href="../movies/hwacha2012_trailer.html"> 예고편 </a> </div>

<div itemscope itemtype="http://schema.org/Movie"> <h1 itemprop="name"> 화차 </h1> <span> 감독 : <span itemprop="director"> 변영주 (1966 년 12 월 20 일 출생 )</span> <span itemprop="genre"> 미스터리 </span> <a href=“../movies/hwacha2012_trailer.html” itemprop="trailer"> 예고편 </a> </div>

Page 59: Linked open data

Embedded items

<div itemscope itemtype="http://schema.org/Movie"> <h1 itemprop="name"> 화차 </h1> <span> 감독 : <span itemprop="director"> 변영주 (1966 년 12 월 20 일 출생 )</span> <span itemprop="genre"> 미스터리 </span> <a href=“../movies/hwacha2012_trailer.html” itemprop="trailer"> 예고편 </a> </div>

<div itemscope itemtype="http://schema.org/Movie"> <h1 itemprop="name"> 화차 </h1> <span> 감독 : <span itemprop="director“ itemscope itemtype="http://schema.org/Person"> 변영주 (1966 년 12 월 20 일 출생 )</span> <span itemprop="genre"> 미스터리 </span> <a href=“../movies/hwacha2012_trailer.html” itemprop="trailer"> 예고편 </a> </div>

Page 60: Linked open data

Microdata vocabulary

Microsoft, Google,Yahoo...

Page 61: Linked open data

RDFa

• RDF in attributes

• XHTML 웹 문서 안에 RDF 메타데이터를 포함시킬 수 있는

메커니즘

Page 62: Linked open data

RDFa

<div> <h2> 웹의 또 다른 모습 , 글로벌 데이터베이스 Linked Open Data</h2> <h3> 박진호 </h3></div>

XHTML

<div xmlns:dc="http://purl.org/dc/elements/1.1/"> <h2 property="dc:title“> 웹의 또 다른 모습 , 글로벌 데이터베이스 Linked Open

Data</h2> <h3 property="dc:creator"> 박진호 </h3> </div>

RDFa

Page 63: Linked open data

RDFa

<div typeof="foaf:Person" xmlns:foaf="http://xmlns.com/foaf/0.1/">

<p property="foaf:name"> 박진호 </p>

<p> Email: <a rel="foaf:mbox" href=“[email protected]"> [email protected]

com </a></p>

<p> Phone: <a rel="foaf:phone" href="tel:+82-590-0792">+82 590 0792 </

a></p>

</div>

RDFa

Page 64: Linked open data

Microformats

• Microformat 은 기존 HTML 태그의 확장으로 의미적인

정보를 강화함

– 웹 페이지에 있는 사람 , 이벤트 , 블로그 포스트 , 리뷰와 같은

것들을 표현함

– 다음의 (X)HTML 의 속성을 사용해서 표현가능함

• class , rel, rev

• Humans first, machines second

Page 65: Linked open data

Microformats

<head profile=“http://www.w3.org/2006/03/hcard”><div class=“vcard”> <div class=“fn”> 박진호 </div> <div class=“org”> 국립중앙도서관 </div> <div class=“tel”>02-590-0792</div> <a class=“url” href=“jinokor.tumblr.com”>jinokor.tumblr.com</a></div>

<div> <div> 박진호 </div> <div> 국립중앙도서관 </div> <div>02-590-0792</div> <a href=“jinokor.tumblr.com”> jinokor.tumblr.com</a></div>

HTML

Microformats(XHTML)

Page 66: Linked open data

Microformats

Page 67: Linked open data

Microformats

Page 68: Linked open data

hCalendar<div class="vevent" id="hcalendar- 웹데브모바일 -4 월 - 세미나 &quot; 마크업 - 개발 -upgrade!&quot;"><a class="url" href="http://www.webdevmobile.-com/xe/58840"><abbr class="dtstart" title="2012-04-07">April 7th</abbr>, <abbr class="dtend" title="2012-04-08"> 2012</abbr> <span class="summary">웹데브모바일 4 월 세미나 " 마크업 개발 upgrade!"</span> at <span class="location"> 성공을 도와주는 가게 (1644-3025) 본점 2 층 </span></a><div class="tags">Tags: <a rel="tag" href="http://eventful.com/events/tags/%EC%9B%B9%EB%8D%B0%EB%B8%8C%EB%AA%A8%EB%B0%94%EC%9D%BC"> 웹데브모바일 </a><a rel="tag" href="http://eventful.com/events/tags/%EC%84%B8%EB%AF%B8%EB%82%98"> 세미나 </a><a rel="tag" href="http://eventful.com/events/tags/%EB%A7%88%ED%81%AC%EC%97%85%20%EA%B0%9C%EB%B0%9C"> 마크업 개발 </a></div>

<p style="font-size: smaller; ">This <a href="http://microformats.org/wiki/hcalendar">hCalendar event</a> brought to you by the <a href="http://microformats.org/code/hcalendar/creator">hCalendar Creator</a>.</p></div>

Page 69: Linked open data

Google Recipe

hRec

ipe

spec

ifica

tion

Page 70: Linked open data

Facebook events

hCal

enda

r, hC

ard

Page 71: Linked open data
Page 72: Linked open data

Netflix OData Catalog API Example

http://odata.netflix.com/Catalog/ Collections: Titles, TitleAwards, People, Genres, Languages, …

The Metadata…/$metadataGenres…/GenresCount of horror movies…/Genres('Horror Movies')/Titles/$countKorean movies…/Languages('Korean')/Titles?$filter=Type eq 'Movie'Horror movies from the '70s …/Genres('Horror Movies')/Titles?$filter=ReleaseYear le 1979 and ReleaseYear ge 1970 In JSON format: …&$format=json

Page 73: Linked open data

"The Semantic Web is an extension of the current web in which infor-

mation is given well-defined meaning, better enabling computers and people to work in cooperation."

Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001

Page 74: Linked open data

복잡한 게 아닙니다 . 기계가 이해할 수 있다 (No)사람과 기계가 같이 이해할 수 있는 공유의 장 !

기계가 이해할 수 있다는 것은 사실

좀 더 엄격하고 , 정확하고 ,

명확한 규칙과 정의가 필요

Page 75: Linked open data

하고 싶은 이야기는 ,

RDF, RDFa, Microformat, Microdata,Odata 를 공부해라 ? 배워라 ? 써라 ?

Page 76: Linked open data

StandardDataOPEN

Page 77: Linked open data

DataPlatform

Page 78: Linked open data
Page 79: Linked open data
Page 80: Linked open data

개념화 MetadataVocabulary…

Page 81: Linked open data

• http://www.flickr.com/photos/6x7/67066884/• http://www.flickr.com/photos/gipukan/6136322832/• http://www.flickr.com/photos/amattox/3236510649/• http://www.flickr.com/photos/f-l-e-x/3096005116/• http://www.flickr.com/photos/sterlic/4299633060/• http://www.flickr.com/photos/dullhunk/3448804778/• http://www.flickr.com/photos/angeldye/4107785451/• http://www.flickr.com/photos/29071316@N06/4176526126/• http://www.flickr.com/photos/lintmachine/2920423031/

[ 이미지 출처 ]