BH12.12/SPARQLthon16/GenomeRefine

提供:TogoWiki

移動: 案内, 検索

目次

遺伝子アノテーションのデータフロー

GenomeRefine TogoAnnotator.png

遺伝子アノテーションのRDFデータモデル(案)

MiGAP

  • 遺伝子単位
<urn:uuid:...1...> a oa:Annotation;
    oa:hasTarget <http://genome.microbedb.jp/236/GR16/genes/GR16_10020>;
    oa:hasBody  <urn:uuid:...2...>;
    oa:annotatedAt "2014-01-17T15:02:14Z" ;
    oa:annotatedBy <http://www.migap.org>.

<urn:uuid:...2...> a cnt:ContentAsText;
   a  gref:Annotated_feature_porduct;
   cnt:chars "DevB family ABC transporter membrane fusion protein” ;
   cnt:characterEncoding "utf-8” .

<http://www.migap.org> a foaf:Agent, prov:SoftwareAgent ;
   foaf:name “MiGAP" .
  • ゲノム単位
{
<urn:uuid:...> a oa:Annotation;
    oa:hasTarget <http://genome.microbedb.jp/236/GR16>;
    oa:hasBody  <http://genome.microbedb.jp/236/GR16/genes/graph>;
    oa:annotatedAt "2014-01-17T15:02:14Z" ;
    oa:annotatedBy <http://www.migap.org>.

<http://genome.microbedb.jp/236/GR16/genes/graph> a trg:Graph.
}

<http://genome.microbedb.jp/236/GR16/genes/graph>
{
<http://genome.microbedb.jp/236/GR16/genes/GR16_10010> insdc:product "ribosomal RNA-16S”.
<http://genome.microbedb.jp/236/GR16/genes/GR16_10020> insdc:product "DevB family ABC transporter membrane fusion protein”.
.
.
.
}


<http://www.migap.org> a foaf:Agent, prov:SoftwareAgent ;
   foaf:name “MiGAP" .
  • ゲノム単位のハンドリングがよさそうではあるがまずはTogoAnnotationと同様に遺伝子単位でのRDFデータモデルを優先して試行する。

TogoAnnotator


<urn:uuid:...> a oa:Annotation;
    oa:hasTarget <http://genome.microbedb.jp/236/GR16/genes/GR16_10020>;
    oa:hasBody  <urn:uuid:...> ; 
    oa:annotatedAt "2014-01-17T15:02:14Z" ;
    oa:annotatedBy <http://dbcls.jp/togoannotator>.

<urn:uuid:...> a cnt:ContentAsText ;
   a  gref:Annotated_gene_porduct;
   cnt:chars "DevB family ABC transporter” ;
   cnt:characterEncoding "utf-8” . 

<http://dbcls.jp/togoannotator> a foaf:Agent, prov:SoftwareAgent ;
   foaf:name “TogoAnnotator” .

TogoAnnotation


@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@PREFIX oa: <http://www.w3.org/ns/oa#> .
@prefix foaf:    <http://xmlns.com/foaf/0.1/> .
@prefix cnt: <http://www.w3.org/2011/content#> .
@prefix prov: <http://www.w3.org/ns/prov#> .

<http://togo.annotation.jp/bookmarks/1427582>  a oa:Annotation;
    oa:motivatedBy oa:bookmarking ;
    oa:hasTarget <http://genome.microbedb.jp/cyanobase/Synechocystis/genes/slr0906>;
    oa:hasBody  <http://togo.annotation.jp/tags/pname> ; 
    oa:hasBody  <http://togo.annotation.jp/tags/pmid> ; 
    oa:hasBody  <http://togo.annotation.jp/tags/so> ; 
    oa:hasBody  <http://togo.annotation.jp/tags/fig1> ;
    oa:hasBody  <http://togo.annotation.jp/tags/GI2> ;

    oa:annotatedAt "2012-02-12T15:02:14Z" ;
    oa:annotatedBy <http://togo.annotation.jp/yoshimura_h>;

    oa:serializedBy <http://togo.annotation.jp> ;
    oa:serializedAt "2012-02-12T15:02:14Z" .

<http://togo.annotation.jp/tags/pname> a oa:SemanticTag ;
   foaf:page <http://togo.annotation.jp/tags/pname:CP43> .

<http://togo.annotation.jp/tags/pname:CP43> rdfs:label "pname:CP43" ; 
   a cnt:ContentAsText ;
   cnt:chars "CP43" ;
   cnt:characterEncoding "utf-8" .

<http://togo.annotation.jp/tags/pmid> a oa:SemanticTag ;
   foaf:page <http://togo.annotation.jp/tags/pmid:22197103> .

 <http://togo.annotation.jp/tags/pmid:22197103> rdfs:label "pmid:22197103" ;
   a cnt:ContentAsText;
   cnt:chars "22197103" ;
   cnt:characterEncoding "utf-8" .

<http://togo.annotation.jp/tags/so> a oa:SemanticTag ;
   foaf:page <http://togo.annotation.jp/tags/so:polypeptide> .

<http://togo.annotation.jp/tags/so:polypeptide> rdfs:label "so:polypeptide" ;
   a cnt:ContentAsText;
   cnt:chars "polypeptide" ;
   cnt:characterEncoding "utf-8" .

<http://togo.annotation.jp/tags/fig1> a oa:Tag ;
   rdfs:label "fig1" ;
   a cnt:ContentAsText ;
   cnt:chars "fig1" ;
   cnt:characterEncoding "utf-8" .


<http://togo.annotation.jp/tags/GI2> a oa:Tag ;
   rdfs:label "GI2" ;
   a cnt:ContentAsText ;
   cnt:chars "GI2" ;
   cnt:characterEncoding "utf-8" .


<http://togo.annotation.jp> a foaf:Agent, prov:SoftwareAgent ;
   foaf:name "TogoAnnotation" . 

<http://togo.annotation.jp/yoshimura_h> a foaf:Person ;
   foaf:openid <http://...> ;
   foaf:name "yoshimura_h" .

TogoAnnotation-RDF.png

  • 親タグのないGI2, fig1タグは、oa:SemanticTagではなくてoa:Tagにすべきか? →した。
  • IDベースのリソースURIはどうする?
  • SOとかPMIDとかの外部リソースURI対応は個別にやる
  • GIなどのプロジェクトの説明的なところの対応は?-so アノテーションのアサーション(コンセプト)記述については相談
  • nanopublicationとの関係 → nanoPubはまぜるのでなくて、このTogoAnnotation RDF + Genome RDF → constructなSPARQL → nanopub RDF というデータフロー

入出力ファイル形式

  • 入力ファイルの読み込みの高速化や再利用性を考慮して、JSON-LDで扱っておくとよいかもしれない

TogoAnnotator

GenomeRefineによるMiGAP結果対応のための前処理

  • クエリー""は"hypothetical protein"

NITEで利用しているMiGAPワークフローの条件や検索対象DBを確認する

辞書拡張

  • モデル微生物辞書
Todo

TogoAnnotator出力RDFの拡張

遺伝子アノテーション結果以外の情報も必要に応じて表現していく。

<urn:uuid:7CB882D8-826C-11E3-B8B6-F17229C1CBE3> a oa:Annotation;
    oa:hasTarget <http://genome.microbedb.jp/236/GR16/genes/GR16_10100>;
    oa:hasBody  <urn:uuid:7CB88300-826C-11E3-B8B6-F17229C1CBE3> ; 
    oa:annotatedAt "2014-01-17T15:02:14Z" ;
    oa:annotatedBy <http://dbcls.jp/togoannotator>.
<urn:uuid:7CB88300-826C-11E3-B8B6-F17229C1CBE3> a cnt:ContentAsText ;
   a  gref:Annotated_gene_porduct ;
   cnt:chars "nitrate transporter" ;
   skos:prefLabel "nitrate transporter" ;
   skos:hiddenLabel "nitrate transport permease" ;
   rdfs:comment "cs" ;
   rdfs:comment "nitrate transporter [-1:nitrate] @@ nitrate/nitrite transporter [-1:nitrate] @@ nitrite/nitrate transporter [-1:nitrate] @@ nitrate ABC transporter permease protein [-1:nitrate] @@ citrate transporter [10012:citrate]" ;
   cnt:characterEncoding "utf-8" . 
<http://dbcls.jp/togoannotator> a foaf:Agent, prov:SoftwareAgent ;
   foaf:name "TogoAnnotator".
  • $matchをどう表現するか? → skos:mappingRelation で表現するのがよさそうだけど、owl:ObjectPropertyのインスタンスなので辞書側のリソースURIが必要。タイプ記述できるような適当なオントロジークラスがあるか?
match対応
TogoAnnotator skos
Exact match skos:exactMatch
Approximate match, cs skos:closeMatch
Approximate match, bcs skos:mappingRelation
no_hit skos:exactMatch
  • $infoをどう表現するか? → 属性情報表現のため候補は複数のhasBodyで扱い、階層をもったプロパティで表現。結果はすでにcnt:charsで扱っているが、別途、結果/候補/クエリについてはskos:prefLabel, skos:altLabel, skos:hiddenLabelで分類しておくという案
  • 検索パラメーター $cos_threshold, $e_threashold, $cs_max, $n_gram を扱うか?

参考リンク

個人用ツール