【レポート】

CSS、YAML、XML、JSONのいいとこ取り? 新データフォーマット「RSD」提案

    後藤大地  [2007/08/06]

    ZeraWeb development labは2007年3日(米国時間)、新しいデータフォーマットとして「Really Simple Data(RSD)」を提案した。同フォーマットは現在注目されているデータフォーマットの優れた特徴をまとめたようなフォーマット。CSSからクォートなしのシンプルな表記を、YAMLから高い柔軟性を、XMLからメタデータとの親和性の高さを、JSONから文法の学習の容易性を持ってきていると主張されている。

    ZeraWebのサイトにおいて提案されているサンプルを次に引用する。CSSとJSONのフォーマットを組み合わせたようなフォーマットになっているようだ。

    Example 1: A person object.(ZeraWebからの引用)

    person {
      name { last: Yoder, first: Dan }
      title: Web Applications Architect
      degrees {
        degree {
          school: University Of Michigan
          certificate: [ BS, Computer Science ]
          year: 1989
        }
      }
      born: date( 8/29/1967 )
      objective: ---
    I am looking for a challenging position with an 
    innovative firm doing cutting edge Web apps in
    beautiful Santa Monica, CA. ---
      email: 'dan@zeraweb.com'
    }
    

    Example 2: Enhanced CSS.(ZeraWebからの引用)

    div.blog div.entry { 
      font { weight: bold, size: 10pt }
      click {
        binding: url( /blogs/my-blog )
        action: get, pre-load: true
      }
      hover {
        action: hint
        tip: Click on any entry to view more detail.
      }
    }
    

    すでにRSDをパースするためにJavaScriptで開発されたライブラリrsd.js 1.0が公開されている。同ライブラリを使うにはPrototype、Cruiser Core、Cruiser Parserが必要だ。文法の解説文書、RSDへの変換プログラム、Ruby実装は近いうちに公開するとされている。

    RSDではCSSのように曖昧さを排除するためのクォートが必要ない。整数と浮動小数点は自動的に判定されるほか、URLやデータは明示的に型を指定、最小限のシンタックス、多言語への対応、スカラ配列への対応、リファレンスへの対応、XMLとの親和性の高さなどが特徴として挙げられている。

    同主張がほかのデベロッパやユーザに受け入れられるかは今後の反応にかかっているわけだが、同発表においてRSDは技術に詳しくないユーザに対しても受け入れやすいフォーマットであり、文法が簡単で相互変換が容易であることからプログラマにも利益があり、既存のプログラムとの連系も容易だとされている。

    相互変換が容易であることから、使用するデータフォーマットとしてRSDを採用する敷居はそれほど高いものではないだろう。今のところJavaScriptのパーサしか公開されていないが、いずれ各言語向けにパーサが開発されると推測される。デベロッパやアクティブユーザ、アーキテクトはこの新しいフォーマットを調査しておいた方がよいかもしれない。

    関連サイト

    関連したタグ

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン