プログラマ 福重 伸太朗 〜基本へ帰ろう〜 このページをアンテナに追加 RSSフィード

2008-06-03

Movable Type のAtom.xmlテンプレートの「published」と「updated」の時間のズレについて

環境

Movable Type 3.21-ja


Atom.xmlに表記される時間のズレについて

Movable Type 3.21-jaのAtom.xmlデフォルトテンプレートを見てみると、

・
・
   <published><$MTEntryDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></published>
   <updated><$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></updated>
・
・

このようになっています。

この状態だと、協定世界時(utc)が表示されていまいます。

ここは、日本ですので、協定世界時(utc)+9時間が正しい時間です。


utc="1"

この属性が「協定世界時を表示する」という設定になっていますので、カットすれば日本時間になります。


修正後

・
・
   <published><$MTEntryDate format="%Y-%m-%dT%H:%M:%SZ"$></published>
   <updated><$MTEntryModifiedDate format="%Y-%m-%dT%H:%M:%SZ"$></updated>
・
・

協定世界時 - Wikipedia


Atom.xmlの時間がutcデフォルトである背景

ここは、日本なわけですから、日本時間で表示された方が便利だと思うのに、なぜutcが設定されているのでしょうか。

それには、Atomの仕様が背景にあるようです。


Atom 0.2 Spec 日本語 HTML 版

modified

W3DTF です。dcterms:modified にあたります。UTCである*べき*です。

created

0か1回表れます。W3DTF です。dcterms:created にあたります。UTCである*べき*です。もし無い場合、その値は modified と同じとみなされます。

仕様でUTCである"べき"となっているからですね。



スペシャルサンクス

CHEEBOW@?週末音楽家?(@cheebow)さん | Twitter