初心者のためのホームページ作り 第78号

Web作成支援

メールマガジン「初心者のためのホームページ作り」でお伝えした内容を、「復習」の意味で掲載しています。テキストのみのマガジンと違って、実際のサンプルや画像を交えて解説していますので、理解が深まると思います。なお、疑問点や分からない点がありましたら、遠慮なく メールにてご質問ください。

<第78号> 今週のおさらい
                  毎週金曜日配信 What's New 2003/12/12
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
   ■ HTML講座  第22回 --- 引用
   ■ XML初級講座 第14回 --- 名前空間その2 MathML
HTML講座 --- 引用
時としてコンテンツを作成するうちに、何らかの参考文献やサイトから、関連する項目について引用する場合が発生する場合があります。
HTML4.01では、著作権に抵触しない範囲で引用をする場合の要素が2つ定義されています。今回は、その2つの引用に利用する要素型について解説します。
インラインレベルでの引用
インラインとは、このような文字列のような扱いをすることを意味し、前後上下に余白や改行などは持っていません。そうした要素内容を囲むのをインラインレベル要素と呼びます。
引用を表わすインラインレベル要素は、q要素 です。この要素型は、一部の視覚系ブラウザでは引用を表わす引用符を表示する場合があります。
q要素 の使い方は以下のとおりです。
<p>
 HTML講座は、<q cite="http://www.w3.org/">W3C</q> の仕様に基づいて
 作成しています。
</p>
cite属性 は、引用先を表わしています。引用を用いる場合の属性となりますので、できるだけ記述することをお勧めします。
Mozillaブラウザで表わした q要素の表現 右の図は、Mozillaブラウザで表示されたもので q要素に、引用符が付与されているのが理解できるでしょう。
なお Mozilla 以外に、NetscapeOpera でも、同様の表現となります。
ブロックレベルでの引用
短文の引用を表わすのがインラインレベルの q要素ですが、長文にわたる引用には、ブロックレベルの blockquote要素 を使います。
blockquote要素 を利用する場合の注意点として、この要素内に直接テキストなどを配置することができません。コンテンツは必ずブロックレベル要素内で記述しなければならない点がありますので注意してください。
ただし、文書型定義の宣言が Transitional である場合は、その限りではありません。
blockquote要素は、視覚系ブラウザでは、左右にインデント(字下げ)を持たせて表現しますが、そうしたインデントさせるために使うことは、明らかな文法違反となります。blockquote要素は、あくまで引用を表わす要素であることを覚えてください。
blockquote要素の使い方は以下のとおりです。
<blockquote cite="http://www.w3.org/WAI/">
 <h1>Web Accessibility Initiative 抜粋</h1>
  <ul>
    <li>画像には alt属性を用いて代替を用意する</li>
    <li>色だけに依存しない</li>

        〜 中略 〜

    <li>装置・ハードウェアに依存しない</li>
  </ul>
</blockquote>
実行結果は以下のとおりです。

Web Accessibility Initiative 抜粋

  • 画像には alt属性を用いて代替を用意する
  • 色だけに依存しない
  • 文脈や文書の前後関係を表す情報を提供する
  • テーブルは適切に変換・表現されるように記述する
  • 装置・ハードウェアに依存しない
あなたの Webブラウザではどのように表現されていますか? クリーム色の部分が引用を表わすブロックレベル要素になっています。
インラインレベル要素での引用と同様に、cite属性 を利用して、引用先を明示しておくことをお勧めします。
XML初級講座 --- 名前空間 MathML
今回は、実際に名前空間を利用して、他のスキーマを取り込み Webブラウザで表現したいと思います。前回「第76号」で説明したとおり、名前空間とは、XML文中に、他の規格を利用することができる仕組みです。
今回は、XMLのサブセットである XHTMLを使って、名前空間で MathMLを具現化します。
MathML
MathMLとは、数式を表わすマークアップ言語で、複雑な関数や方程式などの高等数学の表現に利用されます。HTMLは、表現を表わすのには非常によくできているのですが、数式データを表現したり交換することには不得意なマークアップ言語でしたが、1998年 W3C のワーキンググループの手によって正式に勧告し公開されている規格です。
(2003年3月には、MathML2.0 が正式勧告されています。)
XHTMLと名前空間
XHTML(Extensible Hyper Text Markup Language)とは、HTML4.01を XML規格に照らし合わせて再定義されたマークアップ言語です。その名のとおり拡張された機能として「名前空間」を利用することができます。
名前空間では接頭辞を利用することが一般的に知られていますが、今回は XHTMLの要素型と衝突(同じ要素名がある場合のトラブル)がないため、あえて接頭辞を設けません。
なお、MathMLの名前空間接頭辞は m: が規定されています。
XHTMLの拡張子
従来、後方互換ということを意識して XHTML文書の保存で .html を利用してきました。特に普及率の高い MSIEでは、拡張子を .xhtml とした場合、XMLパーサの実装エラーを起こすというバグがある関係で、正しく表示することができません。
MSIEで拡張子 .xhtml を使ったページを表示しようとすると、以下のようなエラーメッセージを表示します。
使用する前にパラメータ エンティティを定義しなければなりません。
リソース 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd' の実行エラーです。
このエラーを回避するために、XHTMLの DTD部分を削除すれば一応表示しますが、それは決して正しい方法ではありません。結果は単にソースが表示されるだけでドラマチックなことは起きません。また、拡張子が .html の場合、その部分の表現は大変お粗末です。
MathMLを利用した XHTMLを正しく表現させるために、Netscape、Mozillaなどの Webブラウザをインストールすることを強く推奨します。サンプルで表現する XHTML文書を正しく閲覧するためにお願いします。(Windows、Macintosh、Linuxバージョンがあります。)
MSIEは、来年 WindowsXP向けに MSOE6.05がリリースされる予定です。おそらくそのパーサの実装では、多くの名前空間を利用することができると考えられています・・・多分?
XHTMLで表現する MathML MSIE不可。詳しい XHTML構文は、今週のマガジン「第78号」をお読みください。
MSIE はこちら 拡張子が .html となっています。
正しく解釈された場合、以下のように表示されます。(Amayaブラウザにて)

Mozillaブラウザで表現したMathMLの実行結果



This page is Valid HTML 4.01! Copyright(C) 2002-2003 banban@scollabo.com