FDH's attractive blog
Amebaでブログを始めよう!

やっぱり最初はHello, worldだね

定番ですが、サンプルとして、TV画面上に文字を表示する単純なBMLを記述してみます。


<?xml version="1.0" encoding="EUC-JP" ?>
<!DOCTYPE bml PUBLIC "+//ARIB STD-B24:1999//DTD BML Document//JA" "http://www.arib.or.jp/B24/DTD/bml_1_1.dtd">
<?bml bml-version="3.0" ?>

<bml>
<head>
<style><![CDATA[
#hello { top: 260px; left: 330px;
width:300px; height:60px;
font-size:30px;
color-index: 7;
}
]]></style>
</head>
<body>
<p id="hello">Hello, World!<br/>これはサンプル</p>
</body>
</bml>

※ サンプル中の全角<>は、本当は半角です・・

BMLは、一応XMLということになっていますので、先頭にDTDなどを記述します。とはいえ、普通は青い部分をコピペで持ってくればよいでしょう。

赤い部分が、タグです。HTMLと似たような感じです。

ただし、<![CDATA[とか、<br/>とか、見慣れない形のタグもあります。XMLをご存知の方であれば問題無いと思いますが、これは、BML独自の記述方法ではなくて、XMLのルールです。

また、文中に日本語が記述されていますが、TVで使用されるBMLの漢字コードはEUC-JPになります。「TVで使用される」と限定したのは、携帯電話で使用されるBMLは、シフトJISになるからです。

BMLとは?

BMLとは、Broadcast Markup Languageの略で、日本国内のデジタル放送のデータ記述言語です。

一応、XML、XHTMLをベースに作成されたということになっていますが、事実上、独立した言語と考えたほうがよいでしょう。

BMLは、タグと属性を定義したものであり、画面レイアウトにはCSS(BML用の機能変更有り)、動的な制御としてECMAScript(同じく、BML用の機能変更あり)を用います。

つまり、データ放送を記述するためには、BML、CSS、ECMAScriptの三つの要素が必要となります。なお、一般的には、BMLというと、BML用のCSSとECMAScriptも含められていることがほとんどです。本ログでBMLと表記された場合も同様に、CSSとECMAScriptを含んでいます。

このテーマについて

BMLの記述方法やなんかを思いついたときに追加していきます。