Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Object Reuse and Exchange と その実装例について
1. b ct e nd xcha e と
O j e R use a E ng
その実装例について
黒田 拓(北海道大学大学院理学院数学専攻)
行木 孝夫( 北海道大学大学院理学研究院数学部門)
2. 発表の概要
A R について
O I -O E
リソースのa g g ti o
g re a n
リソースマップによるa g g ti o
g re a nの記述
H での再利用と交換
TTP
M での実装例
D L-JP
3. O I -O E
A R
Oe A
p n rchi ve I ni ti a ve O j e R use a
s ti b ct e nd
Excha eng
e 上のリソースを集めたものをaggr e gat i on
Wb
と呼ばれるオブジェクトとして扱う
aggr e gat i onの情報をリソースマップ( Re M )
という形式で記述する
作成したリソースマップをaggr e gat i onと関
連付けて公開する
4. a g g ti o
g re a n(のページ)の例
a i v. o のある論文
rX rg
5. a g g ti o
g re a n(のページ)の例
(雑誌)Journa o the Mthe a ca S ci e o Ja a
l f a mti l o ty f pn
6. a g g ti o
g re a n(のページ)の例
(雑誌のリソース) V l . 6 N . 1
o 1, o
7. a g g ti o
g re a n(のページ)の例
雑誌 : H kka d Mthe a ca Jo
o i o a mti l urnal
8. a g g ti o
g re a n(のページ)の例
V l um: V l . 3
o e o 7(1)
10. リソースのa g g ti o
g re a n
雑誌 V l .3
o
V l .1
o
V l .2
o
論文3
論文1 PF
D
論文2
PS
H L
TM
11. R の狙い
OE
既存の(人間向けの)ページ
見やすさ優先 / サイト毎のスタイル
A g g ti o
g re a nとそれを表すページの混同
雑誌のU I = 雑誌についてのWb
R e ページのU I
R
リソースマップにa g g ti o
g re a nの情報を記述
セマンティックに記述
a g g ti o
g re a nとその表現(リソースマップ)を厳密に区
別
13. リソースマップ
A g g ti o
g re a nの情報を記述
g re a されたリソースの一覧
A g g te
各種メタデータ
構造はR Fグラフ
D
14. リソースマップ
R Fグラフでa g g ti o
D g re a nの情報を記述
http // e ml e o / re / vo -1. xm
: xa p . rg m l l
(リソースマップ)
http //wwo e rchi ve o /o /te s/d scri b s
: w. p na s. rg re rm e e
http //e ml e o /j o
: xa p . rg urna /vo 1
l l
(ある雑誌のV l . 1)
o
http //wwo e rchi ve o /o /te s/a g g te
: w. p na s. rg re rm g re a s
http //e ml e o /a cl e
: xa p . rg rti /1 http // e ml e o /a cl e
: xa p . rg rti /2
(論文1) (論文2 )
15. リソースマップ
R Fグラフでa g g ti o
D g re a nの情報を記述
(簡単のためU I を略記)
R
URI:ReM
o :d scrib s
re e e
URI:Vol.1
o :a g g te
re g re a s o :a g g te
re g re a s
URI:論文1 URI:論文2
16. リソースマップ
R Fグラフでa g g ti o
D g re a nの情報を記述
(全体像)
d hts
c:rig 著作権
d rm o ifie
cte s:m d d
URI:ReM
d rm
cte s:cre to
a r 標準的な
リソースマップ
更新日時
fo f:na e
a m
o :d scrib s
re e e
Re 作成者名
M
最小限必要な dc:title
タ ル
イト
要素 URI:Vol.1
d rm
cte s:cre to
a r
出版社
o :a g g te
re g re a s o :a g g te
re g re a s
d rm
cte s:cre te
a d
出版日時
URI:論文1 URI:論文2
d rm
cte s:cre to
a r d rm
cte s:cre to
a r
各リソースのメ データ 記述できる
タ も
執筆者 執筆者
17. リソースマップ
a g g ti o
g re a nの中でのメタデータ
URI:ReM
URI:雑誌-B
URI:雑誌-A
論文2' 論文1 論文2
xxx:ha e
sN xt
a g g ti o
g re a nの中でのリソース間の関係は
そのa g g ti o
g re a nの中でだけ意味を持つ
18. リソースマップ
P xy
ro
UI :RM
R e
o : p xyI n
re ro o : p xyI n
re ro
U I : 雑誌-A
R
U I : P xy1
R ro U I : P xy2
R ro
o : p xyFo
re ro r o : p xyFo
re ro r
論文1 論文2
xxx: ha e
sN xt
a g g ti o
g re a nの中で意味を持つメタデータを
P xyを通して記述できる
ro
19. リソースマップ
P xyを使った外部からの参照
ro
UI :RM
R e
o : p xyI n
re ro
論文b U I : the B st
R e
U I : P xy1
R ro
xxx: ci t es o : p xyFo
re ro r
論文a
最高の論文を集めた
a g g ti o
g re a n
あるa g g ti o
g re a nに属する事に特別な意味がある
20. リソースマップ
P xyを使った外部からの参照
ro
UI :RM
R e2 UI :RM
R e1
U I : 論文リスト
R U I : 雑誌
R
U I : P xy2
R ro
U I : P xy1
R ro
論文
ore : l i neage
別のa g g ti o
g re a nに由来することを主張
21. リソースマップ
P xyのU I
ro R
外部からリソース目当てにアクセスされる
アクセスすることでリソースへのリダイレクション
が行う
レスポンスヘッダでa g g ti o
g re a nのU I も
R
例 : OE
R プロキシU I リゾルバ
R
http //o p xy. o /r? ha R : 論文1& he =U I : 雑誌-A
: re ro rg w t=U I w re R
H /1. x 3 3 S e O r
TTP 0 e the
Li nk: <U I : 雑誌-A re =" a g g ti o
R >; l g re a n"
Lo ti o U I : 論文1
ca n: R
23. リソースマップのシリアライズ
サンプル
d rm o ifie
cte s:m d d d rm
cte s:cre to
a r
URI:ReM
更新日時
fo f:na e
a m
o :d scrib s
re e e
Re 作成者名
M
URI:Vol.1 dc:title
タ ル
イト
o :a g g te
re g re a s o :a g g te
re g re a s
URI:論文1 URI:論文2
d rm
cte s:cre to
a r
執筆者
24. リソースマップのシリアライズ
R F/X Lの場合
D M
<?xm ve o 1. 0 e d ng U
l rsi n=" " nco i =" TF-8 ?
" >
<rd : R F xmns: o =" http //wwo e
f D l re : w. p narchi ve o /o /te s/" >
s. rg re rm
<rd : D scri p o rd : a o
f e ti n f b ut=" U I : R M D M >
R e (R F/X L)"
<o : d scri b s rd : re urce U I : 雑誌" />
re e e f so =" R
<d rm cre to
cte s: a r>
af e e 作者</f o f : nam>
<f o : nam>R M a e
</d rm cre r>
cte s: ato
<d rm md f i e >2 0 -0 -0 1: 3 : 0 Z cte s: md f i e >
cte s: o i d 0 9 2 1T0 0 0 </d rm o i d
</rd : D scri p o
f e ti n>
25. リソースマップのシリアライズ
R F/X Lの場合
D M
f e ti n f b ut=" U I : 雑誌" >
<rd : D scri p o rd : a o R
<o : i sD scri b d y rd : re urce U I : R M to )" />
re e eB f so =" R e (A m
<d ti tl e
c: >雑誌タイトル</d ti tl e
c: >
<o : ag re a s rd : re urce U I : 論文1" />
re g g te f so =" R
<o : ag re a s rd : re urce U I : 論文2 />
re g g te f so =" R "
</rd : D scri p o
f e ti n>
f e ti n f b ut=" U I : 論文1" >
<rd : D scri p o rd : a o R
<d rm cre r>
cte s: ato
<f o f : nam>執筆者</f o : na e
a e af m>
</d rm cre to
cte s: a r>
</rd : D scri p o
f e ti n>
</rd : R F>
f D
26. リソースマップのシリアライズ
A mntryの場合
to E
<?xm ve o 1. 0 e d ng U
l rsi n=" " nco i =" TF-8 ? " >
<entry>
<i d >tag ato -e
: m ntry-i d d
</i >
<l i nk re =" a te te typ =" te
l l rna " e xt/htm" hre =" U I : H L" />
l f R TM
<l i nk re =" se f " typ =" ap l i ca o
l l e p ti n/ato +xm"
m l
hre =" U I : R M to )" />
f R e (A m
<l i nk re =" http //wwo e rchi ve o /o /te s/d scri b s"
l : w. p na s. rg re rm e e
hre =" U I : 雑誌" />
f R
<so urce >
<a utho r>
e e 作者名</nam>
<nam>R M e
</autho r>
<i d>tag a m e d d d
: to -f e -i </i >
<up a d 0 9 2 1T0 3 : 0 Z
d te >2 0 -0 -0 1: 0 0 </up a d d te >
</so urce >
27. リソースマップのシリアライズ
A mntryの場合
to E
<p l i she >2 0 -0 1T0 3 : 0 Z ub i she >
ub d 0 9 1-0 1: 0 0 </p l d
<up a d 0 9 2 1T0 3 : 0 Z
d te >2 0 -0 -0 1: 0 0 </up a d d te >
<ti tl e>雑誌タイトル</ti tl e >
<l i nk hre =" U I : R M D M
f R e (R F/X L)"
re =" http //wwo e rchi ve o /o /te s/i sD scri b d y" />
l : w. p na s. rg re rm e eB
<ca g ry te =" 2 0 -0 1T0 3 : 0 Z
te o rm 0 9 1-0 1: 0 0 "
sche e http //wwo e rchi ve o /o /a m a d />
m=" : w. p na s. rg re to /cre te "
<l i nk re =" http //wwo e rchi ve o /o /te s/a g g s"
l : w. p na s. rg re rm g re ate
hre =" U I : 論文1" />
f R
<l i nk re =" http //wwo e rchi ve o /o /te s/a g g s"
l : w. p na s. rg re rm g re ate
hre =" U I : 論文2 />
f R "
<o a mtri p e
re to : l s>
f e ti n f b ut=" U I : 論文1" >
<rd : D scri p o rd : a o R
<d rm cre to
cte s: a r>
<f o : na e
af m>執筆者</f o f : nam>
a e
</d rm cre to
cte s: a r>
</rd : D scri p o
f e ti n>
</o ato : tri p e
re m l s>
</entry>
28. H とO E
TTP R
A g g ti o e 上での関
g re a nとそのリソースマップのWb
連付け
29. H とO E
TTP R
aggr e gat i onが集めるのはaggr e gat i onであ
りリソースマップではない
aggr e gat i onのURI からそのリソースマップ
URI を
取得できるようにする
3 3 R d re o
0 e i cti n
ハッシュU I R
30. H とO E
TTP R
リダイレクション
1. クライアントがa g g ti o
g re a nのU I を取得する
R
リクエストを行う
2 サーバーはクライアントが受け入れられる形
.
式別に、
a g g ti o
g re a nに対応する(X TM
)H Lページ
適切な形式のリソースマップ
のU I へのリダイレクションを返す
R
3 クライアントがリダイレクト先のリソースを
.
取得する
31. H とO E
TTP R
リダイレクション
サーバーがリダイレクションに対応できる必要が
ある
複数の形式でリソースマップを公開できる
32. H とO E
TTP R
ハッシュU I
R
g re a nのU I を U I : R M g g ti o とする
a g g ti o R R e #a re a n
例
UI :RM
R e
http //e ml e o /re
: xa p . rg m
UI :a g g o
R g re ati n
http //e ml e o /re #a g g ti o
: xa p . rg m g re a n
サーバーの実装が簡単
リソースマップが1種類の場合に便利
33. H とO E
TTP R
ハッシュU I
R
リソースマップを増やす場合の対応
可能ならリダイレクションの方法に移行する
g re a n専用のU I を決定する
a g g ti o R
1つ目のリソースマップで、U I : R M g re a o
R e #a g g ti nと新し
いa g g ti o
g re a nのU I が同じリソースを指す事を記述する
R
o :d scrib
re e e
URI:ReM URI:Re #a g g tio
M g re a n
o :d scrib
re e e
URI:ReM URI:集合体
o l:sa e
w m As
URI:Re #a g g tio
M g re a n
34. H とO E
TTP R
ハッシュU I
R
リソースマップを増やす場合の対応
リダイレクションが使えない場合
g re a nのU I はU I : R M g re a o
a g g ti o R R e #a g g ti nのままにする
U I : R M でも記述されている事を1つ目のリソースマッ
R e -2
プに記述する
o :d scrib
re e e
URI:ReM URI:Re #a g g tio
M g re a n
o :d scrib
re e e
URI:ReM URI:Re #a g g tio
M g re a n
o :d scrib
re e e
URI:Re -2
M o :isD scrib d
re e e By
35. O I -O E
A R
Oe A
p n rchi ve I ni ti a ve O j e R use a
s ti b ct e nd
Excha eng
e 上のリソースを集めたものをaggr e gat i on
Wb
と呼ばれるオブジェクトとして扱う
aggr e gat i onの情報をリソースマップ( Re M )
という形式で記述する
作成したリソースマップをaggr e gat i onと関
連付けて公開する
39. M での実装
D L-JP
<e ri nt>
p
<e ri nti d 12 </e ri nti d
p >12 4 p >
<d te
a stam>2 0 -10 7 15 4 : 3
p 0 8 -2 : 9 1</d te m>
a sta p
<l a o >2 0 -10 7 15 4 : 3
stmd 0 8 -2 : 9 1</l astmd
o>
<cre rs>
ato
<i te >
m
<na e
m>xxxx</na e
m>
</i te >
m
</cre to
a rs>
<ti tl e X X X </ti tl e
>X X X X >
<d te 0 5 a >
a >2 0 </d te
<p l i cati o o i d Mthe a ca Jo
ub n>H kka o a mti l urna </p l i ca o
l ub ti n>
<o f i ci al _url >http //hm. mth. sci . ho a . a j p 9 9 /</o f i c
f : j a kud i c. /9 9 9 f
i al _url >
<vo um>3 </vo um>
l e 4 l e
<m sc>
<i te >5 A 0 S 2 0 )</i te >
m 8 3 (MC 0 0 m
<i te >5 A
m 8 17(MC 0 0
S 2 0 )</i te >
m
</m sc>
</e ri nt>
p
40. M での実装
D L-JP
R yスクリプト(リソースマップ作成部分)
ub
cl a R so
ss e urce a < N md ra h: : N d
Mp aeG p oe
restri ct " o : d scri b s" =>[A g g ti o : a g g ti o
re e e g re a n, g re a n],
" d rm cre to =>P rso
cte s: a r" e n
restri ct " d rm cre te " =>Ti m, " d rm md f i e " =>Ti m
cte s: a d e cte s: o i d e
end
cl a A g g ti o < N md ra h: : N d
ss g re a n aeG p oe
restri ct " d ti tl e , " o : i sD scri b d y" ,
c: " re e eB
" d rm cre te " =>Ti m, " d rm md f i e " =>Ti m,
cte s: a d e cte s: o i d e
" d rm cre to =>P rso " rd : typ " =>Te ,
cte s: a r" e n, f e rm
" o : a g g te =>R so
re g re a s" e urce . . . . .
,
end
41. M での実装
D L-JP
R yスクリプト(リソースマップ作成部分)
ub
re =
m
O E : R so
R : e urce a . ne (" http //e ml e o /sa p e m) d
Mp w : xa p . rg ml /re " o
cre to d
a r o
na e " O E to g ne to
m R /A m e ra r"
end
cre te no
a d w
a g g ti o " http //e ml e o /sa p e g re a o
g re a n : xa p . rg ml /a g g ti n"
do
ti tl e " A cl e o C te o
rti s f a g ry-C d #{c}"
oe
cre to d
a r o
na e " A g g ti o g ne to
m g re a n e ra r"
end
cre te no
a d w
re urce e ch d | r|
so s. a o
a g g te r
g re a s
end
end
end
42. M での実装
D L-JP
A mntryの出力例
to E
<?xm ve o 1. 0 e d ng ut f -8 ?
l rsi n=' ' nco i =' ' >
<ato : e ry xmns: d e s=' ht t p // p . o / d te s/ ' xmns: rd =' http / /w w w. o /19 9 2 2 -rd -
m nt l ct rm : url rg c/ rm l f : w . 3 rg 9 /0 / 2 f
syntax-ns#' xmns: g d =' ht tp / / ww w. o / 2 0 / g d
l rd l : w . 3 rg 0 3 / ata-vi e #'w
xmns: a o =' ht t p / / w ww . o / 2 0 / A m g d : transf o ati o http / / ww o e
l t m : w . 3 rg 0 5 to ' rd l rm n=' : w. p narchi ve o / o / ato /
s. rg re m
ato -g d . xsl ' xmns: f o =' ht t p / / xmns. co / f o / 0 1/ '
m rd l l af : l m af .
xmns: o =' ht t p // w w o e
l re : w . p narchi ve o / o / te s/ ' xmns: d http // p . o /d e e e
s. rg re rm l c=' : url rg c/ l mnts/ 1. 1/'
xmns: rd s=' ht t p / / w ww . o / 2 0 / 0 rd -sche a#'
l f : w . 3 rg 0 0 1/ f m
xmns: o at o =' htt p / / ww o e
l re m : w . p narchi ve o / o /ato / ' >
s. rg re m
<! -- A mS e f i c; N O E S m cs -->
to p ci o R e anti
<a mi d a : e ml e o : sa p e ato : i d
to : >t g xa p . rg ml </ m >
<! -- R so
e urce Mp Mt a at a -->
a e d
<a ml i nk t yp =' ap l i cat i o at o +xm' re =' se f ' hre =' http // e p e o / saml e m / >
to : e p n/ m l l l f : xaml . rg p /re '
<a ml i nk re =' ht t p // w wo e rchi ve o / o / te s/ d scri b s'
to : l : w . p na s. rg re rm e e
hre =' ht t p // e p e o / saml e a g g o / >
f : xaml . rg p / g re ati n'
<a mso
to : urce >
<ato : a ho
m ut r><ato : na e R / A o g ne
m m>O E t m e rato ato : na e
r</ m m></ato : autho
m r>
<ato : up ate >2 0 -0 -14
m d d 0 9 2 T17: 5 5 </ a mup ate >
1: 1Z to : d d
<ato : ti t l e R /A o o A i cl e o C g ry-C d 5 </ ato : ti tl e
m >O E t m f rt s f ate o oe 8 m >
</ato : so
m urce >
<a mp l i she >2 0 -0 -14
to : ub d 0 9 2 T17: 5 5 </ ato : p l i she >
1: 1Z m ub d
<a mup ate >2 0 -0 -14
to : d d 0 9 2 T17: 5 5 </ a mup ate >
1: 1Z to : d d
<! -- A g g i o Mt ad a -->
g re at n e at
<a mti t l e rt i cl e o C g ry-C d 5 </ ato : ti tl e
to : >A s f ate o oe 8 m >
<a ma ho
to : ut r><ato : nam>A g g o g ne
m e g re ati n e rato ato : nam></ ato : autho
r</ m e m r>
<a mcat e o te =' ht t p // w wo e rchi ve o / o / te s/ A g g o
to : g ry rm : w . p na s. rg re rm g re ati n'
sche e ht t p / / ww o e
m=' : w. p narchi ve o / o / te s/ ' l ab l =' A g g o / >
s. rg re rm e g re ati n'
<a mcat e o sche e ht t p / / ww o e
to : g ry m=' : w. p narchi ve o / o / ato / cre d te =' 2 0 -0 -14
s. rg re m ate ' rm 0 9 2 T17: 5 5 ' / >
1: 1Z
<a mcat e o sche e ht t p / / ww o e
to : g ry m=' : w. p narchi ve o / o / ato / md f i e ' te =' 2 0 -0 -14
s. rg re m oi d rm 0 9 2 T17: 5 5 ' /
1: 1Z
43. D L-JP
M
文献情報から論文のメタデータを抽出
条件に合う論文を集めたa g g ti o
g re a nと、そのリ
ソースマップを作成
A mntry形式で出力
to E
X LTを使ってR F/X Lへの変換
S D M
未決の問題
公開用U IR
各リソースマップ
a g g ti o
g re a n