linked open data

Post on 23-Dec-2014

1.608 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

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

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

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

Semantic Web ?

Web

The Web as Platform

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

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

Web

Web of Documents

Web of DataGlobal Data-base

Resource

Resource

Resource

Resource

Resource

Resource

Resource

링크

링크 링크

링크

링크링크

링크

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

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

SemanticWebPP

T

박진호

Senior

resear_cher

NLK

Jino.kor@gmail.c

om

dc:creatordc:publisher

p:email

o:workplace

p:title

www.nl.go.

kr

o:homepage

<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>

"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

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

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

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

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

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

structured

unstruc-tured

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

http://dbpedia.org/page/Samul_nori

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

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

Semantic W

eb layer C

ake

Elements of Linked Open Data Stack(revison 3)

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.

Metadata, XML

XML

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

• eXtensible Markup Language 의 약자

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

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

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

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

XML Vs RDF

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

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

RDF

• Resource Description Framework

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

– Resource: URI 를 갖는 모든 것

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

기술

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

문법

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

있도록 하기위한 표준 방법

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

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)

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)

RDF Graph Model

주어(Sub-ject)

목적어(Object)

술어 (Predicate)

RDF Graph Model

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

Gong Ji-young

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

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

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>

명확한가 ? 충분한가 ?

인간에 대한 예의 공지영

작가 (writtenBy)

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

Type Type

Ontology

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

– Onto(being) + logos(word)

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

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

tion.

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

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)

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

Ontology

• an ontology is an explicit formal specification of a shared

conceptualization

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

개념화

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

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

Ontology

• 개념화

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

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

– 남자 , 여자 = 사람

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

분류 !!

개념

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

나타내지 못함 ]

외연 [ 양적개념 :

합치면 개념을 나타냄 ]

토끼

내포큰 귀를 가지고

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

가진 포유류

외연 라이언헤드 ,

롭드와프 , 더치

Ontology 요소

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

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

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

적용

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

진리 ,

다른 명제 증명하는 전제

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

인간에 대한 예의 공지영

isWrittenBy

소설 소설가

type type

문학인문학

subClassOfsubClassOf

RDF

RDFS

isWrittenBy

domain

시인

subClassOf

range

RDF Schema

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

– Class, subClassOf, type

– Property, subPropertyOf

– Domain, range

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]

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]

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]

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]

RDFaMicroformatsHTML5 MicroData

RDFaMicroformatsHTML5 MicroData

WEB

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

[Daum 영화 ]

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>

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>

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>

Microdata vocabulary

Microsoft, Google,Yahoo...

RDFa

• RDF in attributes

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

메커니즘

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

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=“jino.kor@gmail.com"> jino.kor@gmail.-

com </a></p>

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

a></p>

</div>

RDFa

Microformats

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

정보를 강화함

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

것들을 표현함

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

• class , rel, rev

• Humans first, machines second

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)

Microformats

Microformats

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>

Google Recipe

hRec

ipe

spec

ifica

tion

Facebook events

hCal

enda

r, hC

ard

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

"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

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

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

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

명확한 규칙과 정의가 필요

하고 싶은 이야기는 ,

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

StandardDataOPEN

DataPlatform

개념화 MetadataVocabulary…

• 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/

[ 이미지 출처 ]

top related