LODを検索する

5,849 views

Published on

Published in: Technology, News & Politics
0 Comments
13 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,849
On SlideShare
0
From Embeds
0
Number of Embeds
1,883
Actions
Shares
0
Downloads
46
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide

LODを検索する

  1. 1. LODを検索する LOD  Challenge  実行委員会
  2. 2. クエリ言語 •  データの検索や操作を行うための言語  •  データモデルやデータベースシステムに合わ せて設計  •  例:  SQL   –  データモデル:  関係モデル   –  データベースシステム:  RDBMS    
  3. 3. グラフのクエリ •  グラフの最小単位:  3つ組  (トリプル)   dbpedia-owl:Capital dbpedia:Japan dbpedia:Tokyo •  グラフパターン   1.  完全一致   •  dbpedia:Japan  dbpedia-­‐owl:Capital  dbpedia:Tokyo  .   2.  変数によるパターンマッチ   •  dbpedia:Japan  dbpedia-­‐owl:Capital  ?capital  .   3.  1と2の組み合わせ
  4. 4. 好き嫌いグラフ :Amy :like :like :Bob :Cathy :dislike :like:Dan :dislike :Flo :dislike :Ed :dislike :dislike :Gil :like :Ian :like :Jim :Hal :like :dislike :Kate :dislike :May :like :Lee :dislike
  5. 5. Amyが好きな人 :Amy  :like  ?person  .   :Amy :like :like :Bob :Cathy :dislike :like :Dan :dislike :Flo :dislike :Ed :dislike :dislike :Gil :like :Ian :like :Jim :Hal :like :dislike :Kate :dislike :May :like :Lee :dislike
  6. 6. “Amyが好きな人”が好きな人 :Amy  :like  ?person1  .  ?person1  :like  ?person2  .   :Amy :like :like :Bob :Cathy :dislike :like :Dan :dislike :Flo :dislike :Ed :dislike :dislike :Gil :like :Ian :like :Jim :Hal :like :dislike :Kate :dislike :May :like :Lee :dislike
  7. 7. SPARQL •  LOD用クエリ言語   –  データモデル:  RDF  (ラベル付き有向グラフ)   –  プロトコル:  HTTP  •  W3C仕様   –  1.0:  RecommendaUons   –  1.1:  Working  DraVs  
  8. 8. SPARQL  1.0  •  データ取得・検索   –  SELECT   –  ASK   –  CONSTRUCT   –  DESCRIBE  •  どこでもほぼ使用可能  
  9. 9. SPARQL  1.1  •  データ作成・更新・削除   –  INSERT  /  UPDATE  /  DELETE  /LOAD  /  DROP  •  取得・検索にも様々な機能追加   –  プロパティパス,集約,条件,数値関数,文字列関数,サブ クエリ,Federatedクエリなどなど  •  まだ実装に差あり  •  ここでは1.1の内容は割愛  
  10. 10. SELECT  •  SELECT:     •  SELECT  *     •  :  XML,  JSON,  CSV,  TSV,  …  •  WHERE:    {}  •  LIMIT:       •  100 1-­‐100   •  LIMIT   •   •  PREFIX:    URI   •  dbpedia:Kaoru_Mori  =  <hep://dbpedia.org/resource/Kaoru_Mori>    
  11. 11. SELECTの例(1) )   3 100  SELECT  ?s  ?p  ?o  WHERE  {      ?s  ?p  ?o  .  }  LIMIT  100    
  12. 12. SELECTの例  (2)     )    PREFIX  dbpedia:  <hep://dbpedia.org/resource/>  PREFIX  dbp-­‐owl:  <hep://dbpedia.org/ontology/>    SELECT  ?birthPlace  WHERE  {      dbpedia:Kaoru_Mori  dbp-­‐owl:birthPlace  ?birthPlace  .  }    
  13. 13. ASK  •  ASK:    WHERE   •  :  XML,  JSON,  CSV,  TSV,  …   •  yes   no       )    PREFIX  dbpedia:  <hep://dbpedia.org/resource/>  PREFIX  dbp-­‐owl:  <hep://dbpedia.org/ontology/>    ASK    WHERE  {      dbpedia:Kaoru_Mori  dbp-­‐owl:birthPlace  ?birthPlace  .  }  
  14. 14. CONSTRUCT  •  CONSTRUCT: •  : RDF/XML, Turtle, … ) foaf:name 3 PREFIX  foaf:  <hep://xmlns.com/foaf/0.1/>    CONSTRUCT  {      ?s  foaf:name  ?o  .  }  WHERE  {      ?s  foaf:name  ?o  .  }  
  15. 15. DESCRIBE  •  DESCRIBE: •  •  3 •  : RDF/XML, Turtle, … ) http://dbpedia.org/resource/Tokyo DESCRIBE <http://dbpedia.org/resource/Tokyo>
  16. 16. SPARQLエンドポイント •  SPARQLクエリを受け付ける場所   –  SPARQLエンドポイントURI   •  プログラムからSPARQLを使うときに指定   –  入力フォームがある場合もあり  •  公開  SPARQLエンドポイント   –  誰でも自由に利用可能   –  公開リスト   •  hep://www.w3.org/wiki/SparqlEndpoints   •  hep://ckan.net/dataset?res_format=api%2Fsparql&q=sparql   •  hep://labs.mondeca.com/sparqlEndpointsStatus/
  17. 17. 公開SPARQLエンドポイント   の状態確認サイト http://labs.mondeca.com/sparqlEndpointsStatus/
  18. 18. DBpedia  SPARQLエンドポイント
  19. 19. DBPediaのグラフ例   dbp-owl:capital rdfs:label dbp:Japan “日本”@ja dbp-­‐owl:City rdf:type dbp-owl:country dbp-­‐owl:   dbp-prop:birthPlace ComicsCreator rdfs:label dbp:Tokyo rdf:type dbp-prop:birthPlace rdf:type dbp:Kaoru_Mori dbp-­‐owl:ArUst “東京”@ja owl:sameAs dbp-prop:birthDate rdf:type foaf:Person “1978-­‐09-­‐18” freebase:   ^^xsd:date rdfs:label foaf:homepage rdfs:label 東京都 hep://morikaoru.blog62.fc2.com   Kaoru  Mori   “森薫”@ja
  20. 20. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> SELECT ?country WHERE { dbpedia:Tokyo dbpedia-owl:country ?country . } dbp-owl:capital rdfs:label dbp:Japan 日本 dbp-­‐owl:City rdf:type dbp-owl:country dbp-­‐owl:   dbp-prop:birthPlace ComicsCreator rdfs:label dbp:Tokyo rdf:type dbp-prop:birthPlace rdf:type dbp:Kaoru_Mori dbp-­‐owl:ArUst “東京”@ja owl:sameAs dbp-prop:birthDate rdf:type foaf:Person “1978-­‐09-­‐18” freebase:   ^^xsd:date rdfs:label foaf:homepage rdfs:label 東京都 hep://morikaoru.blog62.fc2.com   Kaoru  Mori   “森薫”@ja
  21. 21. DBpedia SPARQL
  22. 22. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> SELECT ?country WHERE { dbpedia:Tokyo dbpedia-owl:country ?country . }
  23. 23. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace rdfs:label ?label . } dbp-owl:capital rdfs:label dbp:Japan “日本”@ja dbp-­‐owl:City rdf:type dbp-owl:country dbp-­‐owl:   dbp-prop:birthPlace ComicsCreator rdfs:label dbp:Tokyo rdf:type dbp-prop:birthPlace rdf:type dbp-­‐owl:ArUst dbp:Kaoru_Mori “東京”@ja owl:sameAs dbp-prop:birthDate rdf:type foaf:Person “1978-­‐09-­‐18” freebase:   ^^xsd:date rdfs:label foaf:homepage rdfs:label 東京都 hep://morikaoru.blog62.fc2.com   Kaoru  Mori   “森薫”@ja
  24. 24. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace rdfs:label ?label . }
  25. 25. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace rdf:type dbpedia-owl:City ; rdfs:label ?label . } dbp-owl:capital rdfs:label dbp:Japan “日本”@ja dbp-­‐owl:City rdf:type dbp-owl:country dbp-­‐owl:   dbp-prop:birthPlace ComicsCreator rdfs:label dbp:Tokyo rdf:type dbp-prop:birthPlace rdf:type dbp-­‐owl:ArUst dbp:Kaoru_Mori “東京”@ja owl:sameAs dbp-prop:birthDate rdf:type foaf:Person “1978-­‐09-­‐18” freebase:   ^^xsd:date rdfs:label foaf:homepage rdfs:label 東京都 hep://morikaoru.blog62.fc2.com   Kaoru  Mori   “森薫”@ja
  26. 26. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace rdf:type dbpedia-owl:City ; rdfs:label ?label . }
  27. 27. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace a dbpedia-owl:City ; rdfs:label ?label . FILTER (lang(?label) = “ja”) } dbp-owl:capital rdfs:label dbp:Japan “日本”@ja dbp-­‐owl:City rdf:type dbp-owl:country dbp-­‐owl:   dbp-prop:birthPlace ComicsCreator rdfs:label dbp:Tokyo rdf:type dbp-prop:birthPlace rdf:type dbp:Kaoru_Mori dbp-­‐owl:ArUst “東京”@ja owl:sameAs dbp-prop:birthDate rdf:type foaf:Person “1978-­‐09-­‐18” freebase:   ^^xsd:date rdfs:label foaf:homepage rdfs:label 東京都 hep://morikaoru.blog62.fc2.com   Kaoru  Mori   “森薫”@ja
  28. 28. : ? PREFIX dbpedia: <http://dbpedia.org/resource/> PREFIX dbpedia-owl: <http://dbpedia.org/ontology/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?birthPlace ?label WHERE { dbpedia:Kaoru_Mori dbpedia-owl:birthPlace ?birthPlace . ?birthPlace a dbpedia-owl:City ; rdfs:label ?label . FILTER (lang(?label) = “ja”) }
  29. 29. SPARQL1.0  specs  •  SPARQL  Query  Language  for  RDF:   hep://www.w3.org/TR/rdf-­‐sparql-­‐query/  •  SPARQL  Protocol  for  RDF:   hep://www.w3.org/TR/rdf-­‐sparql-­‐protocol  •  SPARQL  Query  Results  XML  Format:   hep://www.w3.org/TR/rdf-­‐sparql-­‐XMLres/  •  CURIE  Syntax  1.0:  hep://www.w3.org/TR/curie/  
  30. 30. SPARQL  1.1  specs  •  SPARQL  1.1  Query  Language:  hep://www.w3.org/TR/sparql11-­‐query/  •  SPARQL  1.1  Update:  hep://www.w3.org/TR/sparql11-­‐update/  •  SPARQL  1.1  Protocol  for  RDF:  hep://www.w3.org/TR/sparql11-­‐protocol/  •  SPARQL  1.1  Graph  Store  HTTP  Protocol:   hep://www.w3.org/TR/sparql11-­‐hep-­‐rdf-­‐update/  •  SPARQL  1.1  Entailment  Regimes:  hep://www.w3.org/TR/sparql11-­‐entailment/  •  SPARQL  1.1  Service  DescripUon:   hep://www.w3.org/TR/sparql11-­‐service-­‐descripUon/  •  SPARQL  1.1  Federated  Extension:  hep://www.w3.org/TR/sparql11-­‐federated-­‐query/  •  SPARQL  1.1  Conformance  Tests:  hep://www.w3.org/2009/sparql/docs/tests/  •  SPARQL  1.1  Query  Results  JSON  Formats:   hep://www.w3.org/TR/sparql11-­‐results-­‐json/  •  SPARQL  1.1  Query  Results  CSV  and  TSV  Formats:   hep://www.w3.org/TR/sparql11-­‐results-­‐csv-­‐tsv/  

×