Object Reuse and Exchange と その実装例について

Slides:



Advertisements
Similar presentations
Wiki と Web サービス API. Wiki と Web サービス API ( 1 )  Web サービス API の流行 Blog が投稿用の Web サービス API を提供 Amazon 、 Google 、 Yahoo などが各種情報 取得のための Web サービス API を提供.
Advertisements

Integrated Personal Page C05823 森本万里子 C05829 西山礼恵 C05899 高木華子.
著作権管理のための 関係の地図の記述について 200702887 市川 俊介. 研究背景 コンピューターやネットワーク機器の開発に より、文書や図面をネットワーク上で公開し たりすることが多くなる。 どんな著作物があるのかを知らずに公開し、 著作権を侵害したとされる例もあり、そのよ うな問題をどうすれば防ぐことができるのか.
XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
オープン&ビッグデータ活用・地方創生推進機構 事務局 オープン&ビッグデータ活用・地方創生推進機構 評価版ツールの状況報告 平成26年度第3回 技術委員会 資料3-1.
RSS,Atom の動向 理工学部 情報学科 3 年 片山友輝. 発表内容 ・ RSS,Atom おさらい ・なぜ Atom ができたか? ・ Atom の特徴 ・ Atom の動向 ・ Atom フィードの記述方法 ・ Atom 対応ツール ・参考文献・資料.
RSS & Atom API 理工学部 情報学科 3 年 片山友輝. 発表内容 ・ RSS とは? ・ Atom とは? ・ RSS 対応ツール ・ RSS の研究室での利用価値 ・今後の課題 ・参考文献・資料.
WebサービスII (第12回)‏ 2007年12月19日 植田龍男.
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
第9回 2007年6月22日 応用Java (Java/XML).
JPAを利用した RESTful Webサービスの開発
Endnoteの使い方~AMS雑誌用~ 稲津 將 北海道大学 大学院理学研究院.
2006年11月15日 植田龍男 Webサービス II (第8回) 年11月15日 植田龍男.
Visual Studio 2005による XML Web サービス入門
実空間ネットワーク ネットワークプログラミング向け資料
情報家電オントロジー 公開ガイドライン案について
名古屋大学大学院人間情報学研究科 物質生命情報学専攻 情報処理論講座 原 崇
オープンデータ流通推進コンソーシアム 情報流通連携基盤外部仕様書の 改訂案
オペレーティングシステムⅡ 第5回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/11/6.
Mavenによる プロジェクト管理 近畿大学理工学部 情報学科3年  小野実.
早稲田大学大学院理工学研究科 情報科学専攻修士2年 後藤滋樹研究室 坂本義裕
Lightweight Language Weekend ls-lRシェル
Myoungkyu Song and Eli Tilevich 発表者: 石尾 隆(大阪大学)
2.JAIRO Cloudの手続きと最新機能 Version 1.1
JavaServlet&JSP入門 01K0018 中村太一.
NIIメタデータデータベースの構想 国立情報学研究所 開発・事業部 コンテンツ課 米 澤 誠
資料4-3 平成26年度第3回 技術委員会 外部仕様書・ツール群の状況報告
平成19年11月8日 図書系職員のための アプリケーション開発講習会
Piggy Bank: Experience the Semantic Web Inside Your Web Browser
国立情報学研究所 メタデータ・データベース 共同構築事業について
空間メタデータ整備 における課題 園山 実 三菱総合研究所.
WebサービスII (第8回) 2007年11月14日 植田龍男.
XMLゼミ 5.1 XML文書と表示 5.2 CSS 5.3 XMLとXSL 高橋 辰裕.
第8章 Web技術とセキュリティ   岡本 好未.
情報コミュニケーション入門b 第10回 Web入門(1)
情報コミュニケーション入門b 第10回 Web入門(1)
第10回 2007年6月29日 応用Java (Java/XML).
Webサービス II(第3回) 2007年10月10日.
XMLゼミ 5.4 XSLT (P118~P134)          兒玉 光太郎.
資料1-6 平成26年度 第1回技術委員会資料 支援ツール群整備方針
Webサービスによる 加工工程決定支援システム
JVOの研究開発 (メタデータ交換の国際対応)
10-1 SAXの概要 10-2 Saxプログラミングの基礎 10-3 saxのプログラム例
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
Internet広域分散協調サーチロボット の研究開発
XMLゼミ 1.3 XML文書の表示 1.4 XMLの役割 1.5 XMLとプログラミング M2 正木 裕一.
端末およびサービス透過的な 情報共有支援システムの構築
端末およびサービス透過的な 情報閲覧支援システムの構築
7-3. 移行データ登録簡易マニュアル Version 1.0
情報学類 2年 吉田 光男 ブラウザで使う RSS Reader の実装 情報学類 2年 吉田 光男
外部仕様書・オープンデータガイド精査方針
XML Schema (1) ソフトウェア特論 第3回 /
JAIRO Cloudの手続きと最新機能 Version 1.0
セマンティックWebによる 生産管理情報共有/支援システムの開発
~let's take fun when you can do it~
応用Java(Java/XML) 第7回 2006年6月16日 植田龍男.
Spatial Linker - 空間コンテンツ融合の研究 -
情報共有による Z39.50データベース選択支援環境
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
セマンティックWebの 生産管理システムへの適用
Microsoft SharePoint Online の Web サイトを カスタマイズする方法
アルゴリズムとデータ構造1 2009年6月15日
JAIRO Cloudの手続きと最新機能 Version 1.0
オントロジーを利用した Webサービスの実行支援に関する研究
The Personal Publication Reader: Illustrating Web Data Extraction, Personalization and Reasoning for the Semantic Web Robert Baumgartner*, Nicola Henze+,
エイリアス関係を考慮した Javaプログラム用静的スライシングツール
セマンティックWebの 生産管理システムへの適用
アルゴリズムとデータ構造 2010年6月17日
オブジェクト指向言語における セキュリティ解析アルゴリズムの提案と実現
Presentation transcript:

Object Reuse and Exchange と その実装例について 黒田 拓(北海道大学大学院理学院数学専攻) 行木 孝夫(北海道大学大学院理学研究院数学部門)

発表の概要 OAI-OREについて リソースのaggregation リソースマップによるaggregationの記述 HTTPでの再利用と交換 DML-JPでの実装例

OAI-ORE Open Archives Initiative Object Reuse and Exchange Web上のリソースを集めたものをaggregationと呼 ばれるオブジェクトとして扱う aggregationの情報をリソースマップ(ReM)という 形式で記述する 作成したリソースマップをaggregationと関連付 けて公開する

aggregation(のページ)の例 arXiv.orgのある論文

(雑誌)Journal of the Mathematical Society of Japan aggregation(のページ)の例 (雑誌)Journal of the Mathematical Society of Japan

aggregation(のページ)の例 (雑誌のリソース) Vol.61, No.1

雑誌 : Hokkaido Mathematical Journal aggregation(のページ)の例 雑誌 : Hokkaido Mathematical Journal

aggregation(のページ)の例 Volume: Vol.37(1)

aggregation(のページ)の例 Vol.37のある論文

リソースのaggregation

OREの狙い 既存の(人間向けの)ページ 見やすさ優先 / サイト毎のスタイル Aggregationとそれを表すページの混同 雑誌のURI = 雑誌についてのWebページのURI リソースマップにaggregationの情報を記述 セマンティックに記述 aggregationとその表現(リソースマップ)を厳密に 区別

このようなページのセマンティック版を作りたい OREの狙い このようなページのセマンティック版を作りたい

リソースマップ Aggregationの情報を記述 Aggregateされたリソースの一覧 各種メタデータ 構造はRDFグラフ

リソースマップ RDFグラフでaggregationの情報を記述

RDFグラフでaggregationの情報を記述 リソースマップ RDFグラフでaggregationの情報を記述 (簡単のためURIを略記)

RDFグラフでaggregationの情報を記述 リソースマップ RDFグラフでaggregationの情報を記述 (全体像) 最小限必要な 要素

aggregationの中でのメタデータ リソースマップ aggregationの中でのメタデータ aggregationの中でのリソース間の関係は そのaggregationの中でだけ意味を持つ

リソースマップ Proxy aggregationの中で意味を持つメタデータを Proxyを通して記述できる

リソースマップ Proxyを使った外部からの参照 あるaggregationに属する事に特別な意味がある

リソースマップ Proxyを使った外部からの参照 別のaggregationに由来することを主張

リソースマップ ProxyのURI 外部からリソース目当てにアクセスされる アクセスすることでリソースへのリダイレクションが行 う レスポンスヘッダでaggregationのURIも 例 : OREプロキシURIリゾルバ http://oreproxy.org/r?what=URI:論文1&where=URI:雑誌-A HTTP/1.x 303 See Other Link: <URI:雑誌-A>; rel="aggregation" Location: URI:論文1

リソースマップのシリアライズ リソースマップ(RDFグラフ)を公開用に出力 RDF/XML Atom Entry RDFa (XHTMLへの埋め込み)

リソースマップのシリアライズ サンプル

リソースマップのシリアライズ RDF/XMLの場合 <?xml version="1.0" encoding="UTF-8" ?> <rdf:RDF xmlns:ore="http://www.openarchives.org/ore/terms/"> <rdf:Description rdf:about="URI:ReM(RDF/XML)"> <ore:describes rdf:resource="URI:雑誌" /> <dcterms:creator> <foaf:name>ReM作者</foaf:name> </dcterms:creator> <dcterms:modified>2009-02-01T01:30:00Z</dcterms:modified> </rdf:Description>

リソースマップのシリアライズ <rdf:Description rdf:about="URI:雑誌"> RDF/XMLの場合 <rdf:Description rdf:about="URI:雑誌"> <ore:isDescribedBy rdf:resource="URI:ReM(Atom)" /> <dc:title>雑誌タイトル</dc:title> <ore:aggregates rdf:resource="URI:論文1"/> <ore:aggregates rdf:resource="URI:論文2"/> </rdf:Description> <rdf:Description rdf:about="URI:論文1"> <dcterms:creator> <foaf:name>執筆者</foaf:name> </dcterms:creator> </rdf:RDF>

リソースマップのシリアライズ AtomEntryの場合 <?xml version="1.0" encoding="UTF-8" ?> <entry> <id>tag:atom-entry-id</id> <link rel="alternate" type="text/html" href="URI:HTML"/> <link rel="self" type="application/atom+xml" href="URI:ReM(Atom)"/> <link rel="http://www.openarchives.org/ore/terms/describes" href="URI:雑誌"/> <source> <author> <name>ReM作者名</name> </author> <id>tag:atom-feed-id</id> <updated>2009-02-01T01:30:00Z</updated> </source>

リソースマップのシリアライズ AtomEntryの場合 <published>2009-01-01T01:30:00Z</published> <updated>2009-02-01T01:30:00Z</updated> <title>雑誌タイトル</title> <link href="URI:ReM(RDF/XML)" rel="http://www.openarchives.org/ore/terms/isDescribedBy"/> <category term="2009-01-01T01:30:00Z" scheme="http://www.openarchives.org/ore/atom/created"/> <link rel="http://www.openarchives.org/ore/terms/aggregates" href="URI:論文1" /> href="URI:論文2" /> <oreatom:triples> <rdf:Description rdf:about="URI:論文1"> <dcterms:creator> <foaf:name>執筆者</foaf:name> </dcterms:creator> </rdf:Description> </oreatom:triples> </entry>

HTTPとORE AggregationとそのリソースマップのWeb上での関 連付け

HTTPとORE aggregationが集めるのはaggregationでありリソー スマップではない aggregationのURIからそのリソースマップURIを 取得できるようにする 303 Redirection ハッシュURI

HTTPとORE リダイレクション 1. クライアントがaggregationのURIを取得するリ クエストを行う 2. サーバーはクライアントが受け入れられる形式 別に、 aggregationに対応する(X)HTMLページ 適切な形式のリソースマップ のURIへのリダイレクションを返す 3. クライアントがリダイレクト先のリソースを取 得する

HTTPとORE リダイレクション サーバーがリダイレクションに対応できる必要が ある 複数の形式でリソースマップを公開できる

HTTPとORE ハッシュURI aggregationのURIを URI:ReM#agregation とする 例 URI:ReM http://example.org/rem URI:aggregation http://example.org/rem#aggregation サーバーの実装が簡単 リソースマップが1種類の場合に便利

HTTPとORE ハッシュURI リソースマップを増やす場合の対応 可能ならリダイレクションの方法に移行する aggregation専用のURIを決定する 1つ目のリソースマップで、URI:ReM#aggregation と新しいaggregationのURIが同じリソースを指す 事を記述する

HTTPとORE ハッシュURI リソースマップを増やす場合の対応 リダイレクションが使えない場合 aggregationのURIはURI:ReM#aggregationのままに する URI:ReM-2でも記述されている事を1つ目のリソ ースマップに記述する

OAI-ORE Open Archives Initiative Object Reuse and Exchange Web上のリソースを集めたものをaggregationと呼 ばれるオブジェクトとして扱う aggregationの情報をリソースマップ(ReM)という 形式で記述する 作成したリソースマップをaggregationと関連付 けて公開する

DML-JPでの実装

DML-JPでの実装 DML-JPが機関リポジト リから文献情報を収集 文献毎にメタデータの グラフを作成 条件に合う文献を集め てaggregationとし、リ ソースマップを作成 雑誌 Vol毎 分野毎

分野毎にまとめ直す

DML-JPでの実装 <eprint> <eprintid>12124</eprintid> <datestamp>2008-10-27 15:49:31</datestamp> <lastmod>2008-10-27 15:49:31</lastmod> <creators> <item> <name>xxxx</name> </item> </creators> <title>XXXXXXX</title> <date>2005</date> <publication>Hokkaido Mathematical Journal</publication> <official_url>http://hmj.math.sci.hokudai.ac.jp/99999/</official_url> <volume>34</volume> <msc> <item>58A30(MSC2000)</item> <item>58A17(MSC2000)</item> </msc> </eprint>

DML-JPでの実装 class ResourceMap < NamedGraph::Node Rubyスクリプト(リソースマップ作成部分) class ResourceMap < NamedGraph::Node restrict "ore:describes"=>[Aggregation, :aggregation], "dcterms:creator"=>Person restrict "dcterms:created"=>Time, "dcterms:modified"=>Time end class Aggregation < NamedGraph::Node restrict "dc:title", "ore:isDescribedBy", "dcterms:created"=>Time, "dcterms:modified"=>Time, "dcterms:creator"=>Person, "rdf:type"=>Term, "ore:aggregates"=>Resource, .....

DML-JPでの実装 Rubyスクリプト(リソースマップ作成部分) rem = ORE::ResourceMap.new("http://example.org/sample/rem") do creator do name "ORE/Atom generator" end created now aggregation "http://example.org/sample/aggregation" do title "Articles of Category-Code #{c}" name "Aggregation generator" resources.each do |r| aggregates r

DML-JPでの実装 AtomEntryの出力例 <?xml version='1.0' encoding='utf-8'?> <atom:entry xmlns:dcterms='http://purl.org/dc/terms/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:grddl='http://www.w3.org/2003/g/data-view#' xmlns:atom='http://www.w3.org/2005/Atom' grddl:transformation='http://www.openarchives.org/ore/atom/atom-grddl.xsl' xmlns:foaf='http://xmlns.com/foaf/0.1/' xmlns:ore='http://www.openarchives.org/ore/terms/' xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:rdfs='http://www.w3.org/2000/01/rdf-schema#' xmlns:oreatom='http://www.openarchives.org/ore/atom/'> <!-- Atom Specific; No ORE Semantics --> <atom:id>tag:example.org:sample</atom:id> <!-- Resource Map Metadata --> <atom:link type='application/atom+xml' rel='self' href='http://example.org/sample/rem' /> <atom:link rel='http://www.openarchives.org/ore/terms/describes' href='http://example.org/sample/aggregation' /> <atom:source> <atom:author><atom:name>ORE/Atom generator</atom:name></atom:author> <atom:updated>2009-02-14T17:51:51Z</atom:updated> <atom:title>ORE/Atom of Articles of Category-Code 58</atom:title> </atom:source> <atom:published>2009-02-14T17:51:51Z</atom:published> <!-- Aggregation Metadata --> <atom:title>Articles of Category-Code 58</atom:title> <atom:author><atom:name>Aggregation generator</atom:name></atom:author> <atom:category term='http://www.openarchives.org/ore/terms/Aggregation' scheme='http://www.openarchives.org/ore/terms/' label='Aggregation' /> <atom:category scheme='http://www.openarchives.org/ore/atom/created' term='2009-02-14T17:51:51Z' /> <atom:category scheme='http://www.openarchives.org/ore/atom/modified' term='2009-02-14T17:51:51Z' /> <!-- Aggregated Resources --> <atom:link rel='http://www.openarchives.org/ore/terms/aggregates' href='http://hmj.math.sci.hokudai.ac.jp/99999/' title='XXXXXXX' /> <!-- Additional properties pertaining to Aggregated Resources and Aggregation --> <oreatom:triples> <rdf:Description rdf:about='info:eu-repo/semantics/humanStartPage'> <rdfs:label>humanStartPage</rdfs:label> <rdfs:isDefinedBy rdf:resource='info:eu-repo/semantics/' /> </rdf:Description> <!-- Proxies for aggregated resource --> <rdf:Description rdf:about='http://oreproxy.org/r?what=http://hmj.math.sci.hokudai.ac.jp/99999/&where=http://example.org/sample/aggreg ation'> <ore:proxyFor rdf:resource='http://hmj.math.sci.hokudai.ac.jp/99999/' /> <ore:proxyIn rdf:resource='http://example.org/sample/aggregation' /> </oreatom:triples> </atom:entry>

DML-JP 文献情報から論文のメタデータを抽出 条件に合う論文を集めたaggregationと、そのリ ソースマップを作成 AtomEntry形式で出力 XSLTを使ってRDF/XMLへの変換 未決の問題 公開用URI 各リソースマップ aggregation