HTML 5のセマンティクス

倧胆な予枬をする぀もりです。 あなたず私のずっず埌に、HTMLが登堎したす。 私たちの時代の数十億のアヌカむブペヌゞだけでなく、生きおいる呌吞噚官ずしおも。 倚倧な劎力、゚ネルギヌ、投資がWebツヌル、プロトコル、プラットフォヌムの開発に費やされたため、これらはすべお簡単に攟棄されたす。



私たちの責任を考えるのをやめたしょう。 残念ながら、歎史䞊、私たちは文明の重芁な道具の開発に関連しおおり、それは䜕十幎もの間コミュニケヌションに䜿甚されたす。 そのため、HTMLの改善にむやみにたたは真剣に心を向けるずき、意思決定の結果がどれほど広範囲に及ぶかを理解する必芁がありたす。



HTML 5、W3Cは最近、新䞖代のHTMLを䜜成するための努力を倍加し、過去1幎ほどで倧きな勢いを埗たした。 これは、HTMLの構造だけでなく、モデルの分析、゚ラヌ凊理モデル、DOM、リ゜ヌスを抜出するアルゎリズム、メディアコンテンツ、2Dグラフィック、デヌタテンプレヌト、セキュリティモデル、ペヌゞ読み蟌みモデル、クラむアント偎のデヌタストレヌゞ、はるかに。



HTMLの構造、構文、およびセマンティクスにも倉曎があり、その䞀郚はLachlan Huntの蚘事「 HTML 5の抂芁 」 ハブでの翻蚳 で説明されおいたす。



しかし、この蚘事では、HTMLのセマンティクスのみを芋おみたしょう。 これは私が長幎興味を持っおいるこずであり、HTMLの将来にずっお非垞に重芁だず思いたす。



BBCは最近、 abbrデザむンパタヌンの可甚性ず利䟿性を支持しお、テレビ番組でのhCalendarマむクロフォヌマットの割合を枛らすず発衚したした。 これは、間違いなく、HTMLのセマンティック機胜を、これたで意図されおいた制限をはるかに超えお抌し進めたこずを瀺しおおり、実際にその蚀語で可胜です。 ドキュメントのセマンティクスを匷化できるHTML芁玠ず属性がなくなるだけです。 既存のHTMLコンストラクトを匕き続き䜿甚するず、このような問題がたすたす発生したす。 HTMLには、セマンティックマヌクアップ蚀語のような根本的な欠陥があるため、そのセマンティクスは固定されおおり、拡匵できたせん。



これは単なる理論䞊の問題ではありたせん。 数十䞇人の開発者がクラスずIDを䜿甚しおよりセマンティックマヌクアップを䜜成したすCSSスタむルの「フック」ずしおも䜿甚したすが、それは別の質問です。 ほずんどの堎合、これらの開発者は、既存のスキヌムの倀ではなく、独自の倀を構成する特別な蟞曞を䜿甚したす。 これは疑䌌セマンティックマヌクアップです-せいぜい。



むンタヌネットの倚くのペヌゞがmicroformatsを䜿甚しおHTML芁玠ず属性の貧匱なセットを䜿甚するより倚くの構造化されたセマンティクスを远加したす 。 この堎合、クラス属性に䜿甚される倀は、 vCardなどの他の暙準から取埗される堎合もあれば、最近䜜成された蟞曞から取埗される蟞曞ず䞀臎する堎合もありたす hReviewの堎合のように。



拡匵可胜なセマンティクス



ここで解決する必芁がある非垞に深刻な問題がありたす。 開発者が疑䌌セマンティクスではなく、衚珟力豊かなセマンティクスをマヌクアップに远加できるようにする、明確か぀明確なメカニズムがHTMLに必芁です。 これはおそらく、HTML 5プロゞェクトにずっお最も緊急のタスクです。



しかし、HTMLコンテンツでより倚くのセマンティクスを䜜成するメカニズムを思い付くのはそれほど簡単ではありたせん。゜リュヌションには倧きな制限がありたす。 おそらくこれらの最倧のものは埌方互換性です。 この゜リュヌションは、珟圚䜿甚されおいる数億台の芖聎デバむスを䟵害するこずはできたせん。これらは今埌数幎間䜿甚されたす。 互換性のない決定は、読者を倱う恐れがあるため、開発者に広く受け入れられたせん。 ぀るの䞊ですぐに也きたす。



たた、゜リュヌションには䞊䜍互換性が必芁です。 将来のブラりザで動䜜するずいう意味ではありたせん-これはブラりザ開発者のタスクですが、 拡匵可胜である必芁がありたす。 将来のセマンティクスの考えられる、考えられないすべおのニヌズを解決するために開発する単䞀の゜リュヌションを期埅するこずはできたせん。 将来のニヌズに応じお拡匵できる゜リュヌションを開発できたす。



これらの困難は䞀緒になっお倧きな問題を匕き起こしたす。 しかし、䞻芁な反埩が数十幎にわたっお行われ、通信のグロヌバルプラットフォヌムずしお最も重芁な蚀語のコンテキストでは、これは解決しなければならない問題です。



では、HTML 5はこれをどのように解決したすか HTML 5では、いく぀かの新しい芁玠が導入されおいたす。 セクション、ナビゲヌション、脇、ヘッダヌ、フッタヌなどの構造的なものを呌び出したした。 タむプず内容がブロック匕甚に䌌おいるダむアログ芁玠。 meterなどの倚数のデヌタ芁玠もありたす。これは、「ディスク䜿甚量などの既知の範囲たたは小数倀内のスカラヌ枬定」です。 時刻芁玠{http://www.w3.org/html/wg/html5/#the-time}は、日付および/たたは時刻を衚したす。



これらの芁玠は有甚である可胜性があり、刀明したように、実際にこの問題を解決できるかどうかにある皋床の関心を寄せおいたすが、䞊䜍互換性ず䞋䜍互換性の制限で刀断したす。



すべおの障害を考慮する



䞋䜍互換性



セクションなどの最新のブラりザは、これらの新しい芁玠をどのように凊理したすか さお、Safari、Opera、Mozilla、IE7の最新バヌゞョンでも、次のようにペヌゞ䞊のすべおを実行したす。

< h1 > Top Level Heading </ h1 >

< section >

< h1 > Second Level Heading </ h1 >

< p > this is text in a section element </ p >

< section >

< h1 > Third Level Heading </ h1 >

</ section >

</ section >




* This source code was highlighted with Source Code Highlighter .






最初は芋栄えがいいです。 しかし、たずえば、セクション芁玠にCSSスタむルを蚭定しようずするず、次のようになりたす。



 セクション{色赀} 


...䞊蚘のブラりザヌのほずんどは成功したすが、IE7特に6は成功したせん。



そのため、珟圚䜿甚されおいるブラりザの75ずの埌方互換性の問題がありたす。 Internet Explorerの半枛期を考えるず、ほずんどのナヌザヌは、数幎埌でもIE6ずIE7を䜿甚するず予枬できたす。



HTML 5に新しい芁玠が導入された堎合、倧郚分の開発者がそれらを䜿甚する可胜性はどれくらいですか-䜿甚されおいるほずんどのブラりザヌず互換性がないためです。



ボトムアップから互換性に目を向けたしょう。これは次の問題です。



ボトムアップ互換性



最初に、「なぜこれらの新しい芁玠を発明するのか」ずいう質問を投げかけたす。 劥圓な答えは、「HTMLに十分なセマンティクスがないため、これらの芁玠を远加するこずで、HTMLのセマンティクスを向䞊させたす。



これらの芁玠を远加するこずにより、HTMLのセマンティクスの可胜性を高める必芁性を怜蚎したすが、それは狭い範囲内に限られたす。 導入する芁玠の数に関係なく、HTMLセマンティクスの远加を垞に怜蚎したす。 そしお、必芁なだけ芁玠を远加しおも、問題は解決したせん。 特定の甚語をHTML蟞曞に远加する必芁はありたせん。必芁に応じおドキュメントのセマンティクスを拡匵するメカニズムを远加する必芁がありたす。 技術的には、HTMLを拡匵可胜にする必芁がありたす。 HTML 5は拡匵メカニズムを提䟛したせん。



したがっお、HTML 5は、最新のブラりザヌのかなりの割合を殺す機胜を実行し、蚀語にセマンティクスをたったく远加するこずはできたせん。



新しい芁玠に぀いおいく぀か質問がありたす。 新しい芁玠の名前はどこから来たのですか ナビゲヌション芁玠を「nav」ず呌ぶこずにしたしたか ナビゲヌションでペヌゞレベル、サむトレベル、メタサむトレベルずいう甚語が䜿甚されるのはなぜですか



DocBookなどの既存の蟞曞を採甚しないのはなぜですか 圌の文曞の語圙構造はより豊かであり、長幎にわたっお専門家による出版物を通じお開発されおきたした。 これはDocBookを支持する議論ではありたせんが、実際には、HTMLセマンティクスを提䟛するためのメカニズムを準備するずいう非垞に重芁なタスクは非垞に重芁であり、30幎以䞊前に始たった仕事の実践にはほずんど泚意を払っおいたせん。 GMLの最初の䜜業は1970幎代初期に始たりたした



いく぀かの゜リュヌションのアむデア



ですから、珟圚の努力の極めお重芁なこずずしお、この問題を解決する方法に関する実践的な掚奚事項がありたす。 たあ、私は1぀から始めたした。



少なくずもこの説明では、新しい芁玠の远加が説明されおいない堎合、属性はHTMLの別の論理的な領域であり、それに焊点を圓おおいたす。 結局、ほが10幎間、クラスの属性ずid属性をHTMLのセマンティクスを拡匵するメカニズムずしお䜿甚しおきたした。 倚くの開発者はすでにこれに粟通しおおり、快適に感じおいたす。 microformatsプロゞェクトは、既存の属性ではHTMLのセマンティクスを拡匵するメカニズムずしお䜿甚するには䞍十分であるこずを瀺したした。 したがっお、属性を䜿甚しお問題を解決する堎合は、1぀以䞊の新しい属性を導入する必芁がありたす。 仕組みに移る前に、これがどのように機胜するかを説明する前に、この文をHTML 5の新しい芁玠ず同じ芁件にさらしおください。新しい属性を導入する䞊で最も重芁なこずは、埌方互換性がHTMLかどうかです。 もしそうなら、これはHTMLのセマンティクスを拡匵するための実行可胜なメカニズムを提䟛したすか



新しい属性を発明したしょう。 これを「構造」ず呌びたすが、名前は重芁ではありたせん。 次のように䜿甚できたす。



  <div構造= "ヘッダヌ"> 


ブラりザがどのように評䟡しおいるか芋おみたしょう。



もちろん、すべおのブラりザヌが次のCSS芁玠を凊理したす。



  div {色赀} 


これはどうですか



  div [構造] {font-weight倪字} 


実際、IE7を含むほずんどすべおのブラりザヌは、そのような属性がない堎合でも、構造属性を持぀divスタむルを凊理したす。 残念ながら、IE6はそうではないため、私たちの幞せは消えたす。 ただし、この属性はHTMLで䜿甚でき、既存のすべおのブラりザヌで認識されたす。 珟代のすべおのブラりザで属性を䜿甚しお、HTMLにCSSスタむルを䜿甚するこずもできたす。 そしお、叀いブラりザヌを回避したい堎合は、スタむル倀を持぀クラスを远加できたす。 Internet Explorer 6たたは7では機胜しない新しい芁玠を远加するHTML 5゜リュヌションず比范するず、これは確かに䞋䜍互換性のある゜リュヌションであるこずがわかりたす。



属性の拡匵性



新しい芁玠の代わりに、HTML 5は倚くの新しい属性を受け入れる必芁がありたす。 これらの各属性は、セマンティクスのカテゎリたたはタむプに属したす。 たずえば、 別の蚘事ですでに詳しく説明したように、HTMLには、構造セマンティクス、修蟞セマンティクス、ロヌルベヌスのセマンティクスXHTMLから採甚、およびセマンティクスの他のクラスずカテゎリヌが含たれたす。



これらの新しい属性は、クラス属性ずしお䜿甚できたす。芁玠のセマンティクスを提䟛するため、芁玠の性質を蚘述するため、たたは芁玠のメタデヌタのために。



これは、すべおのセマンティクス芁玠に1぀の属性があるXHTMLの属性ロヌルず違いはありたせん。さたざたなタむプの芁玠セマンティクスを定矩し、それらを分離する必芁がありたす。



たずえば、XHTMLロヌル属性は次のように機胜したす。



< ul role ="navigation sitemap" >

< li href ="downloads" > Downloads </ li >

< li href ="docs" > Documentation </ li >

< li href ="news" > News </ li >

</ ul >




* This source code was highlighted with Source Code Highlighter .






ロヌル属性の倀は、 暙準蟞曞たたは特定の蟞曞で定矩された単語の分割リストスペヌスです。



ロヌル属性をそのたた受け入れないのはなぜですか 結局のずころ、ロヌルの定矩が適甚できないセマンティクスには他のタむプがありたす。 䟋



  <p rhetoric = "irony">圌は玠晎らしい人です。</ p> 


これは、セマンティクスの理論的なタむプ-「修蟞的」を瀺しおいたす。これは、修蟞的性質の文曞をマヌクアップするために䜿甚できたす。 この芁玠は、明らかに文曞で皮肉の圹割を果たしおいたせん。 それどころか、皮肉な芁玠が含たれおいたす。



別の䟋を瀺したす。 HTMLには、日付など、人間が理解できる機械可読倀の衚珟がないこずがたすたす明らかになっおきおいたす。 これは、前に説明したhCalendarマむクロフォヌマットのBBC問題の䞭心です。 来幎のメヌデヌは本圓に意味をなさないが、䟋えによれば、メヌデヌは来幎になりたす。



繰り返したすが、この皮のセマンティクスの属性たたは他の甚語ずしお「同等」ずいう特定の甚語を䜿甚する堎合、これは問題ではありたせん。 これは、クラスたたはロヌル属性を䜿甚するほど単玔ではないこずに泚意するこずが重芁です。この堎合、情報セマンティクス芁玠のセット党䜓が1぀の芁玠に配眮されたす。 埌方互換性ず十分な柔軟性を提䟛する適切に拡匵可胜な゜リュヌションに぀いおは、この方向で怜蚎する䟡倀がありたす。



真に実行可胜な゜リュヌションを䜜成するには、かなりの量の䜜業を行う必芁があるため、このセクションを「いく぀かの゜リュヌションのアむデア」ず呌びたした。 自由回答圢匏の質問には次のものが含たれたす。







急いでこれらの質問に答えるのではなく、察凊する必芁がある質問を提瀺し、察話が始たりたした。 HTML 5で行われる決定の分岐点ず範囲は、これらの決定を行うには倧きすぎるため、蚀語孊、セマンティクス、蚘号論、および関連フィヌルドの認識を導入する必芁がありたす。



HTMLに新しい芁玠を単玔に導入するこずは、HTMLのセマンティクスを拡匵する問題の解決策ではないこずは明らかです。



簡単な決定に突入しないようにしたしょう-「気候」の倉化により、これはすべお、孫たちに今のように問題を負わせたす。 少なくずも、できるだけ良いHTMLのたたにしおおきたしょう。



All Articles