□『セマンティックHTML/XHTML』所収の例データ 作成者:神崎正英 作成日:2009-05-24 Part 3. ---------------------------------------- ■第12章 ---------------------------------------- 例12.1 ------------- 例12.2 ------ http://example.org/tags/opera?scope=global http://example.org/tags/opera#overture 例12.3 ------ Tagging(object, tag, tagger) 例12.4 ------ Tagging(object, tag, tagger, source) 例12.5 (Turtle) --------------- @prefix tags: . @prefix foaf: . tags:tag [ a tags:Tagging ; tags:associatedTag [ tags:tagName "opera" ] , [ tags:tagName "wine" ] ; tags:taggedBy [ foaf:name "タクミ" ; foaf:homepage ] ; tags:taggedOn "2009-03-16T12:25:00Z" ] . 例12.6 (RDFa) ------------- オペラ 例12.7 (RDFa) ------------- オペラ 例12.8 (RDFa) ------------- オペラ 例12.9 (Turtle) --------------- @prefix skos: . @prefix foaf: . skos:closeMatch [ foaf:isPrimaryTopicOf ] . 例12.10 (RDFa) -------------- opera 例12.11 (RDFa/WordPress) ------------------------ category_nicename.'"> ' . $cat->cat_name . ' '; } ?> 例12.12 ------- http://www.flickr.com/photos/tags/apple/clusters/mac-macintosh-macbook 例12.13 (Turtle) ---------------- @prefix wn: . @base . a wn:Word ; wn:sense , , , . ---------------------------------------- ■第13章 ---------------------------------------- 例13.1 (RDFa) -------------

ベートーベン:交響曲第2番、第8番/ノリントン/LCP

... 例13.2 (Turtle) --------------- @prefix dbp: . @prefix foaf: . dbp:born ; dbp:occupation ; foaf:depiction ; foaf:page . 例13.3 (RDFa) -------------

今日は ノリントン の75歳記念演奏会に行った。…

例13.4 (RDFa) -------------

今日は ノリントン の75歳記念演奏会に行った。…

例13.5 (RDFa) -------------

今日は ポチ と一緒に少し遠くまで散歩した。

例13.6 (RDFa) -------------

ここでは についての愉快な話題を取り上げていきます。

例13.7 (RDFa) -------------

マティーニといってもいろいろあるが、バーRUTSUの RUTSUオリジナル・マティーニは一味違う。…

例13.8 (RDFa) -------------

今日は ポチ と一緒に少し遠くまで散歩した。

例13.9 (RDFa) -------------

今日、 東京駅で行なわれた 駅コンで…

例13.10 (Turtle) ---------------- @prefix gn: . @prefix geo: . a gn:Feature ; gn:featureClass gn:S ; gn:featureCode gn:S.RSTN ; gn:name "Tokyo" ; gn:alternateName "Tokyo-eki", "東京駅"@ja ; gn:inCountry ; gn:locationMap ; gn:nearbyFeatures ; gn:parentFeature ; geo:lat "35.6811259942652" ; geo:long "139.76705789566" . 例13.11 (Turtle) ---------------- [] rdfs:label "赤羽橋" ; geo:lat "35.65484" ; geo:long "139.74579" ; gn:neaby . gn:name "Shiba-Shimboricho" ; gn:parentFeature . gn:name "Odawaracho" ; gn:parentFeature . gn:name "Tokyo-to" ; gn:parentFeature . 例13.12 (RDFa) --------------

今日は 東京タワー に行ってきた…

例13.13 ------- urn:isbn:9784627829312 例13.14 ------- http://xisbn.worldcat.org/webservices/xid/isbn/9784627829312/metadata?fl=* 例13.15 ------- http://www4.wiwiss.fu-berlin.de/bookmashup/books/006251587X 例13.16 ------- http://www.kanzaki.com/ns/isbn/9784627829312 例13.17 (RDFa) --------------

RDF/OWL入門 によれば…

例13.18 (Turtle) ---------------- @prefix frbr: . @prefix foaf: . @prefix dct: . a frbr:Work ; #作品 dct:creator ; frbr:realization [ a frbr:Expression ; #表現形 dct:creator [ foaf:isPrimaryTopicOf ] ; frbr:embodiment #体現形 ] . 例13.19 (Turtle) ---------------- dct:creator . 例13.20 (Turtle) ---------------- @prefix frbr: . @prefix foaf: . a frbr:Work ; frbr:creator ; frbr:realization [ a frbr:Expression ; frbr:realizer [ foaf:isPrimaryTopicOf ] ; frbr:embodiment ] . 例13.21 ------- http://dbtune.org/musicbrainz/resource/artist/2403f8c6-8ccc-48d6-977f-de0baa2d6fed 例13.22 (Turtle) ---------------- @prefix mo: . @prefix owl: . @prefix artist: . @prefix mbartist: . artist:2403f8c6-8ccc-48d6-977f-de0baa2d6fed mo:musicbrainz mbartist:2403f8c6-8ccc-48d6-977f-de0baa2d6fed ; owl:sameAs . mo:conductor artist:2403f8c6-8ccc-48d6-977f-de0baa2d6fed . 例13.23 ------- http://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%9A%E3%83%A9 例13.24 ------- http://ja.wikipedia.org/wiki/オペラ 例13.25 ------- http://example.org/term/ベト5 http://example.org/term/ヘ゛ト5 #結合文字(ヘ+゛)および全角数字 http://example.org/term/%E3%83%99%E3%83%885 #URI=パーセント・エンコード http://example.org/term/%E3%83%99%E3%83%88%35 #最後の数字5も%35に http://EXAMPLE.ORG/term/%e3%83%99%e3%83%885 #ホストが大文字、パーセント・エンコードが小文字 例13.26 ------- http://example.org/term/オペラ_(ブラウザ) http://example.org/term/オペラ_[ブラウザ] http://example.org/term/オペラ_{ブラウザ} 例13.27 ------- ex:0123#fragment #数字で始まる、フラグメントを含む ex:path/myfile.html #スラッシュを含む ex:オペラ(ブラウザ) #全角括弧を含む 例13.28 (Turtle) ---------------- dct:subject [ foaf:isPrimaryTopicOf ] . 例13.29 (Turtle) ---------------- dct:subject ndlsh:セマンティックウェブ . 例13.30 (RDFa) -------------- ...

ここでは主として セマンティック・ウェブ の話題をとりあげます。…

---------------------------------------- ■第14章 ---------------------------------------- 例14.1 ------ xsltproc http://purl.org/NET/erdf/extract-rdf.xsl http://www.example.org/erdf.html 例14.2 ------ xsltproc http://www.w3.org/2006/vcard/hcard2rdf.xsl http://microformats.org/wiki/hcard 例14.3 ------ http://www.w3.org/2007/08/grddl/?docAddr=http://microformats.org/wiki/hcard 例14.4 ------ http://triplr.org/rdf/microformats.org/wiki/hcard 例14.5 ------ http://www.w3.org/2007/08/pyRdfa/extract?uri=http://creativecommons.org/licenses/by/3.0/ 例14.6 (RDFa) -------------

今日、 タクミ を誘って演奏会に行った。

例14.7 (RDFa) -------------

今日、 タクミを誘って演奏会に行った。

例14.8 (Turtle) --------------- @prefix foaf: . _:me a foaf:Person ; foaf:name "神崎正英" ; foaf:homepage ; foaf:knows _:takumi , _:satoru . _:takumi foaf:name "タクミ" ; foaf:homepage . _:satoru foaf:name "サトル" ; foaf:homepage . 例14.9 ------ ?who foaf:name ?name ; foaf:homepage ?homepage . 例14.10 (SPARQL) ---------------- PREFIX foaf: SELECT ?name ?homepage WHERE{ ?who foaf:name ?name ; foaf:homepage ?homepage . } 例14.11 ------- サトル http://www.example.org/satoru/ ... 例14.12 (SPARQL) ---------------- PREFIX foaf: PREFIX dct: SELECT ?page ?name WHERE{ ?page dct:creator ?who . ?who foaf:name ?name . } 例14.13 (SPARQL) ---------------- PREFIX foaf: PREFIX dct: SELECT ?page ?name WHERE{ ?page dct:creator [ foaf:name ?name ] . } 例14.14 (SPARQL) ---------------- PREFIX foaf: PREFIX skos: PREFIX dct: SELECT ?page WHERE{ ?page dct:subject [ skos:closeMatch [ foaf:isPrimaryTopicOf ] ] . } 例14.15 (SPARQL) ---------------- WHERE{ ?who a ?type ; foaf:name ?name ; foaf:homepage ?homepage . #1人しかマッチしない } 例14.16 (SPARQL) ---------------- WHERE{ ?who foaf:name ?name ; foaf:homepage ?homepage . OPTIONAL { ?who a ?type } } 例14.17 (Turtle) ---------------- @prefix foaf: . _:takumi foaf:name "タクミ" ; foaf:homepage . _:satoru foaf:name "サトル" ; foaf:mbox . 例14.18 (SPARQL) ---------------- PREFIX foaf: SELECT ?name ?homepage ?mbox WHERE{ {?who foaf:name ?name ; foaf:homepage ?homepage } UNION {?who foaf:name ?name ; foaf:mbox ?mbox } } 例14.19 (Turtle) ---------------- @prefix dct: . @prefix rss: . @prefix dbr: . a rss:item ; rss:title "オペラ観劇とワイン" ; dct:date "2009-03-15" ; dct:subject dbr:Opera, dbr:Wine . a rss:item ; rss:title "SPARQLのはじめの一歩" ; dct:date "2009-03-18" ; dct:subject dbr:Semantic_Web . 例14.20 (SPARQL) ---------------- PREFIX dct: PREFIX rss: PREFIX dbr: SELECT * WHERE{ ?item rss:title ?title ; dct:subject ?subject . FILTER (?subject = dbr:Opera || ?subject = dbr:Semantic_Web) } 例14.21 (SPARQL) ---------------- WHERE{ ?item rss:title ?title ; dct:date ?date . FILTER (?date < "2009-03-16") } 例14.22 (SPARQL) ---------------- FILTER (str(?date) < "2009-03-16") 例14.23 (SPARQL) ---------------- FILTER regex(?title ,"SPARQL") 例14.24 (SPARQL) ---------------- PREFIX foaf: SELECT ?name ?homepage FROM WHERE{ ?who foaf:name ?name ; foaf:homepage ?homepage . } 例14.25 (SPARQL) ---------------- PREFIX foaf: SELECT ?name ?homepage ?mbox ?src FROM NAMED FROM NAMED WHERE{ GRAPH ?src { {?who foaf:name ?name ; foaf:homepage ?homepage } UNION {?who foaf:name ?name ; foaf:mbox ?mbox } } } ☆図14.11のSPARQL ----------------- PREFIX rss: PREFIX dc: SELECT ?title ?date FROM WHERE{ ?item rss:title ?title ; dc:date ?date ; dc:subject "国際" . } 例14.26 (SPARQL) ---------------- PREFIX dbp: PREFIX dbr: SELECT * WHERE{ ?maestro dbp:name ?name ; dbp:born dbr:England ; dbp:occupation dbr:Conducting . } 例14.27 ------- http://dbpedia.org/sparql/?query=PREFIX+dbp%3A+%3Chttp... 例14.28 ------- include_once("$lib_path/ARC2.php"); $parser = ARC2::getRDFParser(); $parser->parse($data_uri); $triples = $parser->getTriples(); 例14.29 ------- print $parser->toRDFXML($triples); 例14.30 ------- print "\n"; foreach($triples as $t){ print " \n"; } print "
$t[s]$t[p]$t[o]
"; 例14.31 ------- array( 'http://example.org/masaka/2009/03/15' => array( 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type' => array( 'http://purl.org/rss/1.0/item'), 'http://purl.org/rss/1.0/title' => array( 'オペラ観劇とワイン'), 'http://purl.org/dc/terms/date' => array( '2009-03-15'), 'http://purl.org/dc/terms/subject' => array( 'http://dbpedia.org/resource/Opera', 'http://dbpedia.org/resource/Wine') ), ... ); 例14.32 (Turtle) ---------------- //(1)準備 include_once("$lib_path/ARC2.php"); $parser = ARC2::getRDFParser(); $parser->parse("http://www3.asahi.com/rss/index.rdf"); $triples = $parser->getTriples(); //(2)プロパティURIを変数定義 $dc_subject = "http://purl.org/dc/elements/1.1/subject"; $rss_title = "http://purl.org/rss/1.0/title"; //(3)dc:subjectが"国際"ならばその主語URIを$itemに配列として登録 foreach($triples as $t){ if($t[p]==$dc_subject && $t[o]=="国際") $items[] = $t[s]; } //(4)インデクス配列を作る $index = ARC2::getSimpleIndex($triples, true); print "\n"; 例14.33 ------- //共通の基本準備 include_once("$lib_path/ARC2.php"); $config = array( 'db_name' => 'ARCDB', 'db_user' => $user, 'db_pwd' => $pwd, 'store_name' => $table_prefix ); $store = ARC2::getStore($config); if (!$store->isSetUp()) $store->setUp(); //初回のテーブル設定など //データ取り込み $r = $store->query("LOAD <$data_uri>"); if($err = $store->getErrors()) print_r($err); 例14.34 ------- //共通の基本準備は同じ //$qに図14.11と同じクエリ(FROM句を除く)を格納したとする $q =<< PREFIX dc: SELECT * WHERE{ ?item rss:title ?title ; dc:date ?date ; dc:subject "国際" . } EOQ; $r = $store->query($q); //データベースに対してSELECTクエリ発行 if($err = $store->getErrors()) { //エラー処理 } $rows = $r['result']['rows']; print "
    \n"; foreach($rows as $row){ print "
  • $row[title]
  • \n"; } print "
\n"; 例14.35 ------- include_once("$lib_path/ARC2.php"); $config = array( 'remote_store_endpoint' => 'http://dbpedia.org/sparql' ); $store = ARC2::getRemoteStore($config); if (!$store->isSetUp()) $store->setUp(); //$q = ...; //例14.26のクエリ $q =<< PREFIX dbr: SELECT * WHERE{ ?maestro dbp:name ?name ; dbp:born dbr:England ; dbp:occupation dbr:Conducting . } EOQ; $r = $store->query($q); $rows = $r['result']['rows']; print "\n"; foreach($rows as $row){ print "\n"; } print "
$row[maestro]$row[name]
\n"; 例14.36 ------- 例14.37 ------- var myrdf = $.rdf() .base('http://www.example.org/') .prefix('foaf', 'http://xmlns.com/foaf/0.1/') .add(' foaf:mbox .') .add(' foaf:nick "masaka" .'); 例14.38 (Turtle) ---------------- @prefix foaf: . foaf:mbox . foaf:mbox . 例14.39 ------- //例14.37から続く $.ajax({ "url":"foaf.ttl", "success":function(data){ var triples = data.split(/\r\n/); for(var i in triples){ if(triples[i].match(/^@prefix\s+(.+?):\s+<(.+?)>/)){ myrdf.prefix(RegExp.$1, RegExp.$2); }else{ if(triples[i]) myrdf.add(triples[i]); } } }, "async":false }); 例14.40 (RDFa) --------------

今日、 タクミ サトル を誘って演奏会に行った。

例14.41 ------- //例14.39から続く myrdf = myrdf.add($('#foaf').rdf()); 例14.42 (Turtle) ---------------- @prefix foaf: . foaf:mbox ; foaf:nick "masaka" . foaf:name "神崎正英" ; foaf:knows , . foaf:mbox ; foaf:homepgae ; foaf:name "タクミ" . foaf:mbox ; foaf:homepgae ; foaf:name "サトル" . 例14.43 ------- //例14.41から続く var qres = myrdf .where('?who foaf:name ?name') .where('?who foaf:mbox ?mbox') .optional('?who foaf:homepage ?homepage') .optional('?who foaf:nick ?nick') 例14.44 ------- //例14.43から続く qres .each(function(){ var name = this.name.value, mbox = this.mbox.uri, homepage = this.homepage === undefined ? '' : this.homepage.uri; nick = this.nick === undefined ? '' : this.nick.value; $('#res') .append('' + name + '' + mbox + '' + homepage + '' + nick + ''); }); ---------------------------------------- ■Appendix ---------------------------------------- 例A1.1 (Turtle) --------------- [] a cal:Valarm ; cal:action "AUDIO" ; cal:trigger [ rdf:value "-PT15M"^^xsd:duration ; cal:related "START" ] . 例A3.1 ------ 例A3.2 ------

作成日:2008-04-01、 更新日:2009-01-10

例A3.3 ------

XHTMLからメタデータを取り出す標準方法のひとつに GRDDL があります。…

例A3.4 ------

1月12日に横浜みなとみらいホールで開催される 第2回チリェージォ演奏会は、…

例A3.5 ------

今日 ロジャー・ノリントンの演奏を聴いた。…

例A3.6 ------

今日 ロジャー・ノリントンの演奏を聴いた。…

例A3.7 ------ metaprofを使う

今日提出したレポート 「プロファイルの可能性の中心」では、 GRDDL実験的な語彙の使い方について述べている。

例A3.8 (Turtle) --------------- @prefix rdfs: . @prefix dc: . @prefix dct: . @prefix ex: . @prefix foaf: . @prefix owl: . <> a foaf:Document ; dc:title "metaprofを使う" ; foaf:topic [ a foaf:Document ; dct:title "プロファイルの可能性の中心" ; dct:dateSubmitted "2009-03-01" ; ex:test "実験的な語彙" ; owl:target ] . rdfs:label "GRDDL" . 例A3.9 (Turtle) --------------- @prefix foaf: . @prefix contact: . @prefix whois: . @prefix geo: . [] a foaf:Person ; foaf:name "Masahide Kanzaki" whois:stage [ a whois:Stage whois:since "1987" ; whois:until "1989" ; whois:what [ foaf:homepage ] ; whois:where [ a whois:Place ; contact:city "New York" ; contact:country "U.S.A." ; geo:lat "40.794" ; geo:long "-73.972" ] ] . 例A3.10 (Turtle) ---------------- @prefix : . <> a :JavaScript ; :shortdesc "general script to edit RDF/XML graph" ; :created "2005-06-09" ; :release [:revision "0.5" ; :created "2005-07-09"] ; :author [:name "M. Kanzaki"; :homepage ] ; :license ; :dependencies "none" . 例A3.11 (Turtle) ---------------- @prefix m: . @prefix foaf: . @prefix dc: . @prefix cal: . @prefix ven: . [] a m:Concert ; m:conductor [ a m:Conductor ; foaf:name "時任康文" ] ; m:performer [ a m:Ensemble ; foaf:name "フィオリ・ディ・チリェージォ合奏団" ] ; m:program [ a m:Orchestral_Work ; dc:title "ディベルティメントヘ長調 K.138" ; m:composer [ a m:Composer ; foaf:name "モーツァルト" ] ] , [ a m:Suite ; dc:title "組曲「ホルベアの時代より」 Op.40" ; m:composer [ a m:Composer ; foaf:name "グリーグ" ] ] , [ a m:Orchestral_Work ; dc:title "ミューズを率いるアポロ" ; m:composer [ a m:Composer ; foaf:name "ストラヴィンスキー" ] ] ; m:venue ven:横浜みなとみらいホール ; cal:dtend "2009-01-12T07:00:00Z" ; cal:dtstart "2009-01-12T05:00:00Z" . 例A3.12 (RDFa) --------------

マサカ・トリオは、 タクミ Vn 神崎正英 Cb サトル Pf の3人で構成されるアンサンブルです。

例A3.13 (Turtle) ---------------- @prefix foaf: . @prefix m: . a foaf:Group ; foaf:name "マサカ・トリオ" ; foaf:member [ m:plays [ a m:Piano ] ; foaf:homepage ; foaf:name "サトル" ] , [ m:plays [ a m:Violin ] ; foaf:homepage ; foaf:name "タクミ" ] , [ m:plays [ a m:Contrabass ] ; foaf:homepage ; foaf:name "神崎正英" ] .