BH12.12/SPARQLthon11/MBGD

提供:TogoWiki

移動: 案内, 検索

SPARQLthon11

目次

Stanza

  • done
    • スタンザ公開 at Heroku
    • MicrobeDB.jp, TogoGenemeへのStanza提供

Heroku

Source

Data

graph name contents
http://mbgd.genome.ad.jp/rdf/2013-01/default.ttl ortholog groups (MBGD default cluster)
http://mbgd.genome.ad.jp/rdf/2013-01/gene.ttl genes
http://mbgd.genome.ad.jp/rdf/2013-01/organism.ttl organisms
http://mbgd.genome.ad.jp/rdf/2013-01/genome.ttl chromosomes, plasmids, contigs, etc.
http://mbgd.genome.ad.jp/rdf/2013-01/uniprot.ttl cross-reference to UniProt ID

Ontologies

graph name contents
http://mbgd.genome.ad.jp/owl/ortholog.owl Ortholog Ontology
http://mbgd.genome.ad.jp/owl/mbgd.owl MBGD Ontology
http://purl.uniprot.org/core/ UniProt properties and classes
http://purl.uniprot.org/taxonomy/ NCBI taxonomy (RDF from UniProt)

Memo

Virtuoso

  • virtuoso.trx
    • roll forward しなければ、再起動中のアクセスも問題ないのでは?
    • logging をオフにしているのに、なぜ ttlp_mt 中に virtuoso.trx がふくれる?
      • そもそもttlp_mtでは、loggingはオフのはず
    • roll forward が失敗するときは、transaction logを編集する [1]
    • roll forward の時間は、transaction log で1GB あたり 1時間くらい?
      • 3.1 GB
      • 70,754,475 transactions ?
  • blank node
    • Virtuso の返す blank node ID は _:vb24185961 みたいになっているが、これを <nodeID://b24185961> に直さないと検索できない。
    • blank node の含まれるファイルを2回ロードしたら、blank nodeが異なる内部IDでだぶって入っているみたい
  • Inference Rules & Reasoning [2]
    • rule set の リストを得る [3]
      • SELECT * FROM sys_rdf_schema ;
    • Turtleで、pubmed ID など数字だけのIDをPREFIXを使って記述して (pubmed:98044033 等)、ロードしようとするとエラーになる
    • connection数に制限あり?
INSERT DATA {
    GRAPH <http://example.com> {
        <http://example.com/1> rdfs:label "example" .
    }
}
DELETE DATA {
    GRAPH <http://example.com> {
        <http://example.com/1> rdfs:label "example" .
    }
}

Protege

  • Individuals by type って?
    • up:Chloroplast a up:Organelle, owl:NamedIndividual .
  • restriction とか disjoint って使える?
  • property
    • annotation property にはなぜ equivalent がない
    • ow:FunctionalProperty とは?
    • seeAlso は なぜ、AnnotationPropertyにしか出てこないの
    • rdfs:label が、owl:ObjectProperty と owl:AnnotationProperty に出てくるのはなぜ?
    • どうして新しい term をこれらと rdf:type で結ぶのか、rdfs:subClassOf ではないのか
  • up:name の domain は up:Book_Citation か up:Journal_Citation となっているが
    • そのサブプロパティである up:scientificName の domain が up:Taxon になっている
    • いいの?

  • Stardog
    • 2500万トリプルまでフリー
  • D2R
    • Snorql


考察

LODでデータはつながるか

  • LODでは、データオブジェクトに対してIDとしてURIを付ける
    • すると、異なるデータオブジェクトならば異なるIDを持ち、IDを取り間違えることがなくなる
  • よくある例では、"Hoge Fuga" さんのIDは http://myhost/hoge_fuga とか
    • しかし単純な発想として、"Hoge Fuga" さんのIDとして他に http://otherhost/hoge.fuga もあったらどうなるか
    • これらのIDバリエーションが、同じであるということを知らないと、データがつながらない


同じものに複数のIDがあると困る

  • つながるべきデータがつながらない
    • 例えば Taxonomy ID や RefSeq ID などで問題が露呈している
  • みんなでがんばって対処する
    • IDバリエーションをまとめる?
      • IDバリエーションを勝手に作られるかぎり対処しきれない
  • 対処療法でなく予防を:IDのバリエーションを作らないように努める
    • オブジェクトの作成者がはっきりしている場合
      • 作成者が責任をもってURIを付ける
    • オブジェクトの作成者がはっきりしない場合 (太平洋とか月とか。人とか国とかもはっきりしているようでしていない)
      • 先行して付けられたURIを使う


野方図にIDを作るのをやめるべき?

  • 他の人の作ったRDF化されていないデータを使いたいとき、勝手にURIを付けてたら、つながらなくなる
    • 他の人の作ったRDF化されていないデータは、そうやすやすと扱えないということになる
  • Webサービスがない人は、自分の作ったデータであってもURIを付けられない?
    • Webサービスがない人は、RDF化ができない?とりあえずデータをまとめてみようという人にとっては、敷居が高い感じがする
  • 先行して付けられたURIが複数見つかったら?自分が最初にURIを付けると思う人が複数いたら?
    • つながらなくなる。結局クリティカルなところはここ。
    • みんながひとつになって、つながろうと努力し続けないと、つながるべきものがつながらない
      • 足並みを揃えるのが大事な世界だということ
      • 仲のよいグループ内ではうまくいくかもしれない
      • みんなの心がけに依存せずに、自動的にうまくつながる仕組みがないと、グローバルにつながる保証はない


逆にデータがつながりすぎるということはないか

  • たとえば、みんなが、seeAlsoを使って、いろんなリソースを結びつけたRDFを作っている
    • そういったRDFがグローバルなWebの空間でまとまっていったとき、膨大なものが seeAlso によってリンクされることになる
    • あまりにたくさんのものがひとつの大きなかたまりとなったとき、もはやそれは解釈ができなくなってしまうのでは