ウェブサービスとは WWWを介してデータの取得 解析などをサー バ側で行うサービス 人が直接使うことは意図されていない プログラム等を使って大量に処理できる(単純) 作業を意図している SOAP, REST

Similar documents
PowerPoint Presentation

この講義でやること PDBjのwebページの復習 webページのデータの元になっているデータ形 式の解説 上記の演習 2

PDB の 新 フォーマット 金城玲 日本蛋白質構造データバンク (PDBj) 大阪大学蛋白質研究所 1

平成17年度大学院 知識システム特論

Microsoft PowerPoint - PDBjing実習.ppt

WebAPI 及びデータフォーマット (DC-NDL) の概要 国立国会図書館電子情報部 電子情報サービス課 1

2

PDBj : : 1

アジェンダ オープンデータについて オープンガバメント セマンティック Web 技術 (RDF,SPARQL) RDF とは RDF の表現形式 : タートル,RDFa, マイクロデータ RDF グラフへの問い合わせ :SPARQL 利用環境 (SPARQL Timeliner,SparqlEPCU

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

Blue Asterisk template

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版  

6 (1) app.html.eex 28 lib/nano_planner_web/templates/layout/app.html.eex 27 <footer> Oiax Inc <%= this_year() %> Oiax Inc. 29 </footer>

NBDC-DBCLS-共同研究計画.key

Microsoft Word - 2IFTTT利用手順_ver1

Consuming a simple Web Service

スライド 1

国立国会図書館ダブリンコアメタデータ記述

PowerPoint プレゼンテーション

はじめに

TogoDBシステム概説書

<4D F736F F F696E74202D208A778F708FEE95F197AC92CA82F08EC08CBB82B782E98B5A8F E97708B5A8F70816A5F94D196EC8D758E742E >


ユーザ デバイス プロファイルの ファイル形式

Delphi/400を使用したWebサービスアプリケーション

PowerPoint Presentation

Microsoft Word - AT _A.doc

メタデータスキーマレジストリ MetaBridge の概要

Web SOAP Internet Web REST SOAP REST 3 REST SOAP 4

XPath式を用いたApplication Profileに基づくメタデータスキーマとインスタンスの関連付け

別添 2 SQL インジェクション ぜい弱性診断で最低限行うべき項目 1 ( ' ( 検索キー )''-- ( 検索キー ) and 'a'='a ( 検索キー ) and 1=1 は最低限 行うこと ) OS コマンドインジェクション 2 (../../../../../../../bin/sle

RDF講習会

intra-mart Accel Platform

2016-wi-protege-ex2-owl

ITdumpsFree Get free valid exam dumps and pass your exam test with confidence

eService

ProQuest PPT Styles

Webデザイン論

ふくおか IT Workouts 2015 Presentation Workout 日時 :2015 年 11 月 27 日 ( 金 ) 場所 : 福岡大学 新宮町でのおもてなしに 向けた ICT 活用法の検討 新宮発見隊 福岡工業大学槇俊孝, 髙橋和生, 河野和音佐藤夏姫, 島添真帆, 丸田彩加

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

Microsoft Word - PHP_SQLServer2012

WEBシステムのセキュリティ技術

独立行政法人産業技術総合研究所 PMID-Extractor ユーザ利用マニュアル バイオメディシナル情報研究センター 2009/03/09 第 1.0 版

メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right

_bodik.key

intra-mart Accel Platform — IM-BloomMaker プログラミングガイド   初版  

untitled

Twitterクライアントに学ぶASP.NETアプリ

PowerPoint Presentation


ゲートウェイのファイル形式

_02-5.ppt

PowerPoint Presentation

Oracle SOA Suite 11gコンポジットに対するSOASchedulerの構成

fiš„v3.dvi

Webプログラミング演習

ゲートウェイ ファイル形式

AJAXを使用した高い対話性を誇るポートレットの構築

NLC配布用.ppt

IBM 次世代クラウド・プラットフォーム コードネーム “BlueMix”ご紹介

Webプログラミング演習

ucR/XML: XML によるucR graph のシリアライズ

PowerPoint プレゼンテーション


WebOS aplat WebOS WebOS 3 XML Yahoo!Pipes Popfry UNIX grep awk XML GUI WebOS GUI GUI 4 CUI

untitled


ステップ 1:Cisco Spark にサインアップして試してみよう 1. Spark のホームページ ( で電子メールアドレスを入力し 指示に従って Spark アカウントを作成します 注 : 自身の電子メールアカウントにアクセスして Spar

New version (2.15.1) of Specview is now available Dismiss Windows Specview.bat set spv= Specview set jhome= JAVA (C:\Program Files\Java\jre<version>\

eラーニング資料 e ラーニングの制作目標 データベース編 41 ページデータベースの基本となる概要を以下に示す この内容のコースで eラーニングコンテンツを作成予定 データベース管理 コンピュータで行われる基本的なデータに対する処理は 次の 4 種類です 新しいデータを追加する 既存のデータを探索

データ連携ソリューションスイート 「ASTERIA WARP」  ご紹介資料

Oracle Database 12c

Si 知識情報処理

Microsoft PowerPoint - Tutorial_6.ppt

ウェブサイト内検索機能マニュアル

目次 1. はじめに 基本的事項

tkk0408nari

オントロジ入門

PowerPoint Presentation

"CAS を利用した Single Sign On 環境の構築"

要旨 : Windows GUI と外部ソフトウェアを SAS と連携させ 環境に依存しない使いやすい Windows GUI メニューを利用することにより 複雑なレイアウトの EXCEL シートのデータを SAS データセットに変換し SAS の分析機能を利用するまでの方法を紹介する キーワード

PowerPoint プレゼンテーション

ソフトウェア基礎 Ⅰ Report#2 提出日 : 2009 年 8 月 11 日 所属 : 工学部情報工学科 学籍番号 : K 氏名 : 當銘孔太

Web2.0 LL Framework Ruby on Rails / TurboGears / CakePHP Atlas Web2.0 XML Selenium / JMeter 3 Ajax Web 2.0 UI Ruby on Rails Web 2. ASP.NET AJAX,

slide5.pptx

Oracle XML DB によるスケーラビリティおよびパフォーマンス検証 - MML v.3.0

Microsoft PowerPoint - Lecture_3

OSSTechドキュメント

SPARQL とは SPARQL(" スパークル " と発音 [1]) は RDF クエリ言語の一種である その名称は再帰的頭字語になっており SPARQL Protocol and RDF Query Language の略 RDF クエリ言語とは Resource Description Fra

Microsoft Word - tutorial3-dbreverse.docx

第 1 章 条件分岐 この章では 条件に応じて処理を分岐する方法について説明します 1. CASE 式で複雑な条件分岐を実現 2. 関数を使用した条件分岐 3. MERGE 文による条件に応じた DML の実行

morita.PDF

ProQuest PPT Styles

Cisco CallManager で SQL クエリーを使用したコール詳細レコードの検索

Specview Specview Specview STSCI(Space Telescope SCience Institute) VO Specview Web page htt

Microsoft PowerPoint - 理研豊田_JST統合DB資料

2 Java 35 Java Java HTML/CSS/JavaScript Java Java JSP MySQL Java 9:00 17:30 12:00 13: 項目 日数 時間 習得目標スキル Java 2 15 Web Java Java J

Webサービス本格活用のための設計ポイント

アプリケーション インスペクションの特別なアクション(インスペクション ポリシー マップ)

第12回 モナドパーサ

Transcription:

PDBj のウェブサービス 金城 玲 大阪大学蛋白質研究所 日本蛋白質構造データバンク PDBj

ウェブサービスとは WWWを介してデータの取得 解析などをサー バ側で行うサービス 人が直接使うことは意図されていない プログラム等を使って大量に処理できる(単純) 作業を意図している SOAP, REST

PDBjの提供するウェブサービス 大きく分けて2種類 PDBデータの取得 検索用のRESTfulウェブサービ ス PDBデータを項目ごとに取得する Xpath サービス PDBjの関係データベースをSQLを使って検索する SQL サービス PDBデータをRDF形式に変換したものをURLを指定 して取得するサービス PDBのエントリ 化合物(chem_comp)のエントリ

データの基本 PDBML

PDBMLを見てみる

使い方: Xpath REST API http://service.pdbj.org/mine/xpath にアクセスすると簡単な説明が表示されます 凡例 HTTP GETで http://service.pdbj.org/mine/xpath/{pdbid}/{xpath} 実例 http://service.pdbj.org/mine/xpath/1gof//entity[@id='1'] 結果 <PDBx:entity id="1"> <PDBx:formula_weight>68579.250</PDBx:formula_weight> <PDBx:pdbx_description>GALACTOSE OXIDASE</PDBx:pdbx_description> <PDBx:pdbx_ec>1.1.3.9</PDBx:pdbx_ec> <PDBx:pdbx_number_of_molecules>1</PDBx:pdbx_number_of_molecules> <PDBx:src_method>man</PDBx:src_method> <PDBx:type>polymer</PDBx:type> </PDBx:entity>

Create XPath インターフェース

使い方 SQL REST API http://service.pdbj.org/mine/sql にアクセスすると簡単な説明が表示されます パラメータ q: SQL文 format: xml tsv csv plain 詳しくは PDBj mine REST API でウェブを検 索する

SQL REST API の使用例(Perl) #!/usr/bin/env perl use LWP::UserAgent; use HTTP::Request::Common; $ua = new LWP::UserAgent; # set proxy server #$ua->proxy('http', '<proxy_server>:<proxy_port>'); my $url = 'http://service.pdbj.org/mine/sql'; my $q = <<EOF SELECT s.pdbid, p.entity_id, p.pdbx_seq_one_letter_code_can FROM brief_summary s JOIN entity_poly p ON p.docid = s.docid WHERE s.pdbid like '1m%' EOF ; # make request my $req = POST($url, Content_Type => 'form-data', Content => [ 'format' => 'csv', 'q' => "$q"]); # post request my $res = $ua->request($req); # show response. if ($res->is_success) { printf "success!\n"; print $res->content; } else { print "failed!\n"; } SQL文 HTTP POSTで問い合わせ

汎用スクリプト(Python) #!/usr/bin/env python # # # # Save this program in the file named "mine_sql.py" (or whatever). Use it like./mine_sql.py tsv test.sql where "test.sql" is an SQL script. # import modules import sys import urllib # set proxy if you need #proxy_dict = {'http': 'http://proxy.example.com:3128'} proxy_dict = None # You don't need to edit below. # set parameters base_url = 'http://service.pdbj.org/mine/sql' output_format = sys.argv[1] sql_query = open(sys.argv[2], 'r') post_parameter = urllib.urlencode({'format':output_format, 'q':sql_query.read()}) # generate access query result = urllib.urlopen(base_url, post_parameter, proxies=proxy_dict) # show result print result.read()

従来のウェブサービスの問題点 各サービスに固有のAPI パラメータ 入力データ 各サービスに固有のフォーマット サービスごとに呼び出し関数やパーサを書き直す 必要がある いろいろなサイトのサービスを組み合わせて使う のはとても不便

セマンティックウェブサービス Linked Data or Web of Data 賢いアプリではなく賢いデータを作る HTTP GET でデータを取得 リンクをたどってデータを探索 フォーマットはすべてRDF形式 RDF=Resource Description Format (W3Cで定められた標準フォーマット) 全てのデータは 主語 述語 目的語 の三つ組とし て表現される

セマンティックウェブの構成要素 RDFで記述されたデータ OWLで記述されたオントロジー 実際にデータが取得可能なURL (SPARQL endpoint...可能なら)

RDF入門 http://pdbj.org/rdf/1gof PDBo:datablockName 1GOF-noatom PDBo:has_entityCategory http://pdbj.org/rdf/1gof/entitycategory PDBo:of_datablock GALACTOSE OXIDASE PDBo:has_entity PDBo:entity.pdbx_description http://pdbj.org/rdf/1gof/entity/1 PDBo:link_to_enzyme http://purl.uniprot.org/enzyme/1.1.3.9 PDBo: = http://pdbj.org/schema/pdbx-v40.owl#

PDB/RDF http://pdbj.org/rdf/1gof 指定したURLを主語とする三つ組み のリストが表示される 主語(Subject) 述語(Predicate) 目的語(Object)

PDB/RDFを眺めてみる PDB/RDF

http://pdbj.org/rdf/1gof

http://pdbj.org/rdf/1gof/entitycategory

http://pdbj.org/rdf/1gof/entity/1

PDB/RDFページのソースは RDF/XML http://pdbj.org/rdf/1gof/entity/1

PDBエントリのリンク構造 PDBr:1GOF PDBr: = http://pdbj.org/rdf/

PDBエントリのリンク構造 一部

PDBML内のリンクを辿る http://pdbj.org/rdf/1gof/entity_poly/1 http://pdbj.org/rdf/1gof/entity/1 entity_poly

PDB/RDFのOWLオントロジー http://pdbj.org/schema/pdbx-v40.owl リソース(主語または目的語) OWL クラス http://pdbj.org/rdf/{pdbid} PDBo:datablock http://pdbj.org/rdf/{pdbid}/entitycategory PDBo:entityCategory http://pdbj.org/rdf/{pdbid}/entity PDBo:entity OWL プロパティ(述語) 主語のクラス: 定義域 目的語のクラス: 値域 PDBo:datablockName PDBo:datablock (文字列) PDBo:has_entityCategory PDBo:datablock PDBo:entityCategory PDBo:has_entity PDBo:entityCategory PDBo:entity PDBo:entity.pdbx_description PDBo:entity (文字列) PDBo:link_to_enzyme PDBo:categoryElement (リソース)

ユースケース 特定のPDBエントリの特定のペプチド鎖の UniProtキーワードを取得する Get http://pdbj.org/rdf/1gof/struct_refcategory http://pdbj.org/rdf/1gof/struct_ref/1 http://pdbj.org/rdf/1gof/entity/1 http://purl.uniprot.org/uniprot/q01745 http://purl.uniprot.org/keywords/2, etc. http://pdbj.org/rdf/1gof/struct_asym/a リンク構造をある程度把握した上で 述語を介 して必要な情報をフィルターする

現状での制約 参照可能なURLでRDFデータを提供しているサ イトが限られている UniProt PDBj KEGG in progress (?) トリプルの数が膨大 数億 なの で SPARQLクエリ(RDBに対するSQLみたい なもの が まだ まともに使えない 推論を含む複雑な検索はまだ現実的ではない(?)

まとめ RESTful ウェブサービス Xpath と SQL 独自API/フォーマット セマンティックウェブ Linked Data あるいは Web of Data の側面のみサ ポート RDF/XMLで提供されたPDBMLデータ データそのものがリンク 参照可能