タグ

Turtleに関するtsupoのブックマーク (6)

  • ちょっとしたメモ - JSONではじめるRDF/Turtle(5) - 相互変換のデモ

    JSONとRDF/Turtleのマッピングが何とかものになりそうなので、簡単なデモを用意し試してみることにする。細かいことに目をつぶれば、相互変換はJavascriptでも可能だ。Ajax的にやれば、RDF/Turtleのデータを取り込んでJavascriptで処理したり、JSONデータをRDFトリプルとして操作することも可能だろう。 まず、3回目の型付きノードで取り上げた例を使って変換してみる。上のtextareaのJSONのデータを、「JSON ↓ Turtle」ボタンを使ってRDF/Turtleに変換し、下のtextareaに書き込む。生成したRDF/Turtleは、グラフ図を描いたり、きちんとトリプルが得られているかをパーサーで確認することもできる。 逆に、下のtextareaにRDF/Turtleがあれば、「Turtle ↑ JSON」で逆を行うことも可能だ(生成したJSONデー

    tsupo
    tsupo 2006/03/07
    Ajax的にやれば、RDF/Turtleのデータを取り込んでJavascriptで処理したり、JSONデータをRDFトリプルとして操作することも可能だろう
  • ちょっとしたメモ - JSONではじめるRDF/Turtle(4) - プロパティの反復と主語

    JSONのデータとRDF/Turtleをマッピングするためには、あと少し整理しておくべきポイントがある。JSONで配列として表現されるデータモデルの扱いと、Turtleに空白ノードではなくURI参照を持つ主語を与える方法だ。 JSONで一つのプロパティが複数の値を持つ場合、配列が用いられる。

    tsupo
    tsupo 2006/03/07
    せっかくここまで来たら、何とかこの主語もJSONで表現してしまいたい/どっちみち「正しい」方法はないので、名前空間の時と同じように、特別なプロパティ@aboutを導入して、そこに主語を記述することにしてしまおう
  • ちょっとしたメモ - JSONではじめるRDF/Turtle(3) - 型付ノード

    JSONは基的に「名前:値」のペアでデータを表現するが、RDFは「主語‐述語‐目的語」のトリプルが単位になる。ここで、JSONのオブジェクト記法 {} をRDF/Turtleの [] と読み替え、主語が空白ノードであるトリプルとして扱うことで、両者はあるていど相互に往き来することが可能だ。しかし、リソースに「型」情報を持たせたRDF/XMLの「型付ノード要素」を考えるとき、この読み替えには多少の工夫が必要になる。 改めて、空白ノードを主語にした最初のグラフを見てみよう。 この主語リソースには、2つのプロパティがあるが、特に何らか「型」は持っていない。このノードは、RDF/XMLでは普通に <rdf:Description> 要素で記述される。 [例1] <rdf:Description> <studentid>10108068</studentid> <name>John Barleyc

    tsupo
    tsupo 2006/02/21
    「RDFの型情報をもつ型付ノード」は「Turtleでは型を示すトリプルを素直に加える」/その型情報トリプル記述の簡便法として、 a が用意されている
  • ちょっとしたメモ - JSONではじめるRDF/Turtle(2) - 名前空間

    前回、JSONとRDF/Turtleは親和性が高そうであることを見たが、単純な置き換えではうまく行かなかったり、意味が正確に伝わらなかったりすることもある。ここでは名前空間宣言について考えてみよう。 まず、空白ノードを主語にした前回のグラフをもう一度確認。 この図でも分かるように、RDFでは基的にURI参照でトリプルの名前付けを行うから、簡潔な記述には名前空間接頭辞が欠かせない。XML構文におけるxmlns属性の役割は、Turtleでは @prefix という特別な指示子が担う。デフォルト名前空間URIをhttp://example.org/ns/とすれば、Turtleでは接頭辞を:として@prefixで宣言する。 [例1] @prefix : <http://example.org/ns/> [ :studentid "10108068"; :name "John Barleycorn

    tsupo
    tsupo 2006/02/21
    http://purl.org/net/ns/jsonrdf/ という名前空間を用意してみた / 名前空間をうまく組み込めば、多少なりとも相互運用性のある開かれたデータとしての活用が可能になるかも知れない
  • ちょっとしたメモ - JSONではじめるRDF/Turtle

    JSONのデータ記法は、RDF/Turtleで主語を明記しない(空白ノードである)トリプルの書き方によく似ている。多くの人やサービスがデータをJSONの形で提供してくれれば、これをTurtleに変換してRDFとして扱うこともできるだろうし、JSONに馴染んだ人なら、案外Turtleを(そしてRDFを)抵抗なく受け入れられるのではなかろうか、などと考えたりしていた。 Turtleは、RDFのグラフを、XML構文ではなくて、主語、目的語、述語をシンプルに列挙する形で記述する。たとえば、ある学生の学籍番号をURIに仕立てて主語を名前付けし、その名前を目的語/述語で表すRDFトリプルがあるとしよう。 グラフのXML構文は次のようになる(http://example.org/ns/はデフォルト名前空間として宣言されているとする)。 [例1] <rdf:Description rdf:about="h

    tsupo
    tsupo 2006/02/21
    Turtleは、RDFのグラフを、主語、目的語、述語を列挙する形で記述 / [] と {}、; と , を入れ替え、プロパティ名に付随する : の位置を逆にすれば、TurtleとJSONはまさに瓜二つ
  • ちょっとしたメモ - コメントにするならXMLでなくてもいいのでは

    C.C.ライセンスやウェブログページでは、RDFのメタデータをコメント内に埋め込むという手法がしばしば用いられるわけだが、それなら冗長なXML構文ではなく、Turtleなどを使った方が簡単じゃないかな。ちょうど、はてなのAccount Auto-Discoveryの件もあることだし、少し考えてみよう。 Account Auto-Discoveryの7月28日付の仕様では、次のようなRDF/XMLをコメントとして埋め込む例が示されている。 (例) <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/foaf/0.1/"> <rdf:Description rdf:abou

    tsupo
    tsupo 2005/07/28
    コメントにしてしまうのなら「RDF税」と呼ばれるようなXML構文ではなくこういうコンパクトなものを考えてみて
  • 1