BH12.12/SPARQLthon9/MBGD

提供:TogoWiki

移動: 案内, 検索

SPARQLthon9

目次

エンドポイント

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 }.
}

参考

/mw/BH12.12/SPARQLthon9/MBGD」より作成