Dettagli importanti di iCalendar RFC 2445

Informazioni sul modello di oggetti Aspose iCalendar

Aspose.Email contiene tutte le classi fornite da Aspose iCalendar componente RecurrencePattern e RecurrenceRule sono le classi centrali di Aspose iCalendar, e fornire implementazioni concrete degli elementi RFC 2445 corrispondenti.

Il RecurrencePattern la classe rappresenta l’intero modello di ricorrenza. Puoi creare un nuovo modello di ricorrenza da zero usando il costruttore predefinito o caricare un modello esistente in CalendarRecurrence. Il RecurrenceRule la classe rappresenta la parte RRULE o EXRULE di un modello di ricorrenza. RecurrenceRule espone numerose proprietà che corrispondono direttamente ai loro equivalenti nello standard iCalendar. Per esempio, ByMonth corrisponde a BYMONTH in iCalendar e così via. Esaminando o impostando i valori del RecurrenceRule proprietà che puoi analizzare o modificare una regola di ricorrenza. Per maggiori informazioni e esempi di codice, vedi RecurrencePattern e RecurrenceRule nella Riferimento API.

Dettagli importanti di iCalendar RFC 2445

Questa sezione include i seguenti argomenti:

  • Formati di data e ora.
  • DATE.
  • DATE‑TIME con ora locale.
  • DATE‑TIME con ora UTC.
  • DATE‑TIME con ora locale e fuso orario.
  • BYWEEKNO fornisce conformità a ISO 8601

Formati di data e ora

Le date, o le date con orari associati, possono essere usate negli elementi DTSTART, UNTIL, EXDATE e RDATE quando si specifica un modello di ricorrenza. iCalendar definisce il tipo di valore DATE per identificare valori che contengono una data di calendario e definisce anche il tipo DATE‑TIME per identificare valori che specificano una data di calendario precisa e l’ora del giorno. I valori DATE‑TIME possono essere specificati in tre forme, con:

  • Ora locale.
  • Ora UTC.
  • Ora locale e fuso orario.

DATE

Secondo lo standard iCalendar, i valori DATE devono seguire il formato yyyyMMdd. L’esempio seguente rappresenta il 14 luglio 1997: 19970714

DATE-TIME con ora locale

Il formato data con ora locale è semplicemente un valore date‑time che non contiene il designatore UTC e non fa riferimento a un fuso orario. Per esempio, quanto segue rappresenta il 18 gennaio 1998, alle 23:00: DTSTART:19980118T230000. I valori date‑time di questo tipo sono detti "floating" e non sono legati a nessun fuso orario particolare. Vengono usati per rappresentare lo stesso valore di ora, minuto e secondo indipendentemente dal fuso orario osservato.

DATE-TIME con ora UTC

La data con ora UTC, o ora assoluta, è identificata da un carattere suffisso Z MAIUSCOLO latino, il designatore UTC, aggiunto al valore dell’ora. Per esempio, quanto segue rappresenta il 19 gennaio 1998, alle 07:00 UTC: DTSTART:19980119T070000Z Si prega di notare che Aspose iCalendar ignora il suffisso Z del formato UTC e tratta l’ora come ora locale. Lo standard RFC2445 afferma che una porzione di tempo specificata nella regola UNTIL di un modello di ricorrenza deve essere in formato UTC. Questa è un’affermazione molto strana, e in effetti ci sono esempi nello standard calcolati in modo errato. Aspose iCalendar accetta l’ora in qualsiasi formato nella regola UNTIL.

DATE-TIME con ora locale e fuso orario

Per fare riferimento al fuso orario, DATE-TIME viene modificato con la proprietà TZID. Per esempio, quanto segue rappresenta le 2:00 a New York il 19 gennaio 1998: DTSTART;TZID=US-Eastern:19980119T020000. Si prega di notare che Aspose iCalendar al momento ignora il parametro TZID e tratta l’ora come ora locale.

BYWEEKNO fornisce conformità a ISO 8601

Usa BYWEEKNO solo quando la conformità con ISO 8601 è richiesto. I numeri di settimana definiti da ISO 8601 sono molto diversi dai numeri di settimana nel senso comune. Secondo ISO 8601, la settimana numero uno dell’anno solare è la prima settimana dell’anno che contiene almeno quattro giorni. Questa regola rende l’algoritmo specifico per applicazioni che richiedono la conformità a ISO 8601 e lo rende quasi inapplicabile ad altri usi. ISO 8601 è supportato da alcune applicazioni bancarie e finanziarie europee. Viene anche usato in televisione per la programmazione delle pubblicità. La regola BYWEEKNO specifica un elenco di numeri separati da virgole che identificano le settimane dell’anno. I valori validi sono da 1 a 53 e da 1 a 53. Questo corrisponde alle settimane secondo la numerazione settimanale definita da ISO 8600. BYWEEKNO è valido solo per regole YEARLY.