<blockquote>要素(段落単位での引用)。

HTML 5 に於ける、段落単位での引用となる<blockquote>要素について解説します。

<blockquote>要素の概要。

HTML 5 に於ける<blockquote>要素は、HTML 4/XHTML 1同様、ブロック単位での引用として定義されております。

但し、HTML 5 ではブロックと言う概念がなくなったので、段落単位との引用と言う事になります。

<blockquote>要素の定義。

カテゴリ
要素が置ける箇所
要素の内容モデル
要素で定義された属性
グローバル属性の他、以下の属性があります。
cite 属性
引用元のURIです。
  • 引用元がURIを持たない場合、cite 属性で引用元を明示する事は出来ません。

<blockquote>要素の詳細。

HTML 5 に於ける<blockquote>要素は、HTML 4/XHTML 1 同様、ブロック単位での引用となります。

但し、HTML 5 ではブロックレヴェル要素と言う概念がなくなったので、段落単位での引用と言う事になります。

<q>要素が語句単位での引用であるのに対し、<blockqoute>要素は段落単位での引用となります。

内容は他の文書類から引用したものとならなければなりません。

引用元を示すには。

  • この節には、制作者の私見が入ります。

通常、引用する場合には、その引用元を示す必要があります。

特に引用元がURIを持つのであれば、そのURIを cite 属性の値とする事が出来ます。

ウェブ文書であれば、http: などのスキーム名で始まるURLが cite 属性の値として用いられますが、一般の書籍で ISBN コードを附与されているものであれば、urn:isbn: スキーム名に続いてISBNコードを与える事が出来ます。

一方、引用元がURIを持たない場合、例えば雑誌, 新聞, 同人誌, 私的な配布物或いは口頭などでの発言などの場合は、cite 属性とする事が出来ませんので、この場合は当該要素への附加情報である title 属性で表す事も考えられます。

但し、実際には幾つかの理由から、当該<blockquote>要素の前か後ろに、テキストの形で引用元を示しておく事を、個人的に強くお勧めします(後述)。

<blockquote>要素の例。

引用元がウェブ文書の場合
<p>HTML 4/XHTML 1の時代には、以下のような事が言われておりました(<cite>HTML 4.01仕様書</cite>からの引用):</p>
<blockquote xml:lang="en-us" lang="en-us" cite="http://www.w3.org/TR/html401/struct/text.html#h-9.2.2">
    <p>
        However, as some authors have used BLOCKQUOTE merely
        as a mechanism to indent text,
        in order to preserve the intention of the authors,
        user agents should not insert quotation marks
        in the default style.
        </p>
    </blockquote>
<p>CSSが普及する前は、余白を取る方法がなかったため、&lt;blockquote&gt;要素が上下左右に余白を取るスタイルを採用しているウブラウザが大多数であった事に目を付け、引用でもないのに&lt;blockquote&gt;要素とする事が横行していたのです。</p>
<p>勿論、これは正しいマークアップでは決してありません。そもそも、&lt;blockquote&gt;要素について、上下左右に余白を取るスタイルを採用しなければならない言う決まりは当時からなかったので、全く異なったスタイルを採用するブラウザが現れても文句は言えません。</p>
<p>しかし、今日では、CSSも普及しましたので、このようなマークアップは殆ど見られなくなりました。</p>
引用元が雑誌など、URIを持たない場合
<p>堀北真希ちゃんはかつて<cite>明星平成20年 6月号</cite>でのインタヴューで、以下のように言っておりました。</p>
<blockquote title="明星平成20年 6月号より。強調は筆者。">
    <p>目が寄っているから、<mark>なかなか合うメガネが見つからない</mark>のが悩みだったんです。…</p>
    </blockquote>

ここでは、引用元と文書作成者が強調した事実を title 属性で明示しております。

注意事項。

内容モデルについて。

  • この節には、制作者の私見が入ります。

<blockquote>要素の内容モデルは、フロウ内容要素となっております。

フレージング内容要素は全てフロウ内容要素なので、従ってフレージング内容要素、取り分け<p>要素など段落としてマークアップされていない生テキストなども<blockquote>要素の直下に置いて問題はない事になります。

ですが、やはり段落単位での引用である事を考慮すると、<p>要素など、従来のブロックレヴェル要素としてマークアップされたものを<blockquote>要素の直下に置くのが好ましいと言えます。

引用元に於ける見出しの扱い。

HTML 5 に於いて、<blockquote>要素はセクショニング・ルート要素です。

このため、<blockquote>要素内の見出しは、当該要素外の見出しの等級関係とは無関係となります。

ですから、見出しを伴うウェブ文書を引用する場合であっても、HTML 5では引用先に合わせた見出しの等級付けをし直す必要はありません。

間違った<blockquote>要素の使い方。

かつて CSS が普及する前の時代、多くのグラフィカルなユーザエージェントが<blockquote>要素のスタイルとして上下左右に余白を取るスタイルを採用している事に目を付け、<blockquote>要素を引用でもないのに利用する事が横行しておりました。

今日では CSS が普及しており、そのようなマークアップは殆ど見られなくなりましたが、念のために書いておきます。

引用でもないのに<blockquote>要素とするのは、音声出力環境などでは閲覧の妨げになる恐れがありますので絶対にやめてください。

音声出力環境の場合、引用箇所の前後で、以下引用です或いは引用はここまでと言った合図を出す事が考えられます。

一方、音声出力でウェブを閲覧している方は、速読方法として引用などの不要な箇所をスキップすると言う方法があります。

引用でもないのに<blockquote>要素としてしまうと、このような速読法を採っている閲覧者は、尽く本文をスキップしてしまい、結果何も読めなくなってしまうかも知れません。

ですから、引用でもないのに、余白を取るためだけに<blockquote>要素とするのは、絶対にやめましょう。

引用元を示す事について。

  • この節には、制作者の私見が含まれます。

HTMLでは、引用元を示すのに cite 属性が定められておりますが、併せて引用の前かあとに、引用元をテキストとして記述する事を強くお勧めします

例えば、<blockquote>要素の前か後ろに、<cite>要素としてマークアップした引用元の題名を示し、可能なら引用元へリンクするなどと言う方法が考えられます。

これは、以下のような理由があります。

もともと、cite 属性を表示するスタイルを採っていないユーザエージェントが多い
cite 属性自体、HTML 4 で初めて導入された後発の属性です。

ユーザエージェント自体は HTML 4 の勧告より前からあり、このためデフォルトのスタイルで対応する事が出来ませんでした。

つまり、cite 属性でしか引用元を示していない場合、スタイルシートで cite 属性を出力させるようにしないと、引用元を明示していないと誤認される恐れがあります。

cite 属性の表示に対応していないユーザエージェントもある
Lynx など、CSS に対応していないユーザエージェントでは、どのようにスタイルシートを書いても、出力させる事は出来ません。

HTML文書のソースファイルを見ればいいだろと言う反論もあるでしょうが、本来ウェブ文書はソースファイルを見る事を前提としていないので、適切な反論ではありません

ソースが見られないユーザエージェントがあったとしても、仕様上は何の問題もないからです。

  • 読み込んだ HTML 文書のソースを何時でも見られるようにしろと言う仕様書を制作者はこれまで一度たりとも見た事がありません。

また、かつては、インターネットエクスプローラ 7.0まででは、CSS の:before 擬似要素:after 擬似要素などに対応しておらず、このため cite 属性値を出力させられず、そのようなブラウザが多数あった頃は当然それらに対する配慮としても必要でした。

その事に対し、そんなのは数の暴力だと言うのも当て嵌まりません

何故なら、インターネットエクスプローラのそのようなヴァージョンが過去のものとなったとしても、Lynx など CSS に対応していない現役のブラウザがまだあるからです。

それとも、Lynx などへの配慮など不要だと言いたいのですか?

或いは、Lynx で見る者は、引用元を認識出来なくても文句を言ってはいけないと言いたいのですか?

CSS 自体がウェブには必須の技術ではない
ウェブに最低限必要な文書作成者向けの技術は、HTMLだけです。

だからこそ、Lynx のような CSS 非対応のユーザエージェントも存在し得るのです。

CSS が必須の技術なら、Lynx は配慮する事など不要な切り捨てても構わない欠陥ブラウザと言う事になります。

確かに、CSS を用いないウェブ文書は殆ど見なくなったとは言え、文書作成者は必ずしもウェブで公開する文書に CSS を使わなければいけないと言う事もないのです。

だからこそ、CSS に対応していない環境でも適切に読めるようなマークアップが求められているのです。

当然、引用元のテキストでの明示も、その中に含まれる筈です。

そもそも、HTML は人間が読む文書をウェブで取扱うための言語である
一時推し進められた HTML の XML 化に依り、確かに機械でも読める文書にする必要性も明らかになりました。

ですが、それでも HTML 文書はあくまでも本来人間が読むものです。決して機械が読めさえすれば良いと言うものではありません。

この事は、人間が読むに際して問題があってはならないと言う事も意味します。

確かに、<blockquote>要素の外のテキストを、当該<blockquote>要素と機械的に関連付ける方法はないため、セマンティック上は(つまり、機械に対しては)意味がないと言えます。

  • セマンティック上関連付けるには、専用の属性を定義するか、当該要素の属性として記述する以外にはありません。cite 属性は後者の手段と言えます。

ですが、それだって、人間語を理解している人間が読む文書としては充分意味がある事なのです。

cite 属性は全ての引用元を示す事は出来ない
だいたい、cite 属性はURIを持つ引用元でのみ有効な属性です。

引用元がURIを持たない場合は、別の方法で引用元を明示しなければなりません。

それとも、cite 属性で明示出来ない引用元に関しては引用元を明示しなくても良いと言うのですか?。

そんな馬鹿な話しはありませんよね?


これらの点に対して尽く心得違いをし、その挙げ句苦情を寄せた者に対し、口汚い言葉で人格攻撃をすると言う、何処までも最低な例がウェブにありましたので、反面教師として挙げておきます。

HTML 4/XHTML 1との違い。

HTML 5 に於けるHTML 4/XHTML 1での<blockquote>要素との相違点は、以下の通りです。

  • HTML 4/XHTML 1では、原則としてブロックレヴェル要素を内容モデルとしておりましたが、HTML 5 ではそのような制限がなくなりました。
    • 但し、依然段落などのブロックの形で引用すべきである事は言うまでもありません。

反面教師。

cite属性は出典の明示になるか
表題が質問であればイエスとしか言いようがありません。

ですが、だからと言って、

  • 人間に分かるようにテキストの形で引用元を示さなかった事、
  • 原文作者に無断で旧字旧仮名に改竄して引用した事

に対して引用元から苦情が寄せられた際の反論として用いるのには、どうかと思います。

そもそも、私見で述べた通り、引用元をテキストで明示する事も好ましい事です。

この文書の作者の反論は、敢えて言うならどれも正しくありません

  • 私見は一部制作者の再反論となるように構成しました。

否、他人を不当に攻撃するために理念をテメエの都合のいいように歪曲しただけとしか思えません。

挙げ句の果て、苦情を寄せた者を影で口汚く人格攻撃するなんて何て卑怯な奴かとしか思えません。

この文書の作者は一事が万事このような調子で他人に口汚い言葉で喧嘩を売って来ており、それらが原因かどうかは分かりませんが、その後結局サイトを閉鎖してしまいました。

そして、サイトを閉鎖する事自体、自分で守るよう主張してきた事を自分は守らなかったと言う、ネットには腐るほどいる

  • 他人には義務と責任を求めるくせに自分は絶対に責任を果たそうとしない
  • 或いは他者には何処までも厳しいが自分には何処までも甘い

ダブルスタンダード野郎が必ず陥る恥ずかしいパターンを、最低な形で実現してしまったのです。

もうこの男は二度とウェブに姿を見せて欲しくないものです。

関連項目。