SPARQLthon23/DDBJ
提供:TogoWiki
目次 |
Taxonomy OWL
NCBI taxdump から (https://github.com/dbcls/rdfsummit/tree/master/taxdump2owl で) 生成する Taxonomy の OWL ファイルでは、これまでどおり
- タクソノミーそのもののオントロジーは http://ddbj.nig.ac.jp/ontologies/taxonomy/ を prefix に、
- 各生物種のタクソノミー ID は http://identifiers.org/taxonomy/ を primary な prefix にし、
これから DDBJ, NCBI, UniProt, OBO などの taxonomy URI に対するリンクをつけることに決定。
"@prefix taxddbj: <http://ddbj.nig.ac.jp/ontologies/taxonomy/> .", "@prefix taxncbi: <http://www.ncbi.nlm.nih.gov/taxonomy/> .", "@prefix taxobo0: <http://purl.obolibrary.org/obo/NCBITaxon_> .", "@prefix taxobo1: <http://purl.org/obo/owl/NCBITaxon#> .", "@prefix taxobo2: <http://www.berkeleybop.org/ontologies/owl/NCBITaxon#> .", "@prefix taxup: <http://purl.uniprot.org/taxonomy/> .",
これらの多くは owl:sameAs とし、UniProt はキュレーションされているため rdfs:seeAlso とすることにした。
- puts triple(tax, "rdfs:seeAlso", "taxncbi:#{tax_id}") + puts triple(tax, "owl:sameAs", "taxddbj:#{tax_id}") + puts triple(tax, "owl:sameAs", "taxncbi:#{tax_id}") + puts triple(tax, "owl:sameAs", "taxobo0:#{tax_id}") + puts triple(tax, "owl:sameAs", "taxobo1:#{tax_id}") + puts triple(tax, "owl:sameAs", "taxobo2:#{tax_id}") + puts triple(tax, "rdfs:seeAlso", "taxup:#{tax_id}")
DDBJ OWL
INSDC のエントリを主語にし、配列の生物種は Taxonomy ID, BioProject ID, BioSample ID を組み合わせて指定。
- これら 3 つの ID へのリンクを指す property を INSDC/DDBJ OWL で定義する
- ddbj:in_taxon, ddbj:in_bioproject, ddbj:in_biosample ?
- Taxonomy ID については、Ensembl にそろえて Relation Ontology の in taxon も使う
- Relation ontology はこれら (→ RO, BioPortal OBOREL) は obsolete だった
INSDC エントリ中の gene などの feature は、これまで
<gene> rdf:type SO:gene .
のように SO で型をつけてインスタンス化していたが、Ensembl にならって、
<gene> rdfs:subClassOf SO:gene .
のように sub class 化する。これは <gene> や <transcript> が biological な entity ではなく DB の entry であり、本当の gene や transcript はそのインスタンスであると考えるほうがよいとの理由から。
また、<gene>, <transcript> などに INSDC/DDBJ OWL で定義する ddbj:Gene などを rdf:type をつけることで、SO のサブクラスでもありエントリとしてのインスタンスでもある状況を記述できそう。
Update insdc.ttl
- xsl作成の際に確認されたinsdc.ttlのバグフィックス
- prefixを<http://insdc.org/owl/#> → <http://insdc.org/owl/> に変更する。【Done】
- SeeAlsoのオブジェクトが文字列で宣言されているので、URIに変更する。【Done】
- owl:cardinalityを設定するリソースに対してowl:Restriction型を明示する(OWLの仕様として指定すべき??)。【Done】
- <http://insdc.org/owl/Assembly_Gap>の一部では型指定されているが、他はない。【Done】
- prefix をddbjに変更
< @prefix : <http://insdc.org/owl/#> . > @prefix : <> . > #@prefix : <http://ddbj.nig.ac.jp/ontologies/> .
- XXXXXX rdfs:subClassOf :Database 追加する 【Done】
- Version 10.3 October 2013 の更新
- <Feature Class> rdfs:seeAlso SO_XXXXXXX 追加する
残作業は SPARQLthon24/DDBJ で実施。
TogoOrganism
GOLD と菌株の生物種に Taxonomy, BioProject, BioSample などを紐付けるためにどのような property を使うかという議論から、 生物種の一覧をもった DB を作って RDF 化したほうが良いのではないかという話に。
TogoOrganism | BioProject | BioSample | Taxonomy ID | Sequence ID | GOLD ID | 菌株 ID |
---|---|---|---|---|---|---|
org1 (GOLD由来) | o | x | o | o | GOLD org1 | N/A |
org2 (菌株由来) | x | ● | ● | △ | N/A | 菌株 org1 |
GOLD を内包しテキストからの情報抽出を加えたプラチナDBを作るか?
↓
上記の表に相当するデータを RDF 化し、各生物種を表す URI としては 現状の http://togogenome.org/organism/tax_id を http://togogenome.org/organism/org_id として利用する。 これにより、TogoGenome で taxonomy ID より細かい生物種単位での情報を扱えるようにもなる。
Taxonomy ID だけが分かっている場合に検索用のインターフェイスなどを経由しないと URL の直打ちができなくなるが、 現状の http://togogenome.org/organism/tax_id は(必要なら) http://togogenome.org/taxonomy/tax_id に移動する、 文字列検索用のインターフェイスに tax_id での検索を対応させるなどの対応でよいだろう。
http://togogenome.org/organism/org_id1 と http://togogenome.org/organism/org_id2 が同一の生物種を指す、 といったことが後で分かることもあるので、統廃合の履歴を管理する仕組みが必要。
なぜ必要か:
- Taxonomy ID が生物種を unique に特定できなくなってしまったので、生物種ごとに新たに ID (URI) が必要。
- また、Taxonomy にたいして表現型などのアノテーションをつけるのはセマンティクスとしておかしいので、生物種そのものを指す ID が必要。
- 菌株センターの生物種は配列がなく taxonomy ID がアサインされていないものも多いので独自に菌株用の ID が必要。
GOLD, JCM, NBRC, NIES (+ KEGG?) にある菌株については記述できるようになる予定。また、NCBI Taxdump から生成した OWL には NBRC 番号なども拾ってあるので利用可能。