NCBI eUtils概要
NCBIのサービスを使用するためのHTTP/XMLなインターフェース。
基本的な流れ- 単語による検索で、ヒットしたデータのIDリストを得る。
- IDからそのデータの詳細を得る。
例えば、ESearchを使ってtermからIDのリストを得る。次にESummaryを使ってIDのリストから、ヒットしたデータの要約を得る。
データを取得する方法それぞれのツールは固有のURLを持つ。これをBaseURLとよぶ。このBaseURLに対して適切なパラメータを付加する事によって、レスポンスとしてデータを取得することができる。
例えば、
http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&term=cancer&reldate=90
というURLにアクセスすると、ESerachというツールに対して、Pubmedのtermがcancerを含む過去3ヶ月のエントリをください、という要求になる。
このとき、BaseURLはhttp://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi
となり、パラメータは、
- db=pubmed
- term=cancer
- reldate=90
となる。
BaseURLとパラメータは?で結ぶ必要があり、パラメータ同士は&で結ぶ必要がある。
結果の解析URLにアクセスすると結果はXMLとして返ってくる。(contentTypeはtext/htmlだったりtext/plainだったり嘘ついてくるけど。。。)
これらのXMLはユーザが解析し、意味のあるデータとして解釈しなければならない。DTDが公開されているのでこれを参考にすると良い。
また、結果を解析するのが面倒だ!という方は、Entrez Utilities Web Serviceをお勧めする。