RDF and FOAF

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    2 Favorites

    RDF and FOAF - Presentation Transcript

    1. RDF・FOAF 2007/03/15 ウノウ株式会社 駒形真幸 <komagata@unoh.net>
    2. FOAFとは? Friend Of A Friend ● プロフィールや知り合いなど、人に関する情報 ●  を表すためのRDFの語彙の一つ 知り合いA 知り合いB 自分
    3. RDFとは? Resource Description Framework ● WWW上のリソースとリソースの関係を表現す ●  るためのモデル WWWの提案者、ティム・バーナーズ=リーが ●  提唱した。
    4. RDFとは?(2) 身近なところではRSS1.0もRDF(2.0は違う) ● <?xml version="1.0" encoding="utf-8" ?> <rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="ja"> <channel rdf:about="http://d.hatena.ne.jp/m-komagata/rss"> <title>m-komagataの日記</title> <link>http://d.hatena.ne.jp/m-komagata/</link> <description>m-komagataの日記</description> <dc:date>2006-11-07T20:35:16+09:00</dc:date> <items> (後略)
    5. 何故RDF? どんな関係? 文書 文書 リンク HTMLのリンクは意味が付いてない。 ●  (どういう関係を持ってるのかわからない)
    6. 何故RDF?(2) 要約 文章 文章 RDFでは関係を表現できる ● WWWは元々、関係の情報付きの意味ネットワーク ●  (セマンティック・ウェブ)として設計された
    7. RDFの基本要素 リソース ● Web上で識別できるもの全て。(URI参照で表現されます) ステートメント(文) ● リソースの主語、述語、目的語の3つの組み合わせ  (トリプル) グラフ ● ステートメントの集合  ※RDFのグラフは様々な構文(XMLやN-Triplesなど)で表現できる
    8. RDFの基本概念 ステートメント foaf:weblog urn:komagata http://p0t.jp/mt/ 主語 述語 目的語 リソースを主語、述語、目的語としてステートメントを作れる ● 目的語は別のステートメントの主語になれる。 ●
    9. RDFの基本概念(2) ステートメント リテラル dc:title http://p0t.jp/mt/ p0t 主語 述語 目的語 目的語はURI参照だけでなく、文字列自身(リテラル)とする ●  ことが可能
    10. RDFの基本概念(3) aaa A bbb C aaa B A bbb C B eee B eee D D 世界のどこで記述されたトリプルでも同じURIを持っていれ ● ばひとつのグラフに併合できる。 意味を機械が理解できるRDFで情報を記述することで ●  Web全体を分散型データベースとして扱おうという野望。
    11. <aaa> <bbb> aaa A <ccc> bbb C </ccc> B </bbb> </aaa> ここまでがRDFのモデルの話。 ここからは具体的なXMLでの記述方法の話です。
    12. RDFトリプルのXML表現 foaf:weblog urn:komagata http://p0t.jp/mt/ <rdf:Description> --- 主語ノード <foaf:weblog> --- 述語ノード <rdf:Description> --- 目的語ノード </rdf:Description> </foaf:weblog> </rdf:Description> XML表現では、主語、述語はrdf:Descriptionで記述します ● 述語はその名前の要素として記述します ●
    13. RDFトリプルのXML表現(2) foaf:weblog urn:komagata http://p0t.jp/mt/ <rdf:Description rdf:about=”urn:komagata”> <foaf:weblog> <rdf:Description rdf:about=”http://p0t.jp/mt/”> </rdf:Description> </foaf:weblog> </rdf:Description> 主語、目的語の参照先はrdf:about要素で記述します ●
    14. RDFトリプルのXML表現(3) foaf:weblog urn:komagata http://p0t.jp/mt/ <rdf:Description rdf:about=”urn:komagata”> <foaf:weblog rdf:resource=”http://p0t.jp/mt/” /> </rdf:Description> 子ノードを持たない要素はrdf:resource属性を使って省略表 ● 記できます
    15. RDFトリプルのXML表現(4) dc:title http://p0t.jp/mt/ p0t <rdf:Description rdf:about=”urn:komagata”> <dc:title>p0t</dc:title> </rdf:Description> 目的語がリテラルの場合はrdf:Description要素を省略して ● 述語ノードのプロパティとして記述できます
    16. RDFトリプルのXML表現(5) dc:title foaf:weblog http://p0t.jp/mt/ p0t urn:komagata <rdf:RDF> <rdf:Description rdf:about=”urn:komagata”> <foaf:weblog> <rdf:Description rdf:about=”http://p0t.jp/mt/”> <dc:title>p0t</dc:title> </rdf:Description> </foaf:weblog> </rdf:Description> </rdf:RDF> 複数のトリプルもこれまでの組み合わせで表現できます。 ● ● RDF文章としてはrdf:RDFノードをrootノードにします
    17. FOAFの語彙 FOAFの名前空間は “http://xmlns.com/foaf/0.1/” です ● ● 一般的にfoaf:という接頭辞にマッピングして使います <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:foaf="http://xmlns.com/foaf/0.1/"> <foaf:Person rdf:nodeID="me"> <foaf:nick>komagata</foaf:nick> <foaf:bio:olb>働いたら負けだと思っている</foaf:bio:olb> <foaf:weblog rdf:resource="http://komagata.vox.com/"/> <foaf:knows> <foaf:Person> <foaf:nick>kawadu</foaf:nick> (後略)
    18. FOAFの語彙(2) 主な述語(主語はfoaf:Personなど)
    19. FOAFの語彙(3) foaf:knowsで知人を表現できるのが面白いところ ● <foaf:knows> <foaf:Person> <foaf:nick>kawadu</foaf:nick> <foaf:weblog rdf:resource="http://kawadu.vox.com/" /> </foaf:Person> </foaf:knows> <foaf:knows> <foaf:Person> <foaf:nick>yoshida</foaf:nick> <foaf:weblog rdf:resource="http://yoshida.vox.com/" /> </foaf:Person> </foaf:knows>
    20. RDFパーサーいろいろ Redland ● CのRDFパーサー。Java, Perl, PHP, Python, Rubyなど 色んな言語向けのBindingがある。 RAP – RDF API for PHP ● Pure PHPのRDFパーサー。画像でRDFグラフを出力したり  機能がやたらある。 Hercules ●  JavascriptのObject/RDFマッパー。E4Xっぽい手軽さで  SPARQL(後述)クエリを生成してObjectにマッピングしてく  れる。
    21. RAPでVOXのFOAFを検索 define('RDFAPI_INCLUDE_DIR', 'lib/rdfapi-php/api/'); include_once RDFAPI_INCLUDE_DIR.'RdfAPI.php'; include_once RDFAPI_INCLUDE_DIR.'syntax/RdfParser.php'; include_once RDFAPI_INCLUDE_DIR.'vocabulary/FOAF_C.php'; $uri = 'http://komagata.vox.com/profile/foaf.rdf'; $model = ModelFactory::getDefaultModel(); $model->load($uri); $bio = new Resource('http://purl.org/vocab/bio/0.1/olb'); $result = $model->find(null, $bio, null); // Subject, Predicate, Object print_r($result->triples); Model#findメソッドに主語、述語、目的語のResourceを ●  与えて検索する(返り値はStatement)
    22. RDFのパース FOAFをパースしようと思っていきなり手を出すと、何故 ● こんなAPIになってるのかさっぱり理解できない。 RDFのモデルを知ってると非常にわかりやすい。 ● XMLのパースじゃなくて、RDFグラフに対する検索なので ●  柔軟な検索が可能。 もっと本格的な問い合わせはSPARQLというRDF問い合わ ● せ言語を使う。  (RDBに対するSQLやODBに対するOQLみたいなもの)
    23. FOAFのこれまで (2004年頃)RSSみたいに流行るかと期待されたが流行ら ●  なかった ブログシステムがRSSを吐いてくれたようにFOAFを ●  吐いてくれるシステムがあまりなかった。 FOAFはSNSに最適かと思われたが、SNSが閉鎖的な ●  システムに終始し、まったく対応しなかった。(がっかり・・・) (上記理由で)FOAFファイル自体が少ないためにクライアン ●  トを作ってもあまり役に立たなかった。
    24. FOAFの現在~ VOXなど、権限管理機能を高めつつ、公開するところは ●  公開してくようなSNSが増え始めた。 API公開が流行 ● スクレイピング技術普及で第三者がメタデータを勝手に作っ ●  て配布したりしやすくなった あとは便利 or 面白いクライアントがあれば・・・ ●
    25. FOAF Client Widget(ブログパーツ)はどうだろうか。 ● 丁度Offline/Online問わないWidgetの標準仕様策定が ●  進んでいる。(Netbives Universal Widget API) 小粒度のコンテンツ形態として普及するかもしれない ● FOAF Browser Widgetを作ってみました。 ●  VOX、はてなダイアリ、TypeKey、MixiのFOAFを  それぞれ表示しています。(Mixi FOAFは自前)  一端JSONPに変換しているのでどこにでも張れます。
    26. FOAF Widget
    27. FOAF Widget on ジオシティーズ
    28. 参考資料 セマンティック・ウェブのためのRDF/OWL 入門 ● http://www.amazon.co.jp/exec/obidos/ASIN/4627829310/p0t- 22/ref=nosim Redland ● http://librdf.org/ RAP – RDF API fo PHP ● http://sites.wiwiss.fu-berlin.de/suhl/bizer/rdfapi/ Hercules ● http://www.arielworks.net/works/codeyard/hercules Netvibes UWA ● http://dev.netvibes.com/

    + komagatakomagata, 3 years ago

    custom

    2898 views, 2 favs, 2 embeds more stats

    RDF and FOAF for Semantic Web.

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 2898
      • 2770 on SlideShare
      • 128 from embeds
    • Comments 0
    • Favorites 2
    • Downloads 0
    Most viewed embeds
    • 127 views on http://labs.unoh.net
    • 1 views on http://danbri.org

    more

    All embeds
    • 127 views on http://labs.unoh.net
    • 1 views on http://danbri.org

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories