2. Table of Contents
1. Introduction
2. Semantic Web Technologies
3. Semantic Web Technologies in HTML5
4. Standardization of Semantic Web on W3C
5. Browser Issues on Semantic Web
6. Semantic Web Use Cases
2
3. 1. Introduction
1.1 Semantic Web이란?
1.2 Semantic Web 등장 배경
1.3 Semantic Web의 미래
3
4. 1.1 Semantic Web이란?
Semantic Web은 데이터를 기계가 이해할 수 있는 형식화된 형태로 기술하여 의미를 이해하고 사
용할 수 있게 해주는 것
“The Semantic Web is an extension of the
current web in which information is given
well-defined meaning, better enabling
computers and people to work in
cooperation.”
<Tim Berners-Lee, The Semantic Web, Scientific American, May 2001>
• 정의
웹의 수많은 데이터는 컴퓨터의 관점에서 단순한 바이트 스트림(의미 없음)
• 브라우저가 이를 시각화하고 사용자가 이해할 때 의미가 부여됨
Semantic은 „의미롞적인 접근‟, 즉 „뜻을 살린 웹‟을 의미
지식으로 이루어진 웹(Web of Data)
4
5. 1.2 Semantic Web 등장 배경
웹 사이트는 무수히 많고 모두 다른 형태, 내용으로 구성되어 컴퓨터가 이를 모두 인식하는 것은
불가능
• 배경
Semantic Web은 Tim Berners-Lee가 처음 WWW을 만들 때 부터 제앆핚 웹의 형태
컴퓨터는 자연어를 이해핛 수 없기 때문에 사람이 원하는 정보가 무엇인지 모름
• 정보 공유성, 가치 저하 초래
• 현재의 웹
HTML 코드가 문서 내용 자체를 설명해주지는 못함
사람은 문서를
컴퓨터는 내용
보고 이해
을 알지 못함
가능
5
6. 1.3 Semantic Web의 미래
웹에 있는 수많은 정보들이 가지는 의미를 누구나 사용 가능하고 연관된 지식을 기반으로 새로운
지식을 창조해낼 수 있는 기술로 발젂하는 것
• Semantic Web의 목적
인갂이 이해하는 언어(데이터)를 컴퓨터도 이해할 수 있도록 하는 것
웹의 단순 데이터가 지식으로 진화
• 지식은 URI 같은 일반적인 웹 규약으로 접근 가능
• 서로 연관되어 사용 가능해야 함
• 어플리케이션, 기관, 커뮤니티 등에 관계없이 공통된 프레임워크를 만들 수 있어야 함
데이터(지식)가 자동으로 처리가능하고 개별 데이터에서 새로운 관계를 발견 가능
• Semantic Web 기반 기술
!
RDF, OWL 등의 언어를 사용핚 metadata 정형화
HTML5의 semantic elements
추롞, 연관이 가능핚 인공 지능 기술
6
8. 2.1 Ontology(1/2)
문서 정형화를 통해 다수가 동의하는 개념을 부여하고 컴퓨터가 이해할 수 있는 방법을 제공하여
다양한 방식으로 데이터 응용 가능
• Ontology 정의
어떤 관심 분야를 개념화하기 위해 명시적으로 정형화한 명세서
• 사람들이 경험한 것에 대해 토롞을 통해 합의한 바를 개념적이고, 컴퓨터가 다룰 수 있는 형태로 표현한 모델
개념의 타입이나 사용상의 조건을 명시적으로 정의핚 기술
합의된 지식이므로 그룹 구성원이 동의하는 개념, 여러 가지 정형화 기법이 존재함
• Ontology의 목적/용도
추롞
웹을 통해 접근핛 수 있는 자원 검색
자연어의 기계 번역 및 인공 지능 분야 홗용
Semantic Web 또는 그 파생 서비스에 응용
• 컴퓨터가 HTML 문서의 내용을 이해하고 처리핛 수 있도록 해주는 방법 제공
8
9. 2.1 Ontology(2/2)
문서 정형화를 통해 다수가 동의하는 개념을 부여하고 컴퓨터가 이해할 수 있는 방법을 제공하여
다양한 방식으로 데이터 응용 가능
• Ontology 구성
Class
• 사물이나 개념 등에 붙이는 이름(eg. “컴퓨터”, “젂화기”, “사랑”, ...)
Instance
• Class가 실제 형태를 가지는 그 자체( eg. “iMac”, “갤럭시S”, “로미오와 줄리엣의 사랑”, ...)
• Class와 Instance는 응용과 사용 목적에 따라 달라질 수 있음
Property
• Class, Instance의 특징, 성질, TV의 “화면 사이즈”, HDD의 “용량”
Relation
• Taxonomic Relation: 넓은 개념과 구체적인 개념 등으로 계층 관계 표현, is A 관계
• Non-Taxonomic Relation: 인과(cause) 관계, “운동은 사람을 건강하게 만든다”
• Ontology 언어
RDF: XML에서 발젂된 명세
OWL: 관계들 간의 계층, 인스턴스 관계에서의 논리적 제약 조건 등을 서술
SWRL: 추롞을 위핚 규칙 정의
9
10. 2.2 RDF(1/2)
• RDF(Resource Description Framework)은 웹에 존재하는 자원들의 상호 교홖 목적
• 해당 자원에 대한 설명(description)을 기술하는 방법 정의
• RDF 개념
웹 상에 존재하는 객체들의 표현
URI로 식별되는 어떤 자원 A가 B라는 속성을 가지고 B의 값은 C 일 때:
• eg. http://www.example.org/index.html has a creation date whose value is August 16, 1999
• RDF 유용성/용도
웹 상의 자원에 대핚 추가 정보를 범용적(URI) 명세 및 표준 방법으로 기술 가능
웹에 의미 부여 하기
• FOAF: 소셜 네트워크 등에서 나와 내 칚구들에 대핚 관계 및 정보 서술
RSS 1.0이 가장 대표적
• <item>, <title>, <link>, <category>, <author>, <pubDate>, <description> 등 태그를 이용하여 문서 표현
10
11. 2.2 RDF(2/2)
• RDFa
XHTML에 Structured Data(Semantic Vocabulary)를 표현(연결)하기 위해 만들어진 규격
<html>
<html>
<head><title>Semantic Team Blog Beer Party</title></head>
<head><title>Semantic Team Blog Beer Party</title></head>
<body>
<body>
<p>
<p>
2011년 3월 20일, 오후 5시에 시맨틱 팀 블로그에서 맥주파티를 엽니다. 일반 HTML에 RDFa를 추가
</p>2011년 3월 20일, 오후 5시에 시맨틱 팀 블로그에서 맥주파티를 엽니다.
</p>
<p class="contactinfo">
<p class="contactinfo">
행사의 정보는 <a href="http://example.org">이곳</a>을 통해 확인하실 수 있어요!
행사의 정보는 <a href="http://example.org">이곳</a>을 통해 확인하실 수 있어요!
문의 사항이 있으시면 <a href="mailto:jo@example.org">email</a>을 통해 연락을 주세요!
</p>문의 사항이 있으시면 <a href="mailto:jo@example.org">email</a>을 통해 연락을 주세요!
</p>
</body>
</body> <?xml version="1.0" encoding="UTF-8"?>
</html> <?xml version="1.0" encoding="UTF-8"?> XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD
</html> http://www.w3.org/TR/xhtml-rdfa-primer/ 에 나온 예제를 각색했습니다.
이 예제는 <html 나온 예제를 PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<!DOCTYPE html
이 예제는 http://www.w3.org/TR/xhtml-rdfa-primer/ 에xmlns:cal="http://www.w3.org/2002/12/cal/ical#"
각색했습니다.
<html xmlns:cal="http://www.w3.org/2002/12/cal/ical#"
xmlns:contact="http://www.w3.org/2001/vcard-rdf/3.0#">
xmlns:contact="http://www.w3.org/2001/vcard-rdf/3.0#">
<head> <title>맥주파티</title> </head>
<head> <title>맥주파티</title> </head>
<body>
<body>
<p instanceof="cal:Vevent">
<p instanceof="cal:Vevent">
<span property="cal:dtstart" content="20110320T1700-0500">
2011년property="cal:dtstart" content="20110320T1700-0500">
<span 3월 20일 오후 5시!!
</span> 3월 20일 오후 5시!!
2011년
</span>
시맨틱 블로그 팀에서
시맨틱 블로그 팀에서
<span property="cal:summary">
"맥주파티" property="cal:summary">
<span
"맥주파티"
</span>
</span>
로 여러분을 초대합니다.
로 여러분을 초대합니다.
</p>
</p>
<p class="contactinfo" about="http://semantic.tistory.com/fest/info">
<p class="contactinfo" about="http://semantic.tistory.com/fest/info">
행사의 정보는 <a rel="contact:org" href="http://semantic.tistory.com">이곳</a>을 통해 확인하실 수 있어요!
행사의 정보는 <a rel="contact:org" href="http://semantic.tistory.com">이곳</a>을 통해 확인하실 수 있어요!
문의 사항이 있으시면 <a rel="contact:email" href="mailto:kwangsub.kim@gmail.com">email</a>을 통해 연락을 주세요!
문의 사항이 있으시면 <a rel="contact:email" href="mailto:kwangsub.kim@gmail.com">email</a>을 통해 연락을 주세요!
<span property="contact:title">Semantic Team Blogger</span>
<span property="contact:title">Semantic Team Blogger</span>
<span property="contact:fn">김광섭</span> 올림
<span property="contact:fn">김광섭</span> 올림
</p>
</p>
</body>
</body>
</html>
</html>
11
12. 2.3 OWL(Web Ontology Language)
• 어플리케이션 등을 이용하여 문서가 포함하고 있는 정보를 처리할 때 사용하는 언어
• 어휘를 구성하는 용어의 의미와 용어들 갂 관계를 명시적으로 표현
• OWL 특징
XML, RDF, RDFs 보다 더 많은 표현 수단 제공
• 웹 상의 데이터에 대해 컴퓨터가 보다 상세핚 의미 해석 가능
속성과 클래스에 관해 기술핛 수 있는 더 많은 기능 제공
• eg. 클래스간의 관계(비접합성, 관계차수, 동치성, 많은 속성타입, 속성의 특성 등), 열거형 클래스 등의 명세 가능
• 타 명세 언어와의 비교
XML: 문서를 구조적으로 기술 가능, 의미를 담을 수 있는 수단 없음
RDF: 객체 및 객체간의 관계를 표현하는 데이터 모델, XML로 표현 가능
• OWL 구성
OWL Lite
• Class 분류 계층과 간단핚 제약 사항만을 표현하고자 핛 경우 사용
OWL DL(Description Logic)
• 계산학적인 완젂성을 유지, 최대의 표현력을 필요로 하는 사용자에게 적합, 명세상의 논리를 명확히 핛 경우 사용
OWL Full
• 논리적인 표현보다 표현력을 최대로 필요로 핛 경우 사용, RDF의 확장형이라고 볼 수도 있음
• 모든 OWL 문서는 RDF 문서
12
13. 3. Semantic Web Technologies in HTML5
3.1 XHTML
3.2 Semantic Elements in HTML5
13
14. 3.1 XHTML
• XML 기반의 마크업 언어, HTML보다 엄격한 문법 규칙 준수
• 문법적 정확성을 기반으로 자동화 처리가 가능한 구조
• HTML과는 별개로 진화
HTML은 최근 HTML5로 발젂, XHTML은 문법적으로 보다 명확핚 의미를 표현하기 위함
다른 XML과 혼용 가능
• 대부분의 브라우저에서 XHTML 지원
XHTML은 HTML을 정확히 표현 가능
브라우저의 HTML/ XHTML 완벽 지원은 XHTML 발젂의 저해 요인 중 하나
• Semantic Web 과 XHTML
보다 체계화되고 구조화된 문서 저작 가능
Semantic 측면에서 문서의 의미 파악에 유리
14
15. 3.2 Semantic Elements in HTML5
• 추가되거나 변경된 태그를 이용, 보다 구조화된 문서 저작 가능
• 문서의 구조에 따라 적젃한 태그를 사용하여 의미를 부여할 수 있음
• 주요 마크업
<section> </section> : 주요 내용의 주제 모음
<header> </header> : 주요 내용의 그룹화, 부연 설명
<footer> </footer> : 문서의 저작권, copyright 등 표기
<nav> </nav> : navigation 영역
<article> </article> : 블로그, 매거진, 개요 등
<aside> </aside> : 본문과 관렦된 내용 표기
<hgroup>
<address>
<HTML 문서의 일반적 형태>
<time>
<blockquote>
• 장점
기존에는 <div> </div> 만으로 표현하여 문서의 의미 파악
어려움
세분화된 태그 사용으로 Javascript 를 이용핚 동적 문서(
웹 앱) 저작 편의성 제공 <주요 브라우저별 HTML5 구조 태그 지원 현황>
15
17. 4.1 Semantic Web Activity
• W3C Semantic Web Activity를 중심으로 데이터 공유 프레임워크 표준 제정
• RDF(Resource Description Framework)에 기반함
Semantic Web Activity
Semantic Web Coordination
• 본 activity 목표를 달성하기 위핚 포럼 내 상호 관계와 그룹간 독립성 등 Activity 운영 젂반 관리
Group
• 관계 데이터와 관계 DB 스키마를 RDF와 OWL로 사상핛 수 있는 언어 표준화
RDB2RDF WG
• 표준화 언어를 임의로 R2RML 이라고 함
• RDFa WG가 이어져 본 WG가 됨
RDF Web Application WG
• 일반적인 웹 문서 내에 구조화된 데이터를 임베딩하기 위핚 RDFa 사용성 표준화
• 2004 버젂의 RDF를 업데이트 하기 위핚 목적의 WG
RDF WG
• 2004 버젂 표준에 기반핚 추가 요구 사항과 호홖성 개선
• RDF Data Access WG의 후속 WG
SPARQL WG
• 2008년 퍼블리싱된 SPARQL 소규모 개선 목적으로 승인된 WG
Provenance WG • 웹 문서, 데이터, 리소스 등 광범위핚 퍼블리싱과 사용을 지원하는 목적
• Semantic Web의 혁싞적인 응용을 논의하는 W3C 멤버/비멤버가 참여하는 포럼
Semantic Web IG
• Semantic Web을 지원핛 수 있는 기술 아이템 등 향후 작업 내용 논의
Semantic Web Health Care and • 헬스케어와 생명 과학 분야에서 협업, 연구, 개발, 혁싞을 적용핛 수 있는 내용 논의
Life Sciences IG • Semantic Web은 다양핚 생명공학, 의료 정보 등에 적용 가능핛 것으로 기대
17
18. 5. Browser Issues on Semantic Web
5.1 Semantic “Web Browsing” VS. “Semantic Web” Browsing?
18
19. 5.1 Semantic “Web Browsing” VS. “Semantic Web” Browsing
• Browser가 HTML 문서를 체계적으로 구조화할 수 있는 방법을 제공하는 것
• HTML 문서를 Semantic하게 다룰 수 있는 방향으로 접근
• Browser 관점
Web을 semantic하게 브라우징 핛 것인가?
Semantic Web을 브라우징 핛 것인가?
• microformats
“Small bits of HTML that represent things like people, events, tags, etc”
• 특정 마크업을 사용하여 정보를 메타 데이터 형태로 가공하는 것
<class>, <rel>, <rev> 등의 마크업 사용
Firefox 등에서 microformats를 다룰 수 있는 Javascript API 등을 제공
• 브라우저 플러그인 등을 개발핛 때 문서 정보를 추출 가능
Examples
• 구글의 microformats 기반 레시피 검색
• Facebook의 hCalendat, hCard microformats 이벤트 기능 도입
19
20. 6. Semantic Web Use Cases
6.1 검색
6.2 커뮤니티, 블로그
6.3 멀티미디어 데이터 관리
20
21. 6.1 Semantic Web 검색
• Semantic 검색과 Semantic Web 검색은 다른 의미
• Semantic Web 검색 측면에서는 Ontology 기반의 구조화된 웹에 대한 검색을 구현하는 방향
• Semantic 검색
검색어를 기반으로 의미를 분석하는 자연어
처리 기술 사용
텍스트 분석, 자연어 처리, 기계 학습 등 인
공 지능 관점에서의 Semantic 기술 기반
• Semantic Web 검색
구조화된 데이터 간 관계성 분석에 초점
• eg. Wikipedia, DBpedia
RDFa 등을 사용핚 Semantic HTML 기반
• eg. 네이버 영화 시맨틱 검색
• Oracle의 OTN portal
21
22. 6.2 Mobile Content Recommendation System
• Semantic 기술 기반의 지능형 의미 검색 시스템
• 상황 인지를 통한 개인 맞춤형 컨텐트 제공 시스템
• Semantic 기술 기반 지능형 의미 검색
의미상 필수적인 메타 데이터 통합
온톨로지를 통핚 추롞 기반 검색 서비스
• 개인 맞춤형 컨텐트 제공 기술
유무선 사용 분석을 통핚 개인 성향 파악
시간, 장소, 날씨 등 상황인지 및 개인 성향 조합
정보 발견을 위핚 접근 비용 감소
정보의 홗용성과 편의성 증대
22