BH12.12/SPARQLthon9/MBGD
提供:TogoWiki
目次 |
エンドポイント
- http://sparql.nibb.ac.jp/sparql をVirtuoso7に切り替えた
Stanzaの作成
オーソログ(Protein→Protein: protein_ortholog)
例:UniProt ID P00934 のオーソログ
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX orth: <http://mbgd.genome.ad.jp/owl/ortholog.owl#> PREFIX mbgd: <http://mbgd.genome.ad.jp/owl/mbgd.owl#> PREFIX mbgdCluster: <http://mbgd.genome.ad.jp/rdf/cluster/2013-01/> PREFIX uniprotProtein: <http://purl.uniprot.org/uniprot/> SELECT ?uniprot WHERE { mbgdCluster:default orth:member ?group . ?group a orth:OrthologGroup ; orth:member ?member ; orth:member ?member2 . ?member orth:geneId/rdfs:seeAlso ?uniprot . ?uniprot a mbgd:UniprotId . ?member2 orth:geneId/rdfs:seeAlso uniprotProtein:P00934 . }
http://bias.nibb.ac.jp:3001/ortholog?tax_id=1111708&gene_id=slr1311
オーソログを持っている系統群(Gene→Taxon: ortholog_taxon_profile)
例:P00934 (UniProt ID)のオーソログを持つ生物が属する科。
各科に属する生物の数でソート(Familyを、Class, Order, Genusに変えれば、別のrankで集計できる)
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX orth: <http://mbgd.genome.ad.jp/owl/ortholog.owl#> PREFIX mbgd: <http://mbgd.genome.ad.jp/owl/mbgd.owl#> PREFIX mbgdCluster: <http://mbgd.genome.ad.jp/rdf/cluster/2013-01/> PREFIX uniprot: <http://purl.uniprot.org/core/> PREFIX uniprotProtein: <http://purl.uniprot.org/uniprot/> SELECT ?family ?name COUNT(?organism) AS ?count WHERE { mbgdCluster:default orth:member ?group . ?group a orth:OrthologGroup ; orth:member ?member ; orth:member ?member2 . ?member orth:organism ?organism . ?organism orth:taxonomy $tax . ?tax rdfs:subClassOf+ ?family . ?family uniprot:rank uniprot:Family ; uniprot:scientificName ?name . ?member2 orth:geneId/rdfs:seeAlso uniprotProtein:P00934 . } ORDER BY DESC (?count)
http://bias.nibb.ac.jp:3001/ortholog_taxon_profile?gene_id=slr1311
Sunburst用
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX orth: <http://mbgd.genome.ad.jp/owl/ortholog.owl#> PREFIX mbgd: <http://mbgd.genome.ad.jp/owl/mbgd.owl#> PREFIX mbgdCluster: <http://mbgd.genome.ad.jp/rdf/cluster/2013-01/> PREFIX uniprot: <http://purl.uniprot.org/core/> PREFIX uniprotProtein: <http://purl.uniprot.org/uniprot/> SELECT ?tax COUNT(DISTINCT ?tax) as ?cnt ?tax_label ?parent ?rank WHERE { mbgdCluster:default orth:member ?group . ?group a orth:OrthologGroup ; orth:member ?member ; orth:member ?member2 . ?member orth:geneId/rdfs:seeAlso uniprotProtein:P00934 . ?member2 orth:organism/orth:taxonomy ?sp . ?sp rdfs:subClassOf* ?tax . ?tax uniprot:scientificName ?tax_label. OPTIONAL { ?tax rdfs:subClassOf ?parent }. OPTIONAL { ?parent uniprot:rank ?rank}. }
http://bias.nibb.ac.jp:3001/sunburst?gene_id=slr1311
特定の系統群が共通して持っているオーソログ(Taxon→Gene: taxon_ortholog_profile)
例:Taxonomy ID 543(Enterobacteriaceae; 腸内細菌科)が持っているオーソログ。(持っている生物の数でソート)
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX orth: <http://mbgd.genome.ad.jp/owl/ortholog.owl#> PREFIX mbgd: <http://mbgd.genome.ad.jp/owl/mbgd.owl#> PREFIX mbgdCluster: <http://mbgd.genome.ad.jp/rdf/cluster/2013-01/> PREFIX uniprotTax: <http://purl.uniprot.org/taxonomy/> SELECT ?group ?comment COUNT(?organism) AS ?count WHERE { mbgdCluster:default orth:member ?group . ?group a orth:OrthologGroup ; rdfs:comment ?comment ; orth:member ?member . ?member orth:organism ?organism . ?organism orth:taxonomy ?tax . ?tax rdfs:subClassOf+ uniprotTax:543 . } ORDER BY DESC (?count)
オーソログを持っている生物が採られた環境(Gene→Environment: ortholog_metagenome_profile)
例:P00934 (UniProt ID)のオーソログを持つ生物がいる環境
Sunburst用
まずMBGDのエンドポイントで、taxonomy IDのリストを得る。
PREFIX orthGroups: <http://mbgd.genome.ad.jp/rdf/cluster/2013-01/> PREFIX orth: <http://mbgd.genome.ad.jp/owl/ortholog.owl#> PREFIX mbgd: <http://mbgd.genome.ad.jp/owl/mbgd.owl#> PREFIX uniprot: <http://purl.uniprot.org/uniprot/> SELECT DISTINCT ?tax WHERE { orthGroups:default orth:member ?group . ?group a orth:OrthologGroup ; orth:member ?member ; orth:member ?member2 . ?member orth:geneId/rdfs:seeAlso uniprot:P00934 . ?member2 orth:organism/orth:taxonomy ?sp . ?sp rdfs:subClassOf* ?tax . }
さらに次のSPARQLで、環境情報(MEOのIDとラベル)を得る。また、MEOの階層における親がいれば取得しておく。
SELECT DISTINCT ?env ?parent ?env_label WHERE { ?tax ^mccv:MCCV_000020/meo:environmentalDescribed ?env . FILTER (?tax in ($STDIN)) ?env a owl:Class . ?env rdfs:label ?env_label . OPTIONAL { ?env rdfs:subClassOf ?parent }. }
参考
- http://d3js.org
- Examples and Demos
- Sunburst
- Tree Layout
他