2.2.1.41.1 TZRule Structure

Type: PtypBinary ([MS-OXCDATA] section 2.11.1)

Each TZRule structure is represented as shown in the following diagram.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Major version

Minor version

Reserved

TZRule flags

wYear

X

...

...

...

lBias

...

lStandardBias

...

lDaylightBias

...

stStandardDate

...

...

...

...

stDaylightDate

...

...

...

...

Major version (1 byte):  This field is set to 0x02.

Minor version (1 byte):  This field is set to 0x01.

Reserved (2 bytes):  This field MUST be set to 0x003E.

TZRule flags (2 bytes):  This field contains individual bit flags that specify information about this TZRule structure, represented here in little-endian byte order.

If the TZRULE property associated with this TZRULE flags field specifies the time zone rule (2) that will be used to convert to and from UTC, both of the flags specified in the following diagram are set (for example, the value is 0x0003). If this is not the active time zone rule (2), neither of these flags are set. These flags are set on exactly one TZRule structure that is contained in the associated property, and the flags for all other rules (2) MUST be set to zero (0).


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

R

E

unused

R - TZRULE_FLAG_RECUR_CURRENT_TZREG (1 bit): This flag specifies that this rule (2) is associated with a recurring series.

E - TZRULE_FLAG_EFFECTIVE_TZREG (1 bit): This flag specifies that this rule (2) is the effective rule (2).

unused (14 bits):  These bits are not used. MUST be zero and MUST be ignored.

wYear (2 bytes):  A property that specifies the year in which this rule (2) is scheduled to take effect. A rule (2) will remain in effect from January 1 of its wYear field value until January 1 of the next rule's (2) wYear field value. If no rules (2) exist for subsequent years, this rule (2) will remain in effect indefinitely.

X (14 bytes):  This field is unused; MUST be all zeros.

lBias (4 bytes):  This field specifies the time zone's offset in minutes from UTC.

lStandardBias (4 bytes):  This field specifies the offset in minutes from the value stored in the lBias field during standard time.

lDaylightBias (4 bytes):  This field specifies the offset in minutes from lBias during daylight saving time.

stStandardDate (16 bytes):  A SYSTEMTIME structure ([MS-DTYP]). This field contains the date and local time to begin using the value of the lStandardBias field.

If the time zone does not support daylight saving time, the wMonth field in the SYSTEMTIME structure MUST be zero. If the wYear field in the SYSTEMTIME structure is not zero, the date is interpreted as an absolute date that only occurs once. If the wYear field is zero, the date is interpreted as a relative date that occurs yearly. The wHour and wMinute fields are set to the transition time, the wDayOfWeek field is set to the appropriate weekday, and the wDay field is set to indicate the occurrence of the day of the week within the month (1 to 5, where 5 indicates the final occurrence during the month if that day of the week does not occur 5 times).

stDaylightDate (16 bytes):  A SYSTEMTIME structure containing the date and local time that specifies when to begin using the value stored in the lDaylightBias field. This property has the same format and constraints as the stStandardDate field.