アカウント名:
パスワード:
「単純にW3Cの勧告している文法に準拠にするだけ」なのなら、もったいないなぁ。コストは殆ど変わらないのに出来上がるものには違いがある。
文書内の「ある文字列/ある部品の役割とは何か」に注目しなければ、W3Cの勧告に準拠したところで「ただ見える」だけです。HTMLがもつ付加的な恩恵はハイパーリンク以外受けようがありません。「意味を伝える」という機能を無視しています。それと同時に様々な環境で内容が明確に伝わる可能性を狭めています。
HTMLとは文書の構造を、もっと端的に言って文書の「ある部品の意味を示すこと」に一つの大きな特徴があるのです。それが欠けていると、HTMLと
HTMLを成す思想の基幹には2つあると思います。一つはハイパーリンクによる文書相互間の関連付け。もう一つは意味の伝達です。この二つがそろって利便性があり、HTMLとしては本来想定した機能を果たしているのではいかと思います。(HTMLにおいては、伝達と表現とは同義ではないと考える。)
ディスプレイに表示されているWebページはHTML文書とUserAgentのスタイルシートとの融合物であるということを考えていただきたい。見栄えはUserAgentが用いるスタイルシートによるものであるから、見栄えを制御したい方々は対象が間違いであろう。(この場合のスタイルシートはCSSのみならず広義のスタイルシート)
仮に見栄え制御こそが重要であるということを真としても、論理構造の表現を全て否定する合理的な理由がわかりません。また論理構造の明示こそが「HTMLはあらゆる環境で利用できる」という目的を実現させているのですが。(そんなものがあるとすれば)論理構造重視派はCSSをもって論理構造と見栄えの共存を図っています。見栄え至上では、排他的になるのですか?
また、策定されることのなかったHTML3.0を省みてほしい。 HTML3.0はHTMLが持っている可能性のうち、見栄え制御言語への道を実現するための仕様になるはずだった。結果的に言えばそれは否定され、1995年9月の3.0の破綻から、一年少々経った1997年1月にその場しのぎ的なHTML3.2が勧告された。1997年12月にはHTML4.0が勧告されるに至っている。(1996年12月にはCSS Level1が勧告)
HTML4は仕様書に記述されているように、見栄えと構造の分離を目指した言語である。
なぜHTML3.0は破綻したのか。見栄え制御は意味構造の明示よりも社会的に優先されるものではないのか。そもそも同一のハード上で利用されることが限定できないWebという環境を想定した場合、Webの共通語たるべき仕様が採るべきスタンスとは何だろうか。──そういう迷走と理想の追求があって現在のHTMLが存在しているのではないか。
文書に関して、一体どれほどの人間が構造を意識できるだろうか。意味上の論理構造を見出せない人間が多いことにもかなりの問題がある。しかし、言われてみればそういう人たちも論理構造というものをどこかで知っており、普段は無意識的に見栄えから解釈している。もちろん閲覧者としてはそれが正しい。問題はHTML文書の記述者が論理構造に対して無知であるということである。
また、HTMLは意味上の構造は全てを表現することは不可能だが、HTMLは汎用的で強力な意味をもつ幾つかの基本的な意味構造を表現できれば良く、HTMLが全ての構造を表現する必要はないと思われる。そもそも意味上の構造全てというが、それほど多彩かつ明確な意味を持つ構造を内包した文書というのが、社会的にどれほどあるのかは疑問がある。加えて、HTMLではHTMLで表現できない構造のためにDIV、SPANなどを提供している。今後ユーザーがHTMLで表現されない微妙なニュアンスの構造を表現する場合、それらを用いてスタイルをもって直接閲覧者に働きかけることとなるだろう。(もっとも、意味を明示するという立場に基づいては、あまり多く発生しないと思うが)
今をもってもWebとHTMLは過渡期にある。過渡期の一時の混乱によって生じたデファクトスタンダードに拘泥することは今後の発展と利便性を阻害するのではないか。
「時既に遅しの感があり」。それはブラウザベンダに言って上げて下さい。だからもっと早く実装しろと。ブラウザの実装が拙くなければ、Webデザイナの先生方も我々一般人も楽ができるし、見栄え論争などしなくてもよくなる。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy
W3C準拠にする意味って何? (スコア:2, 興味深い)
何か、合理的な理由ってあるんでしょうか?
より多くの人に、より多くの環境で読めるようにでしょうか?
それなら、IE第一に考えるのが当然でしょうし、
古いブラウザのために、多少W3C標準から外れていた方が良い
ケースもあるのではないでしょうか。
HTMLが「美しい」こ
Re:W3C準拠にする意味って何? (スコア:3, 興味深い)
「単純にW3Cの勧告している文法に準拠にするだけ」なのなら、もったいないなぁ。コストは殆ど変わらないのに出来上がるものには違いがある。
文書内の「ある文字列/ある部品の役割とは何か」に注目しなければ、W3Cの勧告に準拠したところで「ただ見える」だけです。HTMLがもつ付加的な恩恵はハイパーリンク以外受けようがありません。「意味を伝える」という機能を無視しています。それと同時に様々な環境で内容が明確に伝わる可能性を狭めています。
HTMLとは文書の構造を、もっと端的に言って文書の「ある部品の意味を示すこと」に一つの大きな特徴があるのです。それが欠けていると、HTMLと
--労使曰く、ひとごとを尽くして神頼み--
Re:W3C準拠にする意味って何? (スコア:1)
昔から延々と続く「意味・外観論争」の原因は、HTMLの社会的用途が広がってくると、HTMLのようなやり方で後者の機能を完全に実現することはとてもできないということと、社会的には必ずしもそのような機能を広く求められていなかった、ということを、規格の制定者が、軽視した点にあるものと思われます。本来であれば、HTMLの利用が広がってきた時点で、むしろ意味上の論理構造を表す各種の要素(例えばH1 EM)はobsoleteとし、FONTなどの外観を表す要素を充実していくべきではなかったか、と思います。意味上の論理構造を表すことに利点がないわけではないにせよ、その機能がないか一部の用途にしか推奨されなくなっても、おそらくはそれほど実用上の問題がないのに対し、外観の制御ができないのは大問題であるからこそ、度々問題になっているわけです。つまり、あまり出来の良くない機能にこだわって、社会の要求とずれた規格にしてしまったという問題があるわけです。
HTMLのようなやり方で、社会に存在するもろもろの意味上の論理構造をすべて表すことが不可能だということや、外観を制御することが重要性を持つということは、制定者のコミュニティでも一応認識されていたようで、前者の解決策としてはXMLが、後者の解決策としてはCSSが制定されたようですが、時既に遅しの感があり、既にTABLE要素はレイアウト枠、FONT要素で文字の大きさを表すということで定着してしまいました。そうであれば、いまさらHTMLで中途半端な意味上の論理構造を表すことにこだわるべきでないと思います。意味を表したいものはXMLで、表現だけ必要なものはHTMLで、ということにすれば大分問題が解決されるように思います。
Re:W3C準拠にする意味って何? (スコア:2, 参考になる)
ディスプレイに表示されているWebページはHTML文書とUserAgentのスタイルシートとの融合物であるということを考えていただきたい。見栄えはUserAgentが用いるスタイルシートによるものであるから、見栄えを制御したい方々は対象が間違いであろう。(この場合のスタイルシートはCSSのみならず広義のスタイルシート)
仮に見栄え制御こそが重要であるということを真としても、論理構造の表現を全て否定する合理的な理由がわかりません。また論理構造の明示こそが「HTMLはあらゆる環境で利用できる」という目的を実現させているのですが。(そんなものがあるとすれば)論理構造重視派はCSSをもって論理構造と見栄えの共存を図っています。見栄え至上では、排他的になるのですか?
また、策定されることのなかったHTML3.0を省みてほしい。 HTML3.0はHTMLが持っている可能性のうち、見栄え制御言語への道を実現するための仕様になるはずだった。結果的に言えばそれは否定され、1995年9月の3.0の破綻から、一年少々経った1997年1月にその場しのぎ的なHTML3.2が勧告された。1997年12月にはHTML4.0が勧告されるに至っている。(1996年12月にはCSS Level1が勧告)
HTML4は仕様書に記述されているように、見栄えと構造の分離を目指した言語である。
なぜHTML3.0は破綻したのか。見栄え制御は意味構造の明示よりも社会的に優先されるものではないのか。そもそも同一のハード上で利用されることが限定できないWebという環境を想定した場合、Webの共通語たるべき仕様が採るべきスタンスとは何だろうか。──そういう迷走と理想の追求があって現在のHTMLが存在しているのではないか。
文書に関して、一体どれほどの人間が構造を意識できるだろうか。意味上の論理構造を見出せない人間が多いことにもかなりの問題がある。しかし、言われてみればそういう人たちも論理構造というものをどこかで知っており、普段は無意識的に見栄えから解釈している。もちろん閲覧者としてはそれが正しい。問題はHTML文書の記述者が論理構造に対して無知であるということである。
また、HTMLは意味上の構造は全てを表現することは不可能だが、HTMLは汎用的で強力な意味をもつ幾つかの基本的な意味構造を表現できれば良く、HTMLが全ての構造を表現する必要はないと思われる。そもそも意味上の構造全てというが、それほど多彩かつ明確な意味を持つ構造を内包した文書というのが、社会的にどれほどあるのかは疑問がある。加えて、HTMLではHTMLで表現できない構造のためにDIV、SPANなどを提供している。今後ユーザーがHTMLで表現されない微妙なニュアンスの構造を表現する場合、それらを用いてスタイルをもって直接閲覧者に働きかけることとなるだろう。(もっとも、意味を明示するという立場に基づいては、あまり多く発生しないと思うが)
今をもってもWebとHTMLは過渡期にある。過渡期の一時の混乱によって生じたデファクトスタンダードに拘泥することは今後の発展と利便性を阻害するのではないか。
「時既に遅しの感があり」。それはブラウザベンダに言って上げて下さい。だからもっと早く実装しろと。ブラウザの実装が拙くなければ、Webデザイナの先生方も我々一般人も楽ができるし、見栄え論争などしなくてもよくなる。
--労使曰く、ひとごとを尽くして神頼み--
Re:W3C準拠にする意味って何? (スコア:1)
文書において、わざわざ余分な手間をかけて意味上の論理構造を示すからには、それに見合うだけのメリットが必要です。おそらく当初HTMLが目指したものは、ある程度まとまった文章、特に論文について、その題名や章立てといった構成を機械に認識させることによって、文書そのものをいわばデータベースとし、題名や目次のリストの作成、あるいはそれらにをキーにした検索といった、文書処理の機械化を実現し、またそれと併せて、対応するタグで括って指定するだけで、それなりに見栄えのする形で(ブラウザに)文書を表示すること、といったことだったのではないでしょうか。これらは論文のような文書だけであればそこそこ機能しますが、現在のように文書のバリエーションが広がると、うまく適用できなくなります。
文書構造を機械に認識させて処理するという面では、ある要素(データベースでいうところの列ないし項目)に含まれているデータの意味が全てのインスタンス(データベースでいうところの行)できちんと統一されていることが重要です。例えば、H1で指定されているものが、ある文書では文書の題だが、ある文書では章題であり、またある文書では日記の日付だったりしたのでは、機械処理のメリットはほとんど出てきません。XMLでは、それぞれの要素の意味をきちんと定義して使うことができるので、この問題を解決できます。しかしそれは逆にいえば、XMLのような仕組みのないHTMLでは、マトモな機械処理などはほとんど期待できないということです。
また、見栄えの面については、当然のことながら、論文式の外観では都合の悪い文書が社会には多く存在します。さらに、社会には論文式の論理的構造を表すことにあまり意味がないデータが存在します。そしてそのようなデータでも、HTMLで表して表示させる方が都合がいいこともあります。そのようなデータにも、HTMLは文書的な論理構造を強制し、その上でスタイルシートを利用せよといいますが、そこには論文をHTMLで書いていたときのような利便性はなく、意義が乏しいように思われます。
DIV要素は一つの妥協で、結局規格であらかじめ決めておいた文書の構造を、現実社会の雑多なデータに強制することはできない、ということを認めた白旗と見るべきです。いったんDIVで範囲を指定してから、それとは別にスタイルシートでスタイルを指定する。そんな迂遠なことをするならば、初めから外観を表す要素を認めればいいのです。
実のところ、HTMLにいう文書構造というのは、厳密に言えば、意味上の論理構造というより、ワープロソフトの書式設定を多少抽象化した程度のものでしかありません。その中途半端さゆえに、ワープロソフトの書式設定機能としては機能不足、かといって機械処理にも使えないという「帯に短し襷に長し」の状況に陥っています。
以上のような理由から、意味上の論理構造という概念に拘って、そのような概念に沿わない要素を望ましくないものとする方針は、妥当ではないものと考えます。また、規格上要素の意味が規定されているものについて、規格を尊重するという面で、その意味を外れた利用をすることが望ましくないのは勿論です。しかしTABLEなどは、現状では完全には代替できない面もあるようですから、そういうものについては容認すべきで、この際TABLEはテーブルではなくレイアウト枠で(も)あると規格を改定することも考えるべきです。
なお、論理構造を示す要素を、テキスト文書の簡易整形機能として使う限りにおいては、それらは便利な機能ではあります。
Re:W3C準拠にする意味って何? (スコア:1)
XMLな立場でいえばgnakaさんの仰ることはごもっとも。XMLがユーザ定義による拡張性から自由度が高くユーザの意図を盛り込んだ文書が作成可能であるとも言えるでしょう。将来的に知的財産の共有という理想は、今よりも高度な形でXMLから成るセマンティックウェブによって成される可能性があるわけだし、XMLの展望には期待しています。
少し穿った見方をすれば、事実上CSSの登場は物理マークアップを過去のものとし、マークアップ文書の価値は意味構造を明示することになりました。それと同時に意味と見栄えとの居り合わせを付けて来たHTMLタグも過去のものといえるかもしれません。表現として「ある意味」がユーザに伝わればよいのですから、表現の方法がユーザに開放された時点で、HTMLから意味を明示する必要性は(特定以上の環境にとっては)失われたように思いもします。もともとHTMLのタグというのは、ある意味を表現するためにの実装をUserAgentに丸投げするためにあったようなものですし、丸投げではなく、製作者自身がレンダリングに茶々を入れられるならば、意図したとおりの表現が施されるであろうから意味の明示は大した価値がないとも考えられる。極論すれば「DIVみたいなもの」でも作者の意図が伝わればよいのですから。(意味を伝達し、それに相応しい表現を施すという観点からすれば──です。)
しかし、この場合私がXMLに対して一番の不信を持っている下方互換性についてはどうなっているんでしょうか。仮にCSS或いはXSLを再現できない環境であったとしたら、デフォルトスタイルの決めようのないXMLではどう表現するのでしょうか。まさかHTMLの意味定義に拘るなといいながら、HTMLレンダラが持つHTMLデフォルトスタイルシートの世話になることもできないでしょう。デフォルトスタイルを当てにできないXMLに下方互換性が提供できるのですか?HTML(にまつわる環境)に頼らずに、です。
私は、HTMLの意味構造の定義範囲を破壊したほうが良いというのには賛同いたしかねます。またXMLによってそれを行う場合もです。XMLはHTMLと共存する気がないというならば全く問題ありませんが、XMLとはそういうスタンスの言語でもないでしょう。
私は、HTMLレンダラが保有しているデフォルトスタイルは(JavascriptやCSSなどの先進技術が使えない)最悪の場合でも大まかに要素の意味を明示するための「避難的対処法」であると考えます。
結局XMLはセマンティックウェブへの布石であり、現在はHTML同様不完全であります。機械的処理に優れる(例・データ検索など)といっても一定量そろわなければ、それに対する利点が得られません。XMLの得意とする分野、若しくはXMLでしか実現できない分野をXMLで構築することは当然ですが、XMLがHTMLの意味定義範囲を侵害することは、XML(XHTML)に対しても大いに不利益でありえます。なぜならばXMLをHTMLとして伝達することを当てにできなくなるからです。ひいてはXML文書がHTMLの「避難的対処法」にすら逃げられなくなるからです。
HTMLという言語に限界があるのは事実です。将来的にはXMLアプリケーションがHTMLに代替する役割を全面的に担ってくれることを期待します。ただし、見栄えを指定する要素云々はXMLがメインストリームとして120%活躍する土壌が揃ってからやって頂きたい。少なくともそれはHTMLとしてやってもらいたくはないし、やっていただいては困る。
水は低きに流れる──ではありませんが、あまり上位のことばかり想定したシステムがWebの共通語として通用するのでしょうか。それをしたければ、まず環境が整うのを待ちましょう。
以上をもって、私は現時点におけるHTMLの意味構造を蔑ろにする記述法を否定します。今後もHTMLという仕様に沿って記述された数多くの文書の可読性・意図理解性・上下互換性を保持するためにも、意味構造に反する記述を否定します。
余談ですが、私は公開文書のHTMLやXMLのことを言っているのであって、ローカル環境でレイアウト制御言語としてHTMLを用いることは可能だし、中途半端でも一応表示できているのだから、それで問題がないという人が使えばいいのです。ただし、思想的には公開文書でそういうことやってくれるな──といいたいのです。
--労使曰く、ひとごとを尽くして神頼み--