## net.sf.saxon.number
Class NamedTimeZone

    java.lang.Object
      net.sf.saxon.number.NamedTimeZone

    public class NamedTimeZone

extends java.lang.Object

This class attempts to identify a timezone name, given the date (including the time zone offset) and the country. The process is heuristic: sometimes there is more than one timezone that matches this information, sometimes there is none, but the class simply does its best. This is in support of the XSLT format-date() function.

Constructor Summary
`NamedTimeZone()`

Method Summary
`static java.lang.String` `formatTimeZoneOffset(DateTimeValue timeValue)` Format a timezone in numeric form for example +03:00 (or Z for +00:00)
`static java.lang.String` `getOlsenTimeZoneName(DateTimeValue date, java.lang.String country)` Try to identify a timezone name corresponding to a given date (including time zone) and a given country.
`static java.lang.String` `getTimeZoneNameForDate(DateTimeValue date, java.lang.String country)` Try to identify a timezone name corresponding to a given date (including time zone) and a given country.
`static java.lang.Boolean` `inSummerTime(DateTimeValue date, java.lang.String region)` Determine whether a given date/time is in summer time (daylight savings time) in a given region.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### NamedTimeZone

    public NamedTimeZone()

Method Detail

### getTimeZoneNameForDate

    public static java.lang.String getTimeZoneNameForDate(DateTimeValue date,
                                                          java.lang.String country)

  Try to identify a timezone name corresponding to a given date (including time zone) and a given country. Note that this takes account of Java's calendar of daylight savings time changes in different countries. The returned value is the convenional short timezone name, for example PDT for Pacific Daylight Time

  Parameters:
    `date` - the dateTimeValue, including timezone
    `country` - the two-letter ISO country code
  Returns:
    the short timezone name if a timezone with the given time displacement is in use in the country in question (on the appropriate date, if known). Otherwise, the formatted (numeric) timezone offset. If the dateTimeValue supplied has no timezone, return a zero-length string.

### formatTimeZoneOffset

    public static java.lang.String formatTimeZoneOffset(DateTimeValue timeValue)

  Format a timezone in numeric form for example +03:00 (or Z for +00:00)

  Parameters:
    `timeValue` - the value whose timezone is to be formatted
  Returns:
    the formatted timezone

### getOlsenTimeZoneName

    public static java.lang.String getOlsenTimeZoneName(DateTimeValue date,
                                                        java.lang.String country)

  Try to identify a timezone name corresponding to a given date (including time zone) and a given country. Note that this takes account of Java's calendar of daylight savings time changes in different countries. The returned value is the Olsen time zone name, for example "Pacific/Los_Angeles", followed by an asterisk (*) if the time is in daylight savings time in that timezone.

  Parameters:
    `date` - the dateTimeValue, including timezone
    `country` - the country, as a two-letter code
  Returns:
    the Olsen timezone name if a timezone with the given time displacement is in use in the country in question (on the appropriate date, if known). In this case an asterisk is appended to the result if the date/time is in daylight savings time. Otherwise, the formatted (numeric) timezone offset. If the dateTimeValue supplied has no timezone, return a zero-length string.

### inSummerTime

    public static java.lang.Boolean inSummerTime(DateTimeValue date,
                                                 java.lang.String region)

  Determine whether a given date/time is in summer time (daylight savings time) in a given region. This relies on the Java database of changes to daylight savings time. Since summer time changes are set by civil authorities the information is not necessarily reliable when applied to dates in the future.

  Parameters:
    `date` - the date/time in question
    `region` - either the two-letter ISO country code, or an Olsen timezone name such as "America/New_York" or "Europe/Lisbon". If the country code denotes a country spanning several timezones, such as the US, then one of them is chosen arbitrarily.
  Returns:
    true if the date/time is known to be in summer time in the relevant country; false if it is known not to be in summer time; null if there is no timezone or if no information is available for the specified region.

Copyright (c) Saxonica Limited. All rights reserved.