Schema.orgの日時形式

schema.org の日時形式

[40] schema.org は、 ISO 8601 に由来するいくつかの日時の形式と、 独自の反復時間間隔の形式を定義しています。

仕様書

Date

[2] 日付Date (http://schema.org/Date) は、 「ISO 8601 日付書式の日付の値」と説明されており、 WikipediaISO 8601 の記事にリンクしています >>1。具体的にどの表現を認めるのかは言及されていませんし、 情報交換の当事者間の合意に相当するものはありません。

[3] そのまま解釈すると、また schema.org は明らかに2004年以降のものですから、 ISO 8601:2004 による暦日付通日日付週日付を指定することができ、 基本書式でも拡張書式でも良く、精度を削減した表現でも良く、 更に情報交換の当事者間の合意があれば、1582年以前の展開表現を用いても良い、 ということになります。

[10] >>9 より ISO 8601:2000 に従うものと解釈すると、更に切り詰めた表現も使えると解釈できます。

[7] ISO 8601の日付形式の項を参照してください。

Time

[5] 時刻Time (http://schema.org/Time) は、 hh:mm:ss[Z|(+|-)hh:mm] 形式の時刻を表すものと定義されており、 XML Schemaデータ型 (XML Schema 1.0) の xs:time が参照されています >>4

[6] xs:time の項を参照してください。

[43] 秒の小数部には言及されていませんが、制限する意図があるのかどうかは不明です。

DateTime

[9] 日時DateTime (http://schema.org/DateTime) は、 [-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm] 形式の日時を表すものと定義されており、 ISO 8601 5.4 が参照されています >>8ISO 8601:2004 には 5.4 がないので、 ISO 8601:2000 を参照しているものと解釈せざるを得ません。

[11] ISO 8601:2000 5.4 では様々な表現を定義しているので、 >>9 の書式はそのうちの一種を選択したものと解釈するべきでしょうか。 「[」...「]」は省略可能、「(」...「|」...「)」は選択を表すと解するのが適切でしょう。

[12] この解釈によると暦日付は使えますが、通日日付週日付は使えません。 基本書式は認められておらず、拡張書式でなければなりません。 展開表現の場合、 + は使えません。5桁以上のを認めているのか不明瞭ですが、 文字通り解釈すると認められないことになります。精度を削減した表現小数付き表現切り詰めた表現も同様です。 時差の省略も同様です。ハイフンマイナスはいずれも - であり、 TZ はいずれも大文字でなければならないと解するのが適切でしょう。

temporal

[14] http://schema.org/temporal の値は DateTime とされていますが、 説明は時間的範囲となっており、 ISO 8601 時間間隔書式と記載されています >>13

[15] この意味するところは謎ですが、 >>9 かつ時間間隔と解釈できる表現は ISO 8601 には無いので、 DateTime 型としたのが誤りで ISO 8601時間間隔を指定できると解すべきなのでしょうか。

[16] 説明には「e.g. for a 2011 census dataset, the year 2011」とあり、その意味は不明瞭ですが、 2011 が値の一例とも解し得ます。実際 schema.org へ統合された元の提案 >>17 には <span itemprop="temporal">2011</span> という例が示されています。ここから推察すると、 時間間隔日時の表現によって記述したもの、ということになるのでしょうか。ただし >>9>>12 の構文の解釈には一致しません。

[18] なお >>17 には temporaldcterms:temporal に相当するものだとの記述がありますが、 >>19 によればその値域dcterms:PeriodOfTime となっており、これは開始と終了により決まる時間間隔となっています。 (RDF Class なので、構文は決められていません。) ここから、意味的にはやはり ISO 8601時間間隔の表現が求められていると解釈したいところです。

Duration

[22] Duration (http://schema.org/Duration) は、 ISO 8601の時間長形式とされています (Wikipedia にリンクされています) >>21

[23] そのまま解釈すると、 ISO 8601時間長の表現が認められており、 情報交換の当事者間の合意があれば精度を削減した表現小数付き表現や代替形式も認められるということになります。

[49] Data-Vocabulary.orgの日時形式も似たような定義でした。

openingHours

[25] http://schema.org/openingHours の値は Duration になっていますが、説明文はまったく違う構文を定義しています >>24特性の意味的にも Duration では無く反復時間間隔の一種のようです。

[26] 値は、毎週の時刻の範囲 (weekly time range) を指定するものです >>24

[37] 次の例 >>24 は火曜日と木曜日の16時から20時までを表します。

<time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>.

[38] 次の例は毎日営業していることを表します >>24

<time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time>
[39] 時刻が省略されていますが、24時間営業を表しているのかは不明です。
[41] これは ISO 8601 とは関係のない独自の形式です。

[47] OpeningHoursSpecification - schema.org ( ( 版)) <http://schema.org/OpeningHoursSpecification>

[48] DayOfWeek - schema.org ( ( 版)) <http://schema.org/DayOfWeek>