カレンダーコンポーネント(Calendar Components) [iCalendar]
さて、続いて3.6 Calendar Componentsですが、「カレンダーコンポーネント」ってなんだ?と思ったところ、先日の記事の例で出てきた「VEVENT」の部分の様です。
で、iCalendarオブジェクトは、カレンダープロパティと今回のカレンダーコンポーネントから構成されるとのこと。ちなみに、カレンダーコンポーネントは1つ以上存在できる様です(と言うか、一つは必須なんですかね・・)。
カレンダープロパティとカレンダーコンポーネントの区別は下記の通りです。
続きの節構成をみると、カレンダーコンポーネントとしては、下記の6種類が存在しているようです。
カレンダーコンポーネントの定義は下記のとおりとなっています。
う~ん、定義の中にアラームが入ってませんね・・。ま、追々分かってくるんでしょう・・。
さて、定義を見ればわかるものもありますが、iCalendarオブジェクトに関し、下記の注意事項が書かれていました。
この章で、ようやくiCalendarオブジェクトの全体が見えてきましたねぇ・・。できれば、ここから書いて欲しかった様な気もしますが・・。
つづく。
で、iCalendarオブジェクトは、カレンダープロパティと今回のカレンダーコンポーネントから構成されるとのこと。ちなみに、カレンダーコンポーネントは1つ以上存在できる様です(と言うか、一つは必須なんですかね・・)。
カレンダープロパティとカレンダーコンポーネントの区別は下記の通りです。
カレンダープロパティ | iClendarオブジェクト全体に適用される属性 |
カレンダーコンポーネント | 特定の内容に関するプロパティの集合 |
続きの節構成をみると、カレンダーコンポーネントとしては、下記の6種類が存在しているようです。
カレンダーコンポーネントの定義は下記のとおりとなっています。
icalbody = calprops component calprops = *( ; ; The following are REQUIRED, ; but MUST NOT occur more than once. ; prodid / version / ; ; The following are OPTIONAL, ; but MUST NOT occur more than once. ; calscale / method / ; ; The following are OPTIONAL, ; and MAY occur more than once. ; x-prop / iana-prop ; ) component = 1*(eventc / todoc / journalc / freebusyc / timezonec / iana-comp / x-comp) iana-comp = "BEGIN" ":" iana-token CRLF 1*contentline "END" ":" iana-token CRLF x-comp = "BEGIN" ":" x-name CRLF 1*contentline "END" ":" x-name CRLF |
う~ん、定義の中にアラームが入ってませんね・・。ま、追々分かってくるんでしょう・・。
さて、定義を見ればわかるものもありますが、iCalendarオブジェクトに関し、下記の注意事項が書かれていました。
- 「PRODID」「VERSION」を含む(MUST)
- 少なくともの一つのカレンダーコンポーネントを含む(MUST)
- 「VFREEBUSY」や「VTIMEZONE」のみのiCalendarオブジェクトも可(special formだとのこと)
- 多数の異なるカレンダーコンポーネントを含むことも可
- 「VEVENT」「VTODO」「VJOURNAL」のいずれか1つのみを含むものが一般的
- アプリは「x-comp」「iana-comp」が理解できなければ無視する(MUST)
- アプリはiCalendarオブジェクトのインポートが可能な場合は、本仕様のすべてのコンポーネントタイプをサポートすべき(SHOULD)
- アプリはiCalendarオブジェクトのインポートが可能な場合は、いかなるコンポーネントも削除しないべき(SHOULD NOT)
この章で、ようやくiCalendarオブジェクトの全体が見えてきましたねぇ・・。できれば、ここから書いて欲しかった様な気もしますが・・。
つづく。
コメント 0