BH16.12/DFAST

提供:TogoWiki

2016年12月15日 (木) 14:53時点におけるYtani (トーク | 投稿記録)による版
移動: 案内, 検索

目次

概要

バクテリア アノテーション・DDBJ登録支援パイプラインDFASTの開発

DFAST: https://dfast.nig.ac.jp

谷沢・藤澤・山本・真島・李

TogoAnnotatorとの連携

  • DFASTのアノテーション結果編集画面から、TogoAnnotatorへの問い合わせを実装
  • TogoAnnotatorの推測結果から、最適な遺伝子名をユーザーが選択可能に。

参照データベース作成・更新作業の自動化

  • Taxonomy RDF, Assembly RDFを利用してアノテーションリソース取得

phylumごとにreference genomeの件数を取得

DEFINE sql:select-option "order"

PREFIX asm: <http://www.ncbi.nlm.nih.gov/assembly/>
PREFIX tax: <http://identifiers.org/taxonomy/>
PREFIX ddbjtax: <http://ddbj.nig.ac.jp/ontologies/taxonomy/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT ?phylum (count(?asmid) as ?count)
FROM <http://togogenome.org/graph/taxonomy>
FROM <http://togogenome.org/graph/assembly_report>

WHERE
{
	VALUES ?taxon_root {tax:2}  # 2 bacteria, 10239 virus, 2157 archaea
	VALUES ?rank {ddbjtax:Phylum}
	VALUES ?version_status {"latest"}.
	VALUES ?category {"reference genome"}.

	?taxon_root a ddbjtax:Taxon .
	?taxon rdfs:subClassOf* ?taxon_root .
	?taxon ddbjtax:rank ?rank .

	?taxon2 rdfs:subClassOf* ?taxon .
	?assembly asm:taxon ?taxon2 .
	?assembly asm:refseq_category ?category .
	?assembly asm:assembly_id ?asmid .
	?taxon rdfs:label ?phylum .
	FILTER (STRSTARTS(?asmid, "GCF")).
}
GROUP BY ?phylum ORDER BY ?phylum

"Reference Genome"のAssembly ID取得

DEFINE sql:select-option "order"

PREFIX asm: <http://www.ncbi.nlm.nih.gov/assembly/>
PREFIX tax: <http://identifiers.org/taxonomy/>
PREFIX ddbjtax: <http://ddbj.nig.ac.jp/ontologies/taxonomy/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT
	(REPLACE(STR(?taxon), "http://identifiers.org/taxonomy/", "") as ?phylum_id)
	(REPLACE(STR(?taxon2), "http://identifiers.org/taxonomy/", "") as ?taxonomy_id)
	?phylum ?scientificname ?asmid ?version_status ?category

FROM <http://togogenome.org/graph/taxonomy>
FROM <http://togogenome.org/graph/assembly_report>

WHERE
{
	VALUES ?taxon_root {tax:2}   # 2 bacteria, 10239 virus, 2157 archaea
	VALUES ?rank { ddbjtax:Phylum }
	VALUES ?version_status {"latest"}.
	VALUES ?category {"reference genome"}.

	?taxon_root a ddbjtax:Taxon  .
	?taxon rdfs:subClassOf* ?taxon_root.
	?taxon ddbjtax:rank ?rank.

	?taxon2 rdfs:subClassOf* ?taxon.
	?assembly asm:taxon ?taxon2 .
	?assembly asm:refseq_category ?category .
	?assembly asm:assembly_id ?asmid .
	?taxon rdfs:label ?phylum .
	?taxon2 ddbjtax:scientificName ?scientificname
	FILTER (STRSTARTS(?asmid, "GCF")).
} 
ORDER BY ?phylum
  • UniprotへSparqlを利用して検索を行いデータ取得

Assembly ID を指定し、そこに含まれるタンパクのアノテーション情報をUniProtから取得

PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX up: <http://purl.uniprot.org/core/>
PREFIX embl: <http://purl.uniprot.org/embl/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

SELECT  (REPLACE(STR(?id),"http://purl.uniprot.org/uniprot/", "") as ?UPID)
(GROUP_CONCAT(STR(?review); separator = "~~~") as ?reviewed)
(GROUP_CONCAT(?recname; separator ="~~~") as ?recname)
(GROUP_CONCAT(?subname; separator ="~~~") as ?subname)
(GROUP_CONCAT(?gene; separator ="~~~") as ?gene) 
(GROUP_CONCAT(?fragment; separator ="~~~") as ?fragment) 
(GROUP_CONCAT(STR(?precursor); separator ="~~~") as ?precursor) 
(GROUP_CONCAT(replace(STR(?dbref), "http://purl.uniprot.org/", ""); separator =", ") as ?protid)
(GROUP_CONCAT(?lt; separator =", ") as ?locustag) 
(GROUP_CONCAT(?ecnum; separator =", ") as ?ec) (sample(?seq) as ?sequence)

WHERE
{
    VALUES ?assemblyID { embl:GCA_000011365.1 }
    ?proteome rdfs:seeAlso ?assemblyID .
    ?proteome skos:narrower ?subproteome .

    ?id up:proteome ?subproteome .
    ?id a up:Protein .

    {
        ?id up:reviewed ?review  .
        ?id up:sequence / rdf:value ?seq .
        OPTIONAL {?id up:encodedBy / skos:prefLabel ?gene .}
        OPTIONAL {?id up:recommendedName / up:fullName ?recname .}
        OPTIONAL {?id up:submittedName / up:fullName ?subname .}
        OPTIONAL {?id up:sequence / up:fragment ?fragment .}
        OPTIONAL {?id up:sequence / up:precursor ?precursor .}

    } UNION {

        {
            VALUES ?dbtype { <http://purl.uniprot.org/database/RefSeq> <http://purl.uniprot.org/database/EMBL> }
            ?id rdfs:seeAlso ?dbref .
            ?dbref up:database ?dbtype .
        } UNION {
            ?id up:encodedBy / up:locusName ?lt .
        } UNION {
            ?id up:domain ?domain .
            ?domain up:recommendedName / up:ecName ?ecnum .
        } UNION { 
            ?id up:recommendedName / up:ecName ?ecnum .
        }
    }
} GROUP BY ?id"""
  • 参照データベースを作成しβ版としてリリース

DDBJ登録フォーマット

/mw/BH16.12/DFAST」より作成