Ｈｉｔａｃｈｉアカデミックシステム研究会、2014年3月4日、於：日立マクセル本社ビル”データのWeb”を目指す
Linked Dataの技術とは
武田英明
takeda@nii.ac.jp @takechan2000
国立情報学研究所
NPO法人 リンクト・オープン・データ・イニシアティブ

あらまし• オープンデータとは• Linked Data/Linked Open Data(LOD)とは• Linked Dataを作る、公開する• Linked Dataを使う

オープンデータとは• データを公開するということ？
• 情報公開とは違うの？

オープンデータとは• オープンデータとは、誰でも自由に使えて再利用もでき、かつ再配布できるようなデータである。課すべき決まりは、たかだか「作者のクレジットを残す」あるいは「同じ条件で配布する」程度である。
http://opendatahandbook.org/ja/what-is-open-data/• “A piece of data or content is open if anyone is free
to use, reuse, and redistribute it — subject only, at
most, to the requirement to attribute and/or sharealike.” http://opendefinition.org/

データは情報流通社会の資源

自由に利用

自由に再加工自由に再配布オープンデータに必要なもの• オープンライセンス• 機械可読フォーマット

オープンライセンス• 情報を最小限の制約以外で自由に使うことを許すライセンス
オープンライセンス
CCライセンス
いくつかの権利の主張

全ての権利の主張

CC BY-NC-SA CC BY-NC-ND
表示 -非営利-継承 表示 -非営利-改変禁止

CC BY-NC CC BY-ND

CC BY-SA

CC BY

CC0

表示 – 改変禁止

表示 - 継承

表示

権利放棄

表示 – 非営利機械可読フォーマット
• 再利用性を高める– 内容を切ったり、はったりできること• 機械（コンピュータ）が内容を処理できる形式が望ましい– 特定のプログラムで処理できる– オープンなフォーマットで公開– Webのようにつながる

オープンデータへの５つのステップ
他へのリンクを入れたデータを公開
RDF（とSPARQL）でデータ公開
例：RDFa, RDFストア
オープンに利用できるフォーマットで公開
例：csv
コンピュータが処理可能なフォーマットで公開
例：xls, doc
どんなフォーマットでよいからオープンラインセスでデー
タ公開 例：PDF, jpg

データの公開、共有

Linked Data
Linked Open Data (LOD)http://www.data.gov/

文書のWebデータのWeb
このデータに対応する別のデータ

このデータに別のデータと同じ

この属性の意味は？

異なるデータ源のデータが相互に結びつく

Linked Open Data (LOD)• オープンでリンクできるデータ– 今のWebが“文書のWeb” 、LODは“データのWeb”• Linked Dataの4原則– 事柄の名前にURIを使うこと– 名前の参照がHTTP URIでできること– URIを参照したときに関連情報が手に入るように理解可能なデータを提供– 外部へのリンクも含めよう（必ずしもオープンとは限らない⇒Linked Data）

Linked Dataの記述のしかた• RDF(+RDFS, OWL)の利用– 簡便な記述方法：<主語> <述語> <目的語> .
<http://www-kasm.nii.ac.jp/~takeda#me> rdfs:type foaf:Person .
<http://www-kasm.nii.ac.jp/~takeda#me> foaf:name “武田英明” .
<http://www-kasm.nii.ac.jp/~takeda#me> foaf:gender “male” .
<http://www-kasm.nii.ac.jp/~takeda#me> foaf:knows<http://southampton.rkbexplorer.com/id/person07113> .
foaf:Person

rdfs:type
http://www-kasm.nii.ac.jp/~takeda#me
foaf:knows
foaf:name“武田英明”

foaf:gender“male”

http://southampton.rkbexplorer.com/id/person07113

Linked Dataの記述
foaf:Person
rdfs:type
http://www-kasm.nii.ac.jp/~takeda#me
foaf:knows
foaf:namefoaf:gender“武田英明”“male”

http://southampton.rkbexplorer.com/
id/person-07113
owl:sameAs

dbpprop:occupation
dbpedia:Computer_scientist<http://dbpedia.org/resource/Tim_Berners-Lee>dbpprop:namedbpprop:birthPlacedbpprop:birthDate“Sir Tim Berners-Lee”“London, England”“1955-06-08”

LOD Cloud(Linking Open Data)日本のLinked Data Cloudhttp://dbpedia.org/page/Tohttp://en.wikipedia.org/wiki/TokyoLinked Dataをどうやって作るか？
• スキーマ– 既存のスキーマを探す– そのまま使う／選択する／追加する– スキーマを公開する• データ– データを一括してRDFに変換する／変換プログラム– 公開する• ダンプファイル• SPARQL Endpoint• dereferenceable

LODのためのスキーマ・語彙• クラス/概念の記述– オントロジーにおける概念定義– 関係データベースのテーブルのスキーマ– オブジェクト指向プログラミングにおけるオブジェクト定義• セマンティックWebでのクラス定義– RDFS/OWLによるクラス記述• RDFS: 簡単なクラス定義• OWL: 記述論理に基づく• Linked Dataにおけるクラス定義– 主にRDFSに基づく (例外: owl:sameAs)– 簡単な構造 (主にプロパティー値の組)

LODのためのスキーマ・語彙• スキーマ共有の重要性– 相互運用性– 汎用アプリケーション• スキーマ記述言語– RDFS– OWL• よく使われるスキーマ– Dublin Core
– FOAF (Friend-Of-A-Friend)– SKOS (Simple Knowledge Organization System)

RDF/RDFSのプロパティ• rdf:type (http://www.w3.org/1999/02/22-rdf-syntax-ns#type)– クラス/インスタンス関係• rdfs:subClassOf (http://www.w3.org/2000/01/rdf-schema#
subClassOf)– スーパクラス/サブクラス関係• rdfs:subPropertyOf (http://www.w3.org/2000/01/rdf-schema#
subPropertyOf)– スーパプロパティ/サブプロパティ関係

Usage of Common Vocabularies
PrefixNamespace

Used bydc

http://purl.org/dc/elements/1.1/

66 (31.88 %)foaf

http://xmlns.com/foaf/0.1/

55 (26.57 %)dcterms

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

38 (18.36 %)skos

http://www.w3.org/2004/02/skos/core#29 (14.01 %)akt

http://www.aktors.org/ontology/portal#

17 (8.21 %)geo

http://www.w3.org/2003/01/geo/wgs84_pos#

14 (6.76 %)mo

http://purl.org/ontology/mo/

13 (6.28 %)bibo

http://purl.org/ontology/bibo/

8 (3.86 %)vcard

http://www.w3.org/2006/vcard/ns#

6 (2.90 %)frbr

http://purl.org/vocab/frbr/core#

5 (2.42 %)sioc

http://rdfs.org/sioc/ns#

4 (1.93 %)LDOW2011 Presentation, Christian Bizer (Freie Universität

(Simple) Dublin Core
• 図書館コミュニティから• DCMI (Dublin Core Metadata
Initiative)による管理• (Simple) Dublin Core––––

たった15要素
Simple is best
値域制約はない
http://purl.org/dc/elements/1.1/• 15 elements
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–

Title
Creator
Subject
Description
Publisher
Contributor
Date
Type
FormatIdentifier
SourceLanguage
Relation
Coverage
Rightsdc terms• Qualified Dublin Core– 定義域と値域– より精緻な語彙• simple dcの拡張
Properties

abstract , accessRights , accrualMethod , accrualPeriodicity , accrualPolicy , alternative , audience , available , bibliograp
hicCitation ,conformsTo , contributor , coverage , created , creator , date , dateAccepted , dateCopyrighted , dateSubmit
ted , description ,educationLevel , extent , format , hasFormat , hasPart , hasVersion , identifier , instructionalMethod , isFormatOf , isPartOf , isReferencedBy ,isReplacedBy , isRequiredBy , issued , isVersionOf , language , license , mediator ,medium , modified , provenance , publisher , references ,relation , replaces , requires , rights , rightsHolder , source , spatial , subject , tableOfContents , temporal , title , type , valid

Properties in the/elements/1.1/namespace
Vocabulary Encoding Schemes
Syntax Encoding Schemes

contributor , coverage , creator , date , description , format , identifier , language , publisher , relation , rights , source , subject , title , type
DCMIType , DDC , IMT , LCC , LCSH , MESH , NLM , TGN , UDC
Box , ISO3166 , ISO639-2 , ISO639-3 , Period , Point , RFC1766 , RFC3066 , RFC4646 , RFC5646 , URI , W3CDTF

Classes

Agent , AgentClass , BibliographicResource , FileFormat , Frequency , Jurisdiction , LicenseDocument , LinguisticSystem ,Location ,LocationPeriodOrJurisdiction , MediaType , MediaTypeOrExtent , MethodOfAccrual , MethodOfInstruction , Pe
riodOfTime , PhysicalMedium ,PhysicalResource , Policy , ProvenanceStatement , RightsStatement , SizeOrDuration , Sta
ndard
Collection , Dataset , Event , Image , InteractiveResource , MovingImage , PhysicalObject , Service , Software , Sound , Sti
llImage , Text
memberOf , VocabularyEncodingScheme

DCMI Type Vocabulary
Terms related to the DCMI
Abstract ModelDcterms

subPropertyOf

DomainRange

Dcterms

subPropertyOf

contributor

dc:contributor

rdfs:Resource

dcterms:Agent

conformsTo

dc:relation, dcterms:relation rdfs:Resource

dcterms:Standard

dc:creator,
dcterms:contributor

hasFormat

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

creator

rdfs:Resource

dcterms:Agent
hasPartdc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

hasVersion

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

isFormatOf

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

isPartOf

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

isReferencedBy

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

isReplacedBy

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

coverage

dc:coverage

rdfs:Resource

dcterms:LocationPeriodOr
Jurisdiction

spatialdc:coverage,
dcterms:coverage

rdfs:Resource

dcterms:Location

rdfs:Resource

dcterms:PeriodOfTime

rdfs:Resource

rdfs:Literal

Domain

Range

Date

dc:coverage,
dcterms:coverage
dc:dateAvailable

dc:date, dcterms:date

rdfs:Resource

rdfs:Literal

Created

dc:date, dcterms:date

rdfs:Resource

rdfs:Literal

isRequiredBy

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

dateAccepted

dc:date, dcterms:date

rdfs:Resource

rdfs:LiteralisVersionOf

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

dateCopyrighted dc:date, dcterms:date

rdfs:Resource

rdfs:Literal

References

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

dateSubmitted

dc:date, dcterms:date

rdfs:Resource

rdfs:Literal

Replaces

dc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

Issueddc:date, dcterms:date

rdfs:Resource

rdfs:Literal

Requiresdc:relation, dcterms:relation rdfs:Resource

rdfs:Resource

Modified

dc:date, dcterms:date

rdfs:Resource

rdfs:LiteralValid

dc:date, dcterms:date

rdfs:Resource

rdfs:Literaldescription

dc:description
dc:description,
dcterms:description

rdfs:Resource

rdfs:Resource

rdfs:Resource

rdfs:Resource

dc:rights
dc:rights, dcterms:rights
dc:rights, dcterms:rights
dc:subject
dc:title
dc:title, dcterms:title
dc:type

TemporaltableOfContents

dc:description,
dcterms:description

rdfs:Resource

rdfs:Resource

formatdc:format

rdfs:Resource

dcterms:MediaTypeOrExte
nt

RightsaccessRights
License
Subject
title
alternative
type
audience
educationLevel
mediator

extentdc:format, dcterms:format

rdfs:Resource

dcterms:SizeOrDuration

accrualMethod

Mediumdc:format, dcterms:format

Abstract

Identifier
dc:identifier
bibliographicCitat dc:identifier,ion
dcterms:identifierdcterms:PhysicalRdcterms:PhysicalMedium
esourcerdfs:Resource
rdfs:Literaldcterms:Bibliograp
rdfs:Literal
hicResource

Languagedc:language

rdfs:Resource

dcterms:LinguisticSystem

Publisher
Relation

dc:publisher
dc:relation

rdfs:Resource
rdfs:Resource

dcterms:Agent
rdfs:Resource

sourcedc:source, dcterms:relation

rdfs:Resource

rdfs:Resource

accrualPeriodicity
accrualPolicy
instructionalMethod
provenancerightsHolder

dcterms:audiencedcterms:audiencerdfs:Resource dcterms:RightsStatement
rdfs:Resource dcterms:RightsStatement
rdfs:Resource dcterms:LicenseDocument
rdfs:Resource rdfs:Resource
rdfs:Resource rdfs:Resourcerdfs:Literalrdfs:Resource rdfs:Resourcerdfs:Literalrdfs:Resource rdfs:Class
rdfs:Resource dcterms:AgentClass
rdfs:Resource dcterms:AgentClass
rdfs:Resource dcterms:AgentClassdcmitype:Collec
dcterms:MethodOfAccrualtiondcmitype:Collec
dcterms:Frequency
tion
dcmitype:Collec
dcterms:Policytion
rdfs:Resource dcterms:MethodOfInstructio
rdfs:Resource dcterms:ProvenanceStatem
rdfs:Resource dcterms:Agent

http://dublincore.org/documents/dcmi-terms/

The Friend of a Friend (FOAF)• 人と人の関係のメタデータ• 自主的なプロジェクト
Classes:| Agent | Document | Group | Image | LabelProperty |OnlineAccount | OnlineChatAccount |OnlineEcommerceAccount | OnlineGamingAccount |Organization | Person | PersonalProfileDocument |Project |Properties:| account | accountName | accountServiceHomepage |age | aimChatID | based_near | birthday | currentProject| depiction | depicts | dnaChecksum | familyName |family_name | firstName | focus | fundedBy | geekcode |gender | givenName | givenname | holdsAccount |homepage | icqChatID | img | interest | isPrimaryTopicOf| jabberID | knows | lastName | logo | made | maker |mbox | mbox_sha1sum | member | membershipClass |msnChatID | myersBriggs | name | nick | openid | page |pastProject | phone | plan | primaryTopic | publications |schoolHomepage | sha1 | skypeID | status | surname |theme | thumbnail | tipjar | title | topic | topic_interest |@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
<#JW>
a foaf:Person ;foaf:name "Jimmy Wales" ;foaf:mbox <mailto:jwales@bomis.com> ;foaf:homepage <http://www.jimmywales.com/> ;foaf:nick "Jimbo" ;foaf:depiction<http://www.jimmywales.com/aus_img_small.jpg> ;foaf:interest <http://www.wikimedia.org> ;foaf:knows [a foaf:Person ;foaf:name "Angela Beesley"].
<http://www.wikimedia.org>
rdfs:label "Wikipedia" .

SKOS (Simple Knowledge Organization
System)• タキソノミーに関するメタデータ– 概念の階層的構造• 件名標目のようなタキソノミーにために設計• 上位下位関係はクラス・サブクラス関係とは一致しな
い• W3C Recommendation 18 August 2009

SKOS (Simple Knowledge Organization
System)• SKOS Core (hierarchical concept structure)– skos:semanticRelation– skos:broaderTransitive– skos:narrowerTransitive– skos:broader– skos:narrower– skos:related– skos:preflabel– skos:altlabel– skos:hiddenlabel

subPropertyOf

SKOS (Simple Knowledge Organization
System)• SKOS Mapping– skos:mappingRelation– skos:closeMatch– skos:exactMatch– skos:broadMatch– skos:narrowMatch– skos:relatedMatch

subPropertyOf

Linked Open Vocabulary (LOV)• 語彙流通のためのプラットフォーム– スキーマの登録– スキーマの検索• http://labs.mondeca.com/dataset/lov/• MetaBridge (日本）– http://www.metabridge.jp/

More Info.
• http://www.w3.org/2005/Incubator/lld/wiki/V
ocabulary_and_Dataset

スキーマ・語彙のまとめ• いくつかの有名なスキーマ– DC, DC terms, FOAF, SKOS …

• もっと多い専門的スキーマ– CIDOC CRM– PRISM–…

• 再利用を強く推奨– LOV

データを作る／公開する• 既存のデータを一括して変換する– csvから変換する• Open refine• Linkdata.org– RDFを公開する• RDBから変換して公開する– D2R

RDF refine• Open refine– テーブル型のデータの洗練、変換ツール• RDF refine– Open refineの拡張– RDFSの設定とそれに基づくRDF出力

Linkdata.org• 理研が開発• csvを読み込んで簡単にRDF化

http://lodcu.cs.chubu.ac.jp/SparqlEPCU/index.jsp

SparqlEPCU• 簡単SPARQL Endpoint公開

D2R• RDBからマッピングを通じてRDFを出力• マッピングファイル–例@prefix geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> .
map:posts_lat a d2rq:PropertyBridge;
d2rq:belongsToClassMap map:posts;
d2rq:property geo:lat;d2rq:propertyDefinitionLabel "posts lat";d2rq:sqlExpression "posts.lat / (60.0 * 60.0 * 1000.0)";d2rq:datatype xsd:double;.
From http://qiita.com/sawamur@github/items/02b3ddfa3187df300342

データセットの登録• データセットが見つけやすいように、データカ
タログに登録する• CKAN

Linked Dataをどうやって使うのか
Linked Data
BrowserThingsSPARQLRDF Store

Linked Data
MashupThingsThingsLinked Data
Search Engine

ThingsThingsTabulator

http://sindice.co

SPARQLSPARQL Query Language for RDF
W3C Recommendation 15 Janua
http://www.w3.org/TR/rdf-sparq• RDFデータ問い合わせ言語• SQLに似た構造
クエリのフォームPREFIX foaf: <http://xmlns.com/foaf/0.1/>
クエリの変数SELECT ?name
WHERE {
?person foaf:name ?name .
}クエリのパターン (Turtle 形式)

SPAQL
Query

RDF Store(RDF Database)http://ja.dbpedia.org/resource/慶應義塾大学

http://ja.dbpedia.org/sparql

クエリ: 手塚治虫文化賞を受賞した漫画家の代表的な漫画
PREFIX dbp: <http://ja.dbpedia.org/resource/>
PREFIX dbp-owl: <http://dbpedia.org/ontology/>
SELECT ?creatorName ?comicName
WHERE {
?creator a dbp-owl:ComicsCreator ; dbp-owl:award dbp:手塚治虫文化賞 ;dbp-owl:notableWork ?comic ; rdfs:label ?creatorName .
?comic a dbp-owl:Comics ; rdfs:label ?comicName .
}dbp-owl:Comics

サイボーグ009
rdfs:label

rdf:type

dbp-owl:AdministrativeRegion
dbp:サイボーグ009

rdf:type

dbp-owl:
ComicsCreator

dbp-owl:notableWork
rdfs:label

dbp:宮城県

rdf:type

dbp-owl:birthPlacedbp:石ノ森章太郎

rdf:type

宮城県

foaf:Person

dbp-owl:leaderName
dbp-prop:生年

rdfs:label

dbp-owl:award

dbp:村井嘉浩
1938

石ノ森章太郎dbp:手塚治虫
文化賞

Yokohama Art Spot の構成
所蔵館

全体マップ表示における処理

RDF
ストア

施設

作品

SPARQL
エンドポイント
アーティストLODAC Museum
OWLIM SE

イベント

施設
RDF

スポット

SPARQLストア

SPARQL
JSON

イベント

エンドポイント
アーティス
施
設
ト

横浜LOD
ARC2
ユーザ

HTML
JavaScript
PythonSPARQLWrapper

回答
RDF
ストア

SPARQL質問

エンドポイント

PinQA
D2R

ユーザ

利用

施設情報ページにおける情報取得と表示標準化された形式で記述

ユーザに適した表示が簡単に実現可能育なび.net

育なび.net
育なび.netのシステム

保育所
空き状況
データ

防災・減災
データ

SPARQLを発行

保育園
データ

医療機関
データ

RDFストア

レスポンス

他

Webサーバ
元データはExcel

RDFに変換

データ格納

ブラウザ

広域避難場所データ

育なび.net駐車場データ

健康遊具データ

公園データ

まとめ
• Linked Open Data (LOD)とは– “データのWeb”、つながるデータ– データの再利用性を高める• LODの技術– RDF，RDFS，OWL– SPQARL• LODをどう使うか– マッシュアップアプリケーション• データを使い回す– データマネージメント