TogoWS, TogoDB の開発

提供:TogoWiki

2010年10月20日 (水) 06:44時点におけるKtym (トーク | 投稿記録)による版
移動: 案内, 検索

目次

TogoWS, TogoDB の開発

TogoWS

DDBJ, PDBj のキーワード検索

http//togows.dbcls.jp/search で ddbj, pdbj に対応できていないのは、 オリジナルサイトでキーワード検索用の API がどれかよくわかっていなかったから。

PDBj のキーワード検索

SQL を POST すると ID が返るサービスがある(金城)ということなので、これを利用する。

たとえば、"alcohol dehydrogenase" というキーワードで検索するには以下のSQLを投げます。

 SELECT pdbid FROM brief_summary where plainto_tsquery('alcohol dehydrogenase') @@ tsv

REST API (SQL Search) はこちらを参照:http://www.pdbj.org/doc/help.cgi?PDBj%20Mine%3aREST%20API

DDBJ のキーワード検索

該当 API があるかどうか確認する。

糖鎖対応

本家 KEGG GLYCAN, AIST JCGGDB に頼むことは難しいため、TogoWS 経由で GLYCAN と JCGGDB の糖鎖検索に Informatics: Cross-Database Search (WGGDS) / Protocol に基づいて対応したい。

要求仕様:WGGDSのクエリは、糖鎖構造 (WGGDS GLYDE-II XML)、組成 (WGGDS XML)、重さ (WGDS XML) で、 それぞれ prefix + /substructure, /composition, /listOperation にポストされる。 結果は ID 一覧 (XML) か GLYDE-II XML の構造。

XML をポスト --(*1)--> TogoWS --(*2)--> KEGG --(*3)--> TogoWS --(*4) --> ユーザ

(*1): XML が POST されることはこれまで想定外なので /search にマップして良いかどうか要検討、また (*4) で返されるデータも WDGGS の XML フォーマットなので、TogoWS の /search/db/query.format の .format にそぐわない。

(*2): コンバータが必要。使用するメソッドの仕様も確定。WGGDS と完全対応する?

(*3): コンバータが必要。

(*4): フォーマット指定をどうするか。ID のリストはこれまでの TogoWS では ID だけを羅列した text だったが、WGGDSの要求仕様は XML

GLYDE-II と KCF の変換

GLYDE-II → KCF は木下コンバータ (Perl スクリプト) を利用。

KCF → GLYDE-II は難しいが、BioMoby には変換サービスがある。 BioMoby を bl02 (togows.dbcls.jp) で動かすにはインストールやメンテのオーバーヘッドが大きくなる。 G-language の API でできないか?

BioMoby の調査

G-language は BioMoby を使いやすくはしてくれているが、BioMoby のサービスを REST API にマップしてくれていたりするわけではない?

動かすには BioMoby と G-language の両方をインストールする必要がありそう。 → BioMoby のクライアントライブラリは荒川さんの BH2008 の成果であるモジュール(名前は?)を使うと比較的容易にインストール可能。

KEGG

使用する KEGG API は search_glycans_by_composition, search_glycans_by_mass, search_glycans_by_kcam の3つ (他の関連APIは convert_mol_to_kcf, search_glycans_by_nameなど)。

JCGGDB

鹿肉

NCBI, EBI, DDBJ, PDBj のサービス全対応を確認

エントリ取得

http://togows.dbcls.jp/entry/ の対応データベース

ncbi-nuccore	nuccore
ncbi-nucest	nucest
ncbi-nucgss	nucgss
ncbi-nucleotide	nucleotide
ncbi-protein	protein
ncbi-gene	gene
ncbi-omim	omim
ncbi-homologene	homologene
ncbi-snp	snp
ncbi-mesh	mesh
ncbi-pubmed	pubmed
ebi-embl	embl
ebi-uniprot	uniprot
ebi-uniparc	uniparc
ebi-uniref100	uniref100
ebi-uniref90	uniref90
ebi-uniref50	uniref50
ddbj-ddbj	ddbj
ddbj-dad	dad
pdbj-pdb	pdb
kegg-compound	compound
kegg-drug	drug
kegg-enzyme	enzyme
kegg-genes	genes
kegg-glycan	glycan
kegg-orthology	orthology
kegg-reaction	reaction
kegg-module	module
kegg-pathway	pathway

こらについて、http://togows.dbcls.jp/site/en/rest.html

  • 実例があるかどうか
  • 各データベースでフィールド対応がどれくらいできているか

を調査し、不十分な部分はコーディングし、rest.html に追記する。

また、rest.html が長くなりすぎているのでプロバイダ毎にページを分けて整理する。

エントリ検索

http://togows.dbcls.jp/search/ の対応データベース

ncbi-pubmed	pubmed
ncbi-books
ncbi-cancerchromosomes
ncbi-cdd
ncbi-domains
ncbi-gap
ncbi-gds
ncbi-gene	gene
ncbi-genome
ncbi-genomeprj
ncbi-gensat
ncbi-geo
ncbi-homologene	homologene
ncbi-journals
ncbi-mesh	mesh
ncbi-ncbisearch
ncbi-nlmcatalog
ncbi-nuccore	nuccore
ncbi-nucest	nucest
ncbi-nucgss	nucgss
ncbi-nucleotide	nucleotide
ncbi-omia
ncbi-omim	omim
ncbi-pcassay
ncbi-pccompound
ncbi-pcsubstance
ncbi-pmc
ncbi-popset
ncbi-probe
ncbi-protein	protein
ncbi-proteinclusters
ncbi-snp	snp
ncbi-structure
ncbi-taxonomy
ncbi-toolkit
ncbi-unigene
ncbi-unists
ebi-embl	embl
ebi-uniprot	uniprot
ebi-2can
ebi-arrayexpress-experiments
ebi-arrayexpress-genes
ebi-arrayexpress-repository
ebi-astd
ebi-biomodels
ebi-chebi
ebi-ebiweb_staff
ebi-emblcds
ebi-embldeleted
ebi-emblnew_ann_con
ebi-emblnew_con
ebi-emblnew_standard
ebi-emblnew_wgs
ebi-emblrelease_ann_con
ebi-emblrelease_con
ebi-emblrelease_standard
ebi-emblrelease_wgs
ebi-ensembl
ebi-go
ebi-groups
ebi-intact-experiments
ebi-intact-interactions
ebi-intact-interactors
ebi-integr8
ebi-intenz
ebi-interpro
ebi-mainweb
ebi-medline
ebi-msdchem
ebi-msdpdb
ebi-patentdb
ebi-pride
ebi-reactome
ebi-resid
ebi-sbo
ebi-taxonomy
ebi-uniparc	uniparc
ebi-uniref100	uniref100
ebi-uniref50	uniref50
ebi-uniref90	uniref90
kegg-compound	compound
kegg-drug	drug
kegg-enzyme	enzyme
kegg-genes	genes
kegg-glycan	glycan
kegg-orthology	orthology
kegg-reaction	reaction
kegg-module	module
kegg-pathway	pathway

これらについて、例を http://togows.dbcls.jp/site/en/rest.html に掲載する。

DDBJ, PDBj については search 対応してから例を載せる。

ステータス確認

http://togows.dbcls.jp/status で監視している DDBJ, PDBj, KEGG の SOAP サービスに加え、 上記の entry/search サービスが正常に稼働しているかどうかを確認する仕組みを作る。

たとえば http://togows.dbcls.jp/entry/ncbi-gene/338 は現時点で

1: id: 339 Error occurred: NCBI C++ Exception:
    Error:        HTML(CHTMLException::eTableCellUse)
"/pubmed_gen/rbuild/version/20100915/entrez/c++/src/html/html.cpp", line 1272:
ncbi::CHTML_table_Cache::GetCellNode() --- invalid use of big table cell

のようなエラーが NCBI 側で発生し、そのまま表示されていたが、現状ではこれに気付けない。

JSONの確認

現在 TogoWS では Ruby の to_json で出来たオブジェクトを JSON フォーマットとして返しているが、 クオートやエスケープを含め valid でない場合がある可能性が指摘された(西田 -- 具体例希望)ので確認する。

TogoDB

個人用ツール