Hop step XHTML―ホップ ステップ XHTML

Section 18:エディットモジュール

 WWW ページは,内容を変更することもある。そのとき,どこをどのように変更したかを示すための要素も用意されている。

挿入:ins 要素

 ins 要素は,その部分が(後から)挿入されたものであることを示す。

内容モデル
(#PCDATA | %Flow.mix;)*
ブロック要素として扱われるときはテキストとフロー,インライン要素として扱われるときはテキストとインライン要素
ins 要素の属性
属性名属性値備考
コア属性
style 属性
国際化に関する属性
イベント属性
citeURI挿入の理由を示したリソースの URI
datetime日付と日時挿入した日時

 ins 要素は,Section 3 で示したように,ブロック要素とインライン要素のいずれにも属している。すなわち,ブロック単位の挿入とフレーズ単位の挿入のいずれにも ins 要素を使用する。たとえば,インライン要素としての ins 要素の使い方としては,

<p> 今後,メールボックスへのアクセスは,POP/SSL<ins>(通信路の暗号化)</ins>または APOP<ins>(パスワードの暗号化)</ins>を使用してください。</p>

一方,ブロック要素としてのins 要素の使い方は,

<p> 2004 年 4 月より,消費税込みの価格を示すことが義務付けられた。</p>
<ins> 実施より 1 年近く経つが,1 円未満の端数の扱いを中心に,混乱がまだ続いているように見える。</ins>

のようになる。

 ins 要素の内容モデルは,文書型定義(DTD)では“(#PCDATA | %Flow.mix;)*”であるが,この要素がブロック要素として振る舞うときと,インライン要素として振る舞うときでは,内容モデルが異なる。

  • ブロック要素として振る舞うとき,内容モデルは“テキストまたはフロー”
  • インライン要素として振る舞うとき,内容モデルは“テキストまたはインライン要素”

よって,下記の例はインライン要素としての ins 要素の内容にブロック要素を含んでいるので,誤りである

<p> 2003 年度より施行された高校の新学習指導要領により,2006 年実施のセンター試験の化学(化学 IB→化学 I)では,主に理論科学分野<ins>,特に,<ul><li>気体の性質</li><li>溶液の性質</li></ul>などの点</ins>で内容が少なくなる。</p>

 cite 属性には,その部分を挿入した理由が示されている URI を記述する。

 datetime 属性には,変更がなされた日付および時刻を示す。

XHTML における日時の表し方

 ins 要素の datetime 属性には,その部分の変更がなされた日時を示す。このフォーマットは,次のようになっている。

YYYY-MM-DDThh:mm:ssTZD

ここで,

  • “YYYY”は 4 桁の西暦年
  • “MM”は 2 桁の月(00〜12)
  • “DD”は 4 桁の日(00〜31)
  • “hh”は 2 桁の時,24 時間表示(00〜23)を用いる(午前・午後は用いない)
  • “mm”は 2 桁の分(00〜59)
  • “ss”は 2 桁の秒(00〜59)
  • “TZD”はタイムゾーン(時差)

を表す。時刻の前につける“T”は大文字でなければならない。タイムゾーンに関しては,次のように記述する。

Z
グリニッジ標準時。“Z”は大文字で記述。
+hh:mm
グリニッジ標準時より,示された分だけ進み時差。
-hh:mm
グリニッジ標準時より,示された分だけ遅れ時差。

日本は 9 時間の進み時差なので,この部分は“+09:00”である。

 たとえば,“日本時間(9 時間の進み時差)2005 年 2 月 1 日午後 3 時 30 分ちょうど”は,

2005-02-01T15:30:00+09:00

と記述する。グリニッジ標準時に直すと,

2005-02-01T06:30:00Z

となる。

削除:del 要素

 ins 要素と対になる要素として,削除部分を表す del 要素がある。

内容モデル
(#PCDATA | %Flow.mix;)*
ブロック要素として扱われるときはテキストとフロー,インライン要素として扱われるときはテキストとインライン要素
del 要素の属性
属性名属性値備考
コア属性
style 属性
国際化に関する属性
イベント属性
citeURI挿入の理由を示したリソースの URI
datetime日付と日時挿入した日時

 挿入部分でなく削除部分を表すという,役割が異なる点を除いては,文法的には del 要素は ins 要素と同じである。すなわち,ブロック要素でもインライン要素でもあり,ブロック要素として振る舞う場合はテキストとフローを,インライン要素として振る舞う場合はテキストとインライン要素を内容にとる。

 属性も同様で,cite 属性には,その部分を変更(削除)した理由が示されている URI を,datetime 属性には変更がされた日時を記述する。

 del 要素の例をご覧いただこう。

<p> 今後,メールボックスへのアクセスは,POP/SSL<ins>(通信路の暗号化)</ins><del datetime="2005-02-05T09:00:00+09:00">または APOP<ins>(パスワードの暗号化)</ins></del>を使用してください。<ins datetime="2005-02-05T09:00:00+09:00">2005 年 2 月 5 日より,SSL に一本化しました。</ins></p>

 今後,メールボックスへのアクセスは,POP/SSL(通信路の暗号化)または APOP(パスワードの暗号化)を使用してください。2005 年 2 月 5 日より,SSL に一本化しました。