Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
NPO法人 リンクト・オープン・データ・
イニシアティブ
小出 誠二
1
RDF入門
22
3
横浜市のRDFグラフによる表現
横浜
神奈川県東部
関東地方南部
関東地方
神奈川県
gn:locatedIn
gn:locatedIn
gn:locatedIn
gn:locatedIn
org:location
org:Place or...
4
• 複数のノードをエッジで結んだもの
• ノードには名前がある
• 名前がない空のノードもある
• エッジにも名前(ラベル)がある
• エッジには一方向の向きがある
RDFグラフとは何か?
横浜市
政令指定都市
rdf:type
サブジェク...
55
RDFグラフとは何か?
Proposal のタイトルは “Information Management: A proposal で、
その著者は Tim Berners-Lee という名前の人である。
66
Proposal のタイトルは “Information Management: A proposal で、
その著者は Tim Berners-Lee という名前の人である。
7
• IRI ノード
– RDFグラフでは楕円
– 名前はIRI あるいは短縮表記(prefixed name)
• リテラルノード
– RDFグラフでは矩形
– 平リテラル (”This is a plane literal.”@en)
–...
88
三種類のノード
1 <http://info.cern.ch/Proposal.html> ⇩
<http://purl.org/dc/elements/1.1/title> ⇩
”Information Management: A Pr...
9
• 長所
– モデルが単純でかつその理論的基礎がきちんと定義してあるため,
誤解の余地が少なく,情報流通のためのベースモデルとして適して
いる.
– モデルが単純であるため,リレーショナルデータベースのデータや
XML表記のデータはもちろん...
10
• 利点
– 世界に唯一なIRIを名前として用いるため,データを共
有化するときに問題が起こらないし,RDFの規約がそ
のようにできている.
– データ流通に,HTTPなどウェブにおいてすでに十分
に実用化され有用な技術を,利用することが...
11
• RDF 1.1 Primer
• RDF 1.1 Concepts and Abstract Syntax
• RDF 1.1 N-Triples
• RDF 1.1 N-Quads
• RDF 1.1 Turtle
• RDF 1....
12
• 三つ組を1行で書く.
– 最後にピリオドを置く.
• サブジェクトは IRI かブランクノード
• プレディケイトは IRI
• オブジェクトはIRI かブランクノードかリテラル
N-Triplesとは?
項 例
IRI <http:...
13
• それはグラフ構造で表現できますか
• 主要なノードに名前をつけます
• 制御可能なドメイン名がありますか
• ノード名をIRIで表現します
• ノード間のリンクの意味を考えます
• すでに世の中に同様なリンクが定義済みであ
ればそれを...
14
• 病院経営局
– 市民病院
横浜市組織図(一部)
市民病院 医療安全管理室,患者総合相談室,感染管理室,医療情報室,管理部,
再整備担当,救命救急センター,消化器病センター,炎症性腸疾患センター,
内視鏡センター,外来科学療法室,診療科...
15
市民病院の組織図RDFグラフ
org:Organization
rdfs:subClassOf
rdf:type
org:hasSubOrganization
yod-org:部yod-org:Hospital
手術部 脳血管医療センター...
16
総務省横浜鯖江実証実験の市民病院
org:Organization
rdf:type
org:hasSubOrganization
yod-org:Hospital
横浜市民病院
脳神経外科 麻酔科リハビリテーション科産婦人科
rdfs:...
1717
N-Quads によるグラフの区別
1
<http://data.city.yokohama.lg.jp/org/市民病院> ⇩
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩
...
18
• データの由来(provenance) を記述できる
• データセットを区別できる
• 効率的なSPARQL検索ができる
グラフラベルを追加すると
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SE...
1919
RDFグラフのTurtle表記
1
<http://info.cern.ch/Proposal.html> <http://purl.org/dc/elements/1.1/title> ⇩
“Information Manageme...
20
• 簡潔な三つ組表記
– 改行してもよい.
– prefixed name の短縮表記ができる
– 同じサブジェクトが続くときは,セミコロンに続けて
サブジェクトを省略して,プレディケイト+オブジェ
クトのペアを書いてもよい
– 同じサブ...
21
Turtle とは?
22
• RDFのリスト表記
• コレクションによるリスト表現
Turtle とは?
1 @prefix eg-student: <http://example.org/students/> .
2 @prefix eg-student-voc...
23
• Turtle の named graph 拡張版
TriG とは?
1 @prefix yod-org: <http://data.city.yokohama.lg.jp/org/> .
2 @prefix yod-med: <htt...
24
横浜市市民病院のRDF/XML表記
1 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
2 <rdf:Description rdf:about="htt...
2525
rdf:resource 属性
1 <rdf:RDF xmlns:eg="http://www.example.org/"
2 Xmlns:dc="http://purl.org/dc/elements/1.1/"
3 Xmlns:r...
2626
rdf:nodeID 属性
1 <rdf:RDF xmlns:eg="http://www.example.org/"
2 Xmlns:dc="http://purl.org/dc/elements/1.1/"
3 Xmlns:rdf...
2727
rdf:parseType="Resource"
1 <rdf:RDF xmlns:eg="http://www.example.org/"
2 Xmlns:dc="http://purl.org/dc/elements/1.1/"
...
2828
xml:base と rdf:ID
1 <?xml version="1.0"?>
2 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3 Xml:ba...
2929
xml:base と rdf:ID
1 <?xml version="1.0"?>
2 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3 Xml:ba...
30
形式的意味論(Formal Semantics)
文の集合 文
伴意
事実の集合 事実
従う
表現
世界
Universe of Discourse
解
釈
形式的意味論研究
0 ×1 = 0
1 ×1 = 1
0 +1 = 1
1 +1...
3131
表示意味論(denotational semantics)
Notation N1 Notation N2
Denotation D1 Denotation D2
ψ
φ φ
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...
32
• RDF解釈(単純解釈)
– rdf:type,rdf:Property
– 基底RDFグラフの解釈
– 一般RDFグラフの解釈(含むブランクノード)
• RDFS解釈
– rdfs:domain,rdfs:range,rdfs:sub...
33
基底グラフの解釈(単純解釈)
表現
世界
解
釈
URIの集合
ℝI U ℙI
写像 S
ex:a ex:p"xx"^^rdf:XMLLiteral
L ("xx"^^rdf:XMLLiteral)
型付リテラルの集合
写像 L
ℝI
平...
34
• 三つ組の一つでも偽ならグラフ全体が偽
• 三つ組 s/p/oがあったとき,pはプロパティで
〈sI, oI〉がpIの外延のメンバーならば真,さもな
ければ偽.
• サブジェクトorオブジェクトがIRIなら,論議の
世界への写像がある....
35
基底グラフの解釈(単純解釈)
〈 yod:林文子I, yod:横浜市I 〉∈Ext I(org:headOfI)
表現
世界
解
釈
ℙIから 《 x, y 》への写像 ExtI
リソース集合 ℝI
プロパティ集合 ℙI
yod:林文子 ...
3636
3 <http://info.cern.ch/Proposal.html> ⇩
<http://www.example.org/author> _:002 .
4 _:xxx ⇩
<http://www.w3.org/1999/02/...
37
3 <http://info.cern.ch/Proposal.html> ⇩
<http://www.example.org/author> _:001 .
4 _:001 ⇩
<http://www.w3.org/1999/02/22...
3838
6 <http://www.w3.org/TR/rdf-mt/> ⇩
<http://www.example.org/author> _:002 .
7 _:002 ⇩
<http://www.w3.org/1999/02/22-rd...
39
ブランクノードは述語論理における存在変数に同等である
∃x [ name (x, Tim_Berners-Lee) ∧ Person(x) ]
40
• ブランクノードを含むRDFグラフ中の,ブランク
ノードすべてを解釈して,それが真であれば,
ブランクノードを含むRDFグラフも真
一般RDFグラフの意味論的条件
これは解釈の定義を変更はしないということに留意されたい.
(…) それは...
41
RDF語彙の意味論的条件
rdf:PropertyI
ℙI = { xI | 《 xI , rdf:PropertyI 》=Ext I(rdf:typeI )
リソース集合 ℝI
〈 xI, rdf:PropertyI 〉∈Ext I(r...
42
RDFS語彙の意味論的条件
yI
{ xI | 《 xI , yI 》=Ext I(rdf:typeI ) }
リソース集合 ℝI
〈 xI, yI 〉∈Ext I(rdf:typeI )
rdf:type yx
rdf:typeI
xI...
43
RDFS語彙の意味論的条件
yyI
リソース集合 ℝI
rdf:type yyxx
yI
rdf:type yx
rdf:typeI
y rdfs:subClassOf yy .
Cext I(yyI ) ⊇Cext I(yI )
44
RDFS語彙の意味論的条件
リソース集合 ℝI
rdfs:Resource
rdfs:ClassI
rdfs:Class
クラス集合 ℂI
rdfs:Resource
ℂI = Cext I(rdfs:ClassI )
ℝI = Cext...
4545
RDFS伴意ルール
https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-mt/index.html#rdfs-entailment
定義域制約
値域制約
rdfs:Resource
はトップ...
46
RDF(S)の重要な関係
47
ご清聴ありがとうございました
小出誠二
http://linkedopendata.jp/
koide@nii.ac.jp
seijikoide0@gmail.com
Upcoming SlideShare
Loading in …5
×

Rdf入門handout

6,108 views

Published on

NPO法人リンクト・オープン・データ・イニシアティブによるリンクト・データを学ぶための連続講義の一コマ用の資料として使用することを直接の目的に,ひろく一般のRDFの初学者を対象に,RDFの基礎から始めて,さらに実務に進む手引きとなるように,最近のRDFに関する進歩も取り入れつつ纏めたものです.

Published in: Technology, Education

Rdf入門handout

  1. 1. NPO法人 リンクト・オープン・データ・ イニシアティブ 小出 誠二 1 RDF入門
  2. 2. 22
  3. 3. 3 横浜市のRDFグラフによる表現 横浜 神奈川県東部 関東地方南部 関東地方 神奈川県 gn:locatedIn gn:locatedIn gn:locatedIn gn:locatedIn org:location org:Place org:Organization 鶴見区 中区 西区 南区 神奈川区 江南区 保土ケ谷区 旭区 磯子区緑区青葉区都筑区 戸塚区栄区泉区瀬谷区 rdf:type 行政区 政令指定都市 金沢区 横浜市 org:hasSubOrganization 港北区 rdfs:subClassOf 横浜市 政令指定都市 横浜 神奈川県東部
  4. 4. 4 • 複数のノードをエッジで結んだもの • ノードには名前がある • 名前がない空のノードもある • エッジにも名前(ラベル)がある • エッジには一方向の向きがある RDFグラフとは何か? 横浜市 政令指定都市 rdf:type サブジェクト プレディケイト オブジェクト
  5. 5. 55 RDFグラフとは何か? Proposal のタイトルは “Information Management: A proposal で、 その著者は Tim Berners-Lee という名前の人である。
  6. 6. 66 Proposal のタイトルは “Information Management: A proposal で、 その著者は Tim Berners-Lee という名前の人である。
  7. 7. 7 • IRI ノード – RDFグラフでは楕円 – 名前はIRI あるいは短縮表記(prefixed name) • リテラルノード – RDFグラフでは矩形 – 平リテラル (”This is a plane literal.”@en) – 型付きリテラル (”100”^^xsd:positiveInteger ) • ブランクノード – RDFグラフでは空の楕円 三種類のノード
  8. 8. 88 三種類のノード 1 <http://info.cern.ch/Proposal.html> ⇩ <http://purl.org/dc/elements/1.1/title> ⇩ ”Information Management: A Proposal” . 2 <http://info.cern.ch/Proposal.html> ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Document> . 3 <http://info.cern.ch/Proposal.html> ⇩ <http://www.example.org/author> _:001 . 4 _:001 ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 5 _:001 <http://www.example.org/name> ⇩ ”Tim Berners-Lee” .
  9. 9. 9 • 長所 – モデルが単純でかつその理論的基礎がきちんと定義してあるため, 誤解の余地が少なく,情報流通のためのベースモデルとして適して いる. – モデルが単純であるため,リレーショナルデータベースのデータや XML表記のデータはもちろん,従来計算機で扱えなかった半構造化 データを計算機で扱うことが可能になる. • 短所 – 実際にRDFグラフをテキスト表記しようとすると,モデルとモデ ル記述の間のギャップがあり,いくつかの約束事を守る必要が ある. – 表形式記述やオブジェクト形式の記述など,他のテキスト表現 方法と比べるとどうしても記述量が多くなりやすい. RDFの長所と短所
  10. 10. 10 • 利点 – 世界に唯一なIRIを名前として用いるため,データを共 有化するときに問題が起こらないし,RDFの規約がそ のようにできている. – データ流通に,HTTPなどウェブにおいてすでに十分 に実用化され有用な技術を,利用することができる. • 欠点 – 流通させるには,ドメイン名が必須となるし,ウェブ上 でデータの存在を知ってもらう必要がある. – 流通させるには,ウェブ技術をベースにRDFやLODの 技術ができているため,実用においてはウェブ技術 が必要となる. RDFの技術的利点と欠点
  11. 11. 11 • RDF 1.1 Primer • RDF 1.1 Concepts and Abstract Syntax • RDF 1.1 N-Triples • RDF 1.1 N-Quads • RDF 1.1 Turtle • RDF 1.1 TriG • RDF 1.1 XML Syntax • RDF Schema 1.1 • RDF 1.1 Semantics W3C の RDF 勧告
  12. 12. 12 • 三つ組を1行で書く. – 最後にピリオドを置く. • サブジェクトは IRI かブランクノード • プレディケイトは IRI • オブジェクトはIRI かブランクノードかリテラル N-Triplesとは? 項 例 IRI <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ブランクノードシンボル _:x001 型付きリテラル "100"^^<http://www.w3.org/2001/XMLSchema#positiveInteger> 言語タグ付きリテラル "English"@en 平リテラル "横浜市の人口は370万人です."
  13. 13. 13 • それはグラフ構造で表現できますか • 主要なノードに名前をつけます • 制御可能なドメイン名がありますか • ノード名をIRIで表現します • ノード間のリンクの意味を考えます • すでに世の中に同様なリンクが定義済みであ ればそれを使います • どうしても無ければ、自分で定義します • 主題・述語・目的語の三つ組でグラフ表現 リンクト・データの作り方
  14. 14. 14 • 病院経営局 – 市民病院 横浜市組織図(一部) 市民病院 医療安全管理室,患者総合相談室,感染管理室,医療情報室,管理部, 再整備担当,救命救急センター,消化器病センター,炎症性腸疾患センター, 内視鏡センター,外来科学療法室,診療科,臨床工学部,栄養部, 手術部,画像診断部,検査部,薬剤部,脳血管医療センター
  15. 15. 15 市民病院の組織図RDFグラフ org:Organization rdfs:subClassOf rdf:type org:hasSubOrganization yod-org:部yod-org:Hospital 手術部 脳血管医療センター薬剤部検査部画像診断部 yod-org:室 yod-org:センター 患者総合相談室医療安全管理室 管理部医療情報室感染管理室 救命救急センター再整備担当 炎症性腸疾患センター消化器病センター 外来科学療法室内視鏡センター 栄養部臨床工学部診療科 市民病院
  16. 16. 16 総務省横浜鯖江実証実験の市民病院 org:Organization rdf:type org:hasSubOrganization yod-org:Hospital 横浜市民病院 脳神経外科 麻酔科リハビリテーション科産婦人科 rdfs:subClassOf 耳鼻科 放射線治療科放射線診断科泌尿器科皮膚科 血液内科腎臓内科 循環器内科呼吸器内科腫瘍内科 呼吸器外科神経内科 消化器外科心臓外科 形成外科乳線外科 眼科小児科口腔外科 神経精神科 緩和ケア内科病理診断科感染症内科
  17. 17. 1717 N-Quads によるグラフの区別 1 <http://data.city.yokohama.lg.jp/org/市民病院> ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://data.city.yokohama.lg.jp/org/Hospital> ⇩ <http://data.city.yokohama.lg.jp/org> . 1 <http://data.city.yokohama.lg.jp/med/横浜市民病院> ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://data.city.yokohama.lg.jp/org/Hospital> ⇩ <http://data.city.yokohama.lg.jp/med> .
  18. 18. 18 • データの由来(provenance) を記述できる • データセットを区別できる • 効率的なSPARQL検索ができる グラフラベルを追加すると PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name FROM <http://example.org/foaf/aliceFoaf> WHERE { ?x foaf:name ?name }
  19. 19. 1919 RDFグラフのTurtle表記 1 <http://info.cern.ch/Proposal.html> <http://purl.org/dc/elements/1.1/title> ⇩ “Information Management: A Proposal” . 2 <http://info.cern.ch/Proposal.html> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Document> . 3 <http://info.cern.ch/Proposal.html> <http://www.example.org/author> _:001 . 4 _:001 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 5 _:001 <http://www.example.org/name> ⇩“Tim Berners-Lee” . 1 @prefix dc: <http://purl.org/dc/elements/1.1/> . 2 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 3 @prefix eg: <http://www.example.org/> 4 <http://info.cern.ch/Proposal.html> dc:title "Information Management: A Proposal" ; 5 rdf:type eg:Document ; 6 eg:author [ rdf:type eg:Person; eg:name "Tim Berners-Lee"] .
  20. 20. 20 • 簡潔な三つ組表記 – 改行してもよい. – prefixed name の短縮表記ができる – 同じサブジェクトが続くときは,セミコロンに続けて サブジェクトを省略して,プレディケイト+オブジェ クトのペアを書いてもよい – 同じサブジェクト+プレディケイトが続くときは,コ ンマに続けてそれらを省略して,オブジェクトのみ を書いてもよい. – ブランクノードは角括弧で省略できる Turtle とは?
  21. 21. 21 Turtle とは?
  22. 22. 22 • RDFのリスト表記 • コレクションによるリスト表現 Turtle とは? 1 @prefix eg-student: <http://example.org/students/> . 2 @prefix eg-student-vocab: <http://example.org/students/vocab#> . 3 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 4 <http://example.org/courses/6.001> eg-student-vocab:students [ rdf:first eg-student:Amy ; 5 rdf:rest [ rdf:first eg-student:Mohamed ; 6 rdf:rest [ rdf:first eg-student:Johann ; 7 rdf:rest rdf:nil ] ; ] ; ] . 1 @prefix eg-student: <http://example.org/students/> . 2 @prefix eg-student-vocab: <http://example.org/students/vocab#> . 3 @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 4 <http://example.org/courses/6.001> eg-student-vocab:students 5 ( eg-student:Amy eg-student:Mohamed eg-student:Johann ) .
  23. 23. 23 • Turtle の named graph 拡張版 TriG とは? 1 @prefix yod-org: <http://data.city.yokohama.lg.jp/org/> . 2 @prefix yod-med: <http://data.city.yokohama.lg.jp/med/> . 3 @prefix rdf: < http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 4 5 <http://data.city.yokohama.lg.jp/org> 6 { 7 yod-org:市民病院 rdf:type yod-org:Hospital . 8 } 9 <http://data.city.yokohama.lg.jp/med> 10 { 11 yod-med:横浜市民病院 rdf:type yod-org:Hospital . 12 }
  24. 24. 24 横浜市市民病院のRDF/XML表記 1 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 2 <rdf:Description rdf:about="http://data.city.yokohama.lg.jp/org/市民病院"> 3 <rdf:type> 4 <rdf:Description rdf:about=”http://data.city.yokohama.lg.jp/org/Hospital”> 5 </rdf:Description> 6 </rdf:type> 7 </rdf:Descripion> 8 <rdf:Description rdf:about="http://data.city.yokohama.lg.jp/med/横浜市民病院"> 9 <rdf:type> 10 <rdf:Description rdf:about="http://data.city.yokohama.lg.jp/org/Hospital"> 11 </rdf:Description> 12 </rdf:type> 13 </rdf:Description> 14 </rdf:RDF>
  25. 25. 2525 rdf:resource 属性 1 <rdf:RDF xmlns:eg="http://www.example.org/" 2 Xmlns:dc="http://purl.org/dc/elements/1.1/" 3 Xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 4 <rdf:Description rdf:about="http://info.cern.ch/Proposal.html"> 5 <dc:title>Information Management: A Proposal</dc:title> 6 <rdf:type rdf:resource="http://www.example.org/Document" /> 7 <eg:author> 8 <rdf:Description> 9 <rdf:type rdf:resource="http://www.example.org/Person" /> 10 <eg:name>Tim Berners-Lee</eg:name> 11 </rdf:Description> 12 </eg:author> 13 </rdf:Description> 14 </rdf:RDF>
  26. 26. 2626 rdf:nodeID 属性 1 <rdf:RDF xmlns:eg="http://www.example.org/" 2 Xmlns:dc="http://purl.org/dc/elements/1.1/" 3 Xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 4 <rdf:Description rdf:about="http://info.cern.ch/Proposal.html"> 5 <dc:title>Information Management: A Proposal</dc:title> 6 <rdf:type rdf:resource="http://www.example.org/Document" /> 7 <eg:author rdf:nodeID=”x001” /> 8 </rdf:Description> 9 10 <rdf:Description rdf:nodeID=”x001”> 11 <rdf:type rdf:resource="http://www.example.org/Person" /> 12 <eg:name>Tim Berners-Lee</eg:name> 13 </rdf:Description> 14 </rdf:RDF>
  27. 27. 2727 rdf:parseType="Resource" 1 <rdf:RDF xmlns:eg="http://www.example.org/" 2 Xmlns:dc="http://purl.org/dc/elements/1.1/" 3 Xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 4 <rdf:Description rdf:about="http://info.cern.ch/Proposal.html"> 5 <dc:title>Information Management: A Proposal</dc:title> 6 <rdf:type rdf:resource="http://www.example.org/Document" /> 7 <eg:author rdf:parseType="Resource"> 8 <rdf:type rdf:resource="http://www.example.org/Person" /> 9 <eg:name>Tim Berners-Lee</eg:name> 10 </eg:author> 11 </rdf:Description> 12 </rdf:RDF>
  28. 28. 2828 xml:base と rdf:ID 1 <?xml version="1.0"?> 2 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 3 Xml:base ="http://example.org/students" 4 xmlns:foaf="http://xmlns.com/foaf/0.1/" 5 xmlns:s="http://example.org/students/vocab#"> 6 7 <rdf:Description rdf:about="http://example.org/courses/6.001"> 8 <s:students rdf:parseType="Collection"> 9 <rdf:Description rdf:about="#Amy"/> 10 <rdf:Description rdf:about="#Mohamed"/> 11 <rdf:Description rdf:about="#Johann"/> 12 </s:students> 13 </rdf:Description> 14 15 <foaf:Person rdf:about="#Amy"> 16 <foaf:name>Amy</foaf:name> 17 </foaf:Person> 18 <foaf:Person rdf:about="#Mohamed"> 19 <foaf:name>Mohamed</foaf:name> 20 </foaf:Person> 21 <foaf:Person rdf:about="#Johann"> 22 <foaf:name>Johann</foaf:name> 23 </foaf:Person> 24 </rdf:RDF>
  29. 29. 2929 xml:base と rdf:ID 1 <?xml version="1.0"?> 2 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 3 Xml:base ="http://example.org/students" 4 xmlns:foaf="http://xmlns.com/foaf/0.1/" 5 xmlns:s="http://example.org/students/vocab#"> 6 7 <rdf:Description rdf:about="http://example.org/courses/6.001"> 8 <s:students rdf:parseType="Collection"> 9 <rdf:Description rdf:about="#Amy"/> 10 <rdf:Description rdf:about="#Mohamed"/> 11 <rdf:Description rdf:about="#Johann"/> 12 </s:students> 13 </rdf:Description> 14 15 <foaf:Person rdf:ID="Amy"> 16 <foaf:name>Amy</foaf:name> 17 </foaf:Person> 18 <foaf:Person rdf:ID="Mohamed"> 19 <foaf:name>Mohamed</foaf:name> 20 </foaf:Person> 21 <foaf:Person rdf:ID="Johann"> 22 <foaf:name>Johann</foaf:name> 23 </foaf:Person> 24 </rdf:RDF>
  30. 30. 30 形式的意味論(Formal Semantics) 文の集合 文 伴意 事実の集合 事実 従う 表現 世界 Universe of Discourse 解 釈 形式的意味論研究 0 ×1 = 0 1 ×1 = 1 0 +1 = 1 1 +1 = 2
  31. 31. 3131 表示意味論(denotational semantics) Notation N1 Notation N2 Denotation D1 Denotation D2 ψ φ φ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ edge of the machine internal structure external domain 「横浜市の人口は370万人です.」 Universe of Discourse
  32. 32. 32 • RDF解釈(単純解釈) – rdf:type,rdf:Property – 基底RDFグラフの解釈 – 一般RDFグラフの解釈(含むブランクノード) • RDFS解釈 – rdfs:domain,rdfs:range,rdfs:subClassOf, rdfs:subPropertyOf – rdfs:Resource,rdfs:Class RDF意味論における解釈
  33. 33. 33 基底グラフの解釈(単純解釈) 表現 世界 解 釈 URIの集合 ℝI U ℙI 写像 S ex:a ex:p"xx"^^rdf:XMLLiteral L ("xx"^^rdf:XMLLiteral) 型付リテラルの集合 写像 L ℝI 平リテラルの集合 L (“this is literal”^^xsd:string) "this is literal" プロパティ集合 ℙI [[ex:a]] [[ex:p]]リソース集合 ℝI ℝI 写像 L
  34. 34. 34 • 三つ組の一つでも偽ならグラフ全体が偽 • 三つ組 s/p/oがあったとき,pはプロパティで 〈sI, oI〉がpIの外延のメンバーならば真,さもな ければ偽. • サブジェクトorオブジェクトがIRIなら,論議の 世界への写像がある. • サブジェクトorオブジェクトがリテラルなら,論 議の世界への写像がある. 基底グラフの解釈(単純解釈)
  35. 35. 35 基底グラフの解釈(単純解釈) 〈 yod:林文子I, yod:横浜市I 〉∈Ext I(org:headOfI) 表現 世界 解 釈 ℙIから 《 x, y 》への写像 ExtI リソース集合 ℝI プロパティ集合 ℙI yod:林文子 yod:横浜市 org:headOf
  36. 36. 3636 3 <http://info.cern.ch/Proposal.html> ⇩ <http://www.example.org/author> _:002 . 4 _:xxx ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 5 _:xxx <http://www.example.org/name> ⇩ ”Tim Berners-Lee” .
  37. 37. 37 3 <http://info.cern.ch/Proposal.html> ⇩ <http://www.example.org/author> _:001 . 4 _:001 ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 5 _:001 <http://www.example.org/name> ⇩ ”Tim Berners-Lee” . 37 6 <http://www.w3.org/TR/rdf-mt/> ⇩ <http://www.example.org/author> _:001 . 7 _:001 ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 8 _:001 <http://www.example.org/name> ⇩ ”Patrick Hayes” .
  38. 38. 3838 6 <http://www.w3.org/TR/rdf-mt/> ⇩ <http://www.example.org/author> _:002 . 7 _:002 ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 8 _:002 <http://www.example.org/name> ⇩ ”Patrick Hayes” . 3 <http://info.cern.ch/Proposal.html> ⇩ <http://www.example.org/author> _:001 . 4 _:001 ⇩ <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ⇩ <http://www.example.org/Person> . 5 _:001 <http://www.example.org/name> ⇩ ”Tim Berners-Lee” .
  39. 39. 39 ブランクノードは述語論理における存在変数に同等である ∃x [ name (x, Tim_Berners-Lee) ∧ Person(x) ]
  40. 40. 40 • ブランクノードを含むRDFグラフ中の,ブランク ノードすべてを解釈して,それが真であれば, ブランクノードを含むRDFグラフも真 一般RDFグラフの意味論的条件 これは解釈の定義を変更はしないということに留意されたい. (…) それはただ単にある解釈のもとで,既定グラフに対する真 偽値を提供する解釈が,たとえブランクノード自身の解釈を提 供しなくても,ブランクノード付きのグラフにも真偽値を充てら れるように表示物の定義のためのルールを拡張するだけで ある. [RDF意味論]
  41. 41. 41 RDF語彙の意味論的条件 rdf:PropertyI ℙI = { xI | 《 xI , rdf:PropertyI 》=Ext I(rdf:typeI ) リソース集合 ℝI 〈 xI, rdf:PropertyI 〉∈Ext I(rdf:typeI ) rdf:type プロパティ集合 ℙI rdf:Propertyx
  42. 42. 42 RDFS語彙の意味論的条件 yI { xI | 《 xI , yI 》=Ext I(rdf:typeI ) } リソース集合 ℝI 〈 xI, yI 〉∈Ext I(rdf:typeI ) rdf:type yx rdf:typeI xI ∈Cext I(yI )⇔ クラス インスタンス
  43. 43. 43 RDFS語彙の意味論的条件 yyI リソース集合 ℝI rdf:type yyxx yI rdf:type yx rdf:typeI y rdfs:subClassOf yy . Cext I(yyI ) ⊇Cext I(yI )
  44. 44. 44 RDFS語彙の意味論的条件 リソース集合 ℝI rdfs:Resource rdfs:ClassI rdfs:Class クラス集合 ℂI rdfs:Resource ℂI = Cext I(rdfs:ClassI ) ℝI = Cext I(rdfs:ResourceI )
  45. 45. 4545 RDFS伴意ルール https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-mt/index.html#rdfs-entailment 定義域制約 値域制約 rdfs:Resource はトップクラス 包摂推論 推移律
  46. 46. 46 RDF(S)の重要な関係
  47. 47. 47 ご清聴ありがとうございました 小出誠二 http://linkedopendata.jp/ koide@nii.ac.jp seijikoide0@gmail.com

×