DTDでは "coreattrs" という属性グループ名がつけられていますが、以下のような属性があります。
そのHTML文書において唯一の識別名を定めます。ID属性値はA要素のNAME属性とアドレス空間を 共有しるので、それらの属性値同士が重複しないようにしなければなりません。また、ID属性の付いた 要素に新たにA要素を加えることなしで、その要素のID属性値を参照先とすることも可能になります。
その要素が持つクラス名を示します。要素は複数のクラス名を持つことが可能ですが、その場合、 クラス名をspaceで区切って並べます。
例えば、属性IDの属性値のデータ形式はDTDによれば[ID]ですが、 HTML4.0の仕様書によれば、単にSGMLトークンのIDとして解釈するのではなく
IDとNAMEは、アルファベット(A-Zとa-z)で開始され、任意のアルファベット、数字(0-9)、 ハイフン(-)、アンダースコア(_)、コロン(:)、そしてピリオド(.)のみによって 記述しなければなりません。
と記述するように求められています。
一般的には属性名・属性値とも、大文字と小文字の区別はありません(case-insensitive)が、 id属性とclass属性の属性値は大文字と小文字の区別がされます(case-sensitive)。
その要素をどう表現するかというスタイル情報を付け加えるための属性です。
その要素にタイトルをつけることが出来ます。
DTDでは "i18n" という属性グループ名がつけられています。"i18n" は "internationalization" の略です。"i + nternationalizatio(18文字) + n" ということですね。
その要素がどのような言語で書かれているかを示します。ユーザーエージェントはこの情報により その言語に適した表現をすることが出来ます。
属性値は[RFC1766]で定められた言語コード となります。言語コードは以下のように一次コードとサブコードからなっています。
language-code = primary-code ( "-" subcode )*
例えば、アメリカ英語の場合は言語コードは"en-US"となります。サブコードは省略可能で、 単に英語の場合は"en"となります。日本語の場合は"ja"です。
世界には右から左へと記述していく言語もあるので、書字方向を示すための属性です。 属性値は、 "ltr"(左から右 : left to right ) と "rtl"(右から左) のいずれかです。
スクリプトを使用する場合、その要素に対してある操作が行われたとき(イベントが発生した場合)、 属性値に記述されたスクリプトを実行します。