Upgrade to Pro — share decks privately, control downloads, hide ads and more …

オタクLODをやりませんか #uzimaru生誕LT会

オタクLODをやりませんか #uzimaru生誕LT会

takanakahiko

June 01, 2020
Tweet

More Decks by takanakahiko

Other Decks in Technology

Transcript

  1. うじまるLTのやつ
    なかひこくん

    View Slide

  2. コメントしてくれると嬉しい

    View Slide

  3. うじまるくん
    誕生日おめでとうございます

    View Slide

  4. うじまるくん
    誕生日おめでとうございます
    (会ったことも喋ったこともないオタクの誕生
    日を祝うのは初めてです)

    View Slide

  5. うじまるチャレンジ
    をつくりました
    なかひこくん

    View Slide

  6. View Slide

  7. @takanakahiko

    View Slide

  8. @takanakahiko
    趣味 : 女児向けのアニメを観る

    View Slide

  9. @takanakahiko
    趣味 : 女児向けのアニメを観る

    View Slide

  10. DLsiteはやってません

    View Slide

  11. View Slide

  12. 本題 :
    うじまるくんに関する
    アプリケーションを
    作りました

    View Slide

  13. View Slide

  14. View Slide

  15. 実家「弟の誕生日なので帰ってきませんか?」
    ぼく「はい...」

    View Slide

  16. 間に合いませんでした

    View Slide

  17. View Slide

  18. 話変わって

    View Slide

  19. オタクLODを
    やりませんか
    なかひこくん

    View Slide

  20. View Slide

  21. 前提知識

    View Slide

  22. SPARQL
    ● RDF を検索するためのクエリ言語
    22

    View Slide

  23. SPARQL
    ● RDF を検索するためのクエリ言語
    23
    RDFって何...?


    View Slide

  24. RDF とは
    ● 「主語 -> 述語 -> 目的語」によってデータを表現するフォーマット
    ● いわゆる有向グラフ
    24

    View Slide

  25. RDF とは
    ● 「主語 -> 述語 -> 目的語」によってデータを表現するフォーマット
    ● 例 : 「うじまる の 誕生日 は 6/1」
    25

    6/1
    誕生日

    View Slide

  26. RDF とは
    ● 「主語 -> 述語 -> 目的語」によってデータを表現するフォーマット
    ● 例 : 「うじまる の 誕生日 は 6/1」
    26

    "6月1日".


    View Slide

  27. 27
    @base example:

    "6月1日";
    "うじまる";
    "uzimaru0000";
    "True";
    "takanakahiko", "yt8492" … ;
    .

    "じらい".
    こんな感じで増やせる

    View Slide

  28. ● RDF で URI としてデータを定義する
    ● RDF を検索するための環境を提供する
    28
    これらを

    Linked Open Data

    と呼ぶ


    View Slide

  29. View Slide

  30. 話変わって

    View Slide

  31. VTuber
    って知ってますか

    View Slide

  32. View Slide

  33. いいよね...
    いい...

    View Slide

  34. やるか〜〜〜

    View Slide

  35. VTuberの情報を
    検索できる
    SPARQLエンドポイント
    を作りました

    View Slide

  36. View Slide

  37. モデルをね
    設計します

    View Slide

  38. View Slide

  39. 情報をね
    集めます

    View Slide

  40. View Slide

  41. ウケる

    View Slide

  42. View Slide

  43. こんな感じ

    View Slide

  44. View Slide


  45. UCD-miitqNY3
    nyukJ4Fnf4_A
    月ノ美兎
    rdfs:label vp:youtubeChannelId

    View Slide

  46. SPARQLで
    こんなクエリを投げる

    View Slide

  47. prefix vlueprint:
    prefix rdfs:
    select ?YOUTTUBE {
    ?uri vlueprint:youtubeChannelId ?YOUTTUBE.
    ?uri rdfs:label "月ノ美兎".
    }
    ?uri
    ?YOUTTUBE
    月ノ美兎
    rdfs:label vp:youtubeChannelId

    View Slide

  48. ここから叩けます
    https://vlueprint.org/sparql?default-graph-uri=&qtxt=prefix+vlueprint%3A+%3Chttps%3A%2F%2Fvlueprint.org%2Fschema%2F
    %3E%0D%0Aprefix+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0A%0D%0
    Aselect+%3FYOUTTUBE+%7B%0D%0A++%3Furi+vlueprint%3AyoutubeChannelId+%3FYOUTTUBE.%0D%0A++%3Furi+rdf
    s%3Alabel+%22%E6%9C%88%E3%83%8E%E7%BE%8E%E5%85%8E%22.%0D%0A%7D%0D%0A&format=text%2Fhtml&t
    imeout=0&debug=on&run=+Run+Query+

    View Slide

  49. View Slide

  50. VTuberの
    Twitterアカウント一覧とかも

    View Slide

  51. prefix vlueprint:
    prefix rdfs:
    select ?LABEL ?TWITTER {
    ?uri rdf:type vlueprint:VirtualBeing.
    ?uri rdfs:label ?LABEL.
    ?uri vlueprint:twitterAccount ?TWITTER.
    }
    ?uri
    ?TWITTER
    vp:VirtualBeing
    rdf:type
    vp:twitterAccount
    ?LABEL
    rdf:label

    View Slide

  52. ここから叩けます
    https://vlueprint.org/sparql?default-graph-uri=&qtxt=prefix+vlueprint%3A+%3Chttps%3A%2F%2Fvlueprint.org%2Fschema%2F
    %3E%0D%0Aprefix+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0A%0D%0
    Aselect+%3FLABEL+%3FTWITTER+%7B%0D%0A++%3Furi+rdf%3Atype+vlueprint%3AVirtualBeing.%0D%0A++%3Furi+rdfs
    %3Alabel+%3FLABEL.%0D%0A++%3Furi+vlueprint%3AtwitterAccount+%3FTWITTER.%0D%0A%7D%0D%0A&format=text
    %2Fhtml&timeout=0&debug=on&run=+Run+Query+

    View Slide

  53. View Slide

  54. VTuberの
    所属とかも

    View Slide

  55. prefix vlueprint:
    prefix rdfs:
    select ?LABEL ?ORGLABEL {
    ?uri rdf:type vlueprint:VirtualBeing.
    ?uri rdfs:label ?LABEL.
    ?uri vlueprint:belongTo ?orgUri.
    ?orgUri rdfs:label ?ORGLABEL.
    }
    ?uri
    ?orgUri
    vp:VirtualBeing
    rdf:type vp:belongTo
    ?LABEL
    rdf:label
    ?ORGLABEL
    rdfs:label
    リンク

    View Slide

  56. ここから叩けます
    https://vlueprint.org/sparql?default-graph-uri=&qtxt=prefix+vlueprint%3A+%3Chttps%3A%2F%2Fvlueprint.org%2Fschema%2F
    %3E%0D%0Aprefix+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0A%0D%0
    Aselect+%3FLABEL+%3FORGLABEL+%7B%0D%0A++%3Furi+rdf%3Atype+vlueprint%3AVirtualBeing.%0D%0A++%3Furi+r
    dfs%3Alabel+%3FLABEL.%0D%0A++%3Furi+vlueprint%3AbelongTo+%3ForgUri.%0D%0A++%3ForgUri+rdfs%3Alabel+%3F
    ORGLABEL.%0D%0A%7D%0D%0A&format=text%2Fhtml&timeout=0&debug=on&run=+Run+Query+

    View Slide

  57. View Slide

  58. SPARQLエンドポイントは
    他のやつと接続可能

    View Slide

  59. https://prismdb.takanakahiko.me/
    「アイマスとプリティーシリーズの共通声優を抽出」より

    View Slide

  60. View Slide

  61. View Slide

  62. おねがい

    View Slide

  63. 使ってくれ
    ユースケースをもとに
    開発をしていきたい

    View Slide

  64. 手伝ってくれ
    ぼくだけで4000人の
    VTuberを管理するのは無理

    View Slide

  65. 他にもやってくれ
    LODは他のやつとつなげると
    楽しいのでぜひ

    View Slide

  66. 応援してくれ
    たのむ

    View Slide

  67. 以上

    View Slide

  68. 宣伝 : 便利だから使ってください
    https://event-to-twitter-list.herokuapp.com/

    View Slide

  69. 宣伝 : これも便利だから使ってください
    https://chrome.google.com/webstore/detail/slack-emoji-meister/omcnknklnilbbnoioiaibdkhoonlmdnj?hl=en

    View Slide

  70. 宣伝 : これも便利だから使ってください
    https://kotoba-palette.herokuapp.com/

    View Slide

  71. 本を
    書きました
    (出版社: インプレスR&D :pray: )
    https://www.amazon.co.jp/dp
    /4844398563/
    宣伝 : 印税がほしい

    View Slide

  72. 以上

    View Slide