RBML2 について
 RBML2 は RBML1 の優れた基本構造はそのままに、RBML1 での問題点の改善と新機能の追加を目的に RBML1 を置き換えるべく開発され、2007年10月1日に最初のリリースであるバージョン 2.0 がリリースされました。RBML の最初のリリースであるバージョン 1.0 は2001年12月1日に発表されており、実に5年10ヶ月ぶりのメジャーバージョンアップとなりました。

 RBML2 の開発において最も優先されたのは RBML1 でのネーミングの問題でした。内容が判断しにくい名前、名前が似ていて紛らわしいもの、そしてラベルとプロパティの関連性が分かりにくい名前。例えば RBML1 でのプロパティ file_size とプロパティ file_width は、それぞれ「画像アップロード用フォームの横幅」と「アップロードされた画像のサムネイルの横幅」ですが、直感的にどちらがどちらか判断することは困難です。
また、あるプロパティがどのラベルの属性を定義しているのか、つまりラベルとプロパティの関連性も分かりにくいネーミングになっていました。

 この様なネーミングの問題を改善するため、RBML2 ではラベルはオブジェクトに置き換わり、ラベルという呼称は廃止されました。オブジェクトがあり、そのオブジェクトがそれぞれのプロパティを保持するという、非常に分かりやすい構造になります。複数のプロパティを持つオブジェクトや、プロパティを持たないオブジェクトがありますが、全てのプロパティは必ずいずれかのオブジェクトに属します。
そしてオブジェクトはグループに分類されており、オブジェクト名で内容を判断することが容易になっています。例えば前述のプロパティ file_sizefile_width は、それぞれ FORM.FILE.widthDATA.FILE.max_width という名前になり、より直感的に内容を判断しやすくなっていることがお分かりいただけるでしょう。

 RBML2 ではネーミングの問題が改善されただけでなく、エスケープの実装やコメントに関する仕様が一新され、可読性に優れ洗練されたコーディングが可能になりました。さらに多数のブロックオブジェクトプロパティの追加、そしてコマンドの実装など、より柔軟で強力なカスタマイズが可能な正に新世代のスキン記述言語として生まれ変わりました。