Date Format Patterns
New in version NG 3.0
Date Format Patterns are available since version NG 3.0
Values of fields of type DATE can be formatted in various ways. By default, FACT-Finder recognizes two date formats: ISO-8601 dates and UNIX timestamps (in milliseconds).
If the provided values of a date field are formatted in a way different from ISO-8601 and a timestamp in milliseconds, since version NG 3.0 a pattern describing this format can be defined on the corresponding field. FACT-Finder will then recognize the customized format in addition to the two default date formats.
In order to work correctly, the configured pattern must conform with the specifications of date format patterns provided in the following paragraphs.
Please note that the configured pattern is exclusively used for parsing the date values during data imports. Dates, which are returned by the REST API or displayed in the cockpit, are always formatted in ISO-8601 format.
Dates
The date format pattern is based on a sequence of encoding symbols. In this section, we specify how to define a pattern for date formats containing year, month and day.
We strongly advise you to include a time zone format in every date format and a time zone in every date value. More information about this topic can be found in the section “Time zone” below.
Please be aware that provided values that contain a date, but no time, will always contain the time 0:00 am implicitly. Thus, we advise you to always include a time in the provided value, too.
Unit | Symbol | Valid Values |
---|---|---|
year | yy | last 2 digits of a year within the range 2000 to 2099 |
yyyy | 4 digits of a year | |
month | M | 1 to 12 as well as 01 to 12 |
month (name, in English) | MMM | 3-letter code, e.g., Jan, Feb, ... |
| MMMM | full name |
day (of month) | d | 1 to 31 as well as 01 to 31 |
day (of week, in English) | eee | Mon to Sun |
| eeee | Monday to Sunday |
Common examples for dates:
Full pattern | Example date value |
---|---|
yyyy M d z | 1999 3 22 UTC |
yyyy MMMM d z | 2022 March 22 CET |
d MMM yy z | 1 Jan 22 CET |
eee d M yyyy z | Tue 22 3 2006 UTC |
eeee d MMMM yyyy z | Tuesday 22 March 2006 CET |
d.M.yyyy z | 22.8.1999 CEST |
yyyy.M.d z | 1999.03.22 UTC |
yyyy. M. d. z | 2033. 3. 22. CET |
d-M-yyyy z | 22-03-2010 UTC |
M-d-yy z | 3-22-10 CET |
yyyy-M-d z | 1999-03-22 UTC |
M/d/yy z | 3/22/10 CET |
d. MMMM yyyy z | 22. March 2001 UTC |
MMMM d, yyyy z | March 22, 2041 CET |
Time
The values of date fields in FACT-Finder always represent a certain point in time. If they do not contain any information regarding the time, they will be considered to represent the start of the day.
In order to provide time information, either the 24-hour format or the 12-hour format can be used. Missing information on the value of hour, minute, and/or second will be parsed as 0.
24-hour format:
Unit | Symbol | Valid Values |
---|---|---|
hour of day | H | 0 to 23 as well as 00 to 23 |
minute | m | 0 to 59 as well as 00 to 59 |
second | s | 0 to 59 as well as 00 to 59 |
second | ss | 00 to 59 |
second incl. milliseconds | ss.SSS | 00.000 to 59.999 |
Common examples for the 24-hour-format:
Full pattern | Example date value |
---|---|
d.M.yyyy H:m z | 22.03.2020 13:37 CET |
d.M.yyyy H:m:s z | 22.03.2020 13:37:05 CET |
d.M.yyyy H.m z | 22.03.2020 13.37 UTC |
d.M.yyyy H:m:ss.SSS z | 22.11.2022 15:57:06.539 CET |
12-hour format:
Unit | Symbol | Valid Values |
---|---|---|
hour of AM/PM | K | 0-11 (with 0:00 AM equal to 0:00 and 0:00 PM equal to 12:00) |
minute | m | 0 to 59 as well as 00 to 59 |
second | s | 0 to 59 as well as 00 to 59 |
second | ss | 00 to 59 |
second incl. milliseconds | ss.SSS | 00.000 to 59.999 |
am/pm | a | AM or PM |
Common examples for the 12-hour format:
Full pattern | AM example | PM example |
---|---|---|
d.M.yyyy K:m a z | 22.03.1999 8:15 AM UTC | 22.03.1999 08:15 PM UTC |
d.M.yyyy K:m:s a z | 22.03.1999 08:15:00 AM UTC | 22.03.1999 10:22:13 PM UTC |
Time zone
FACT-Finder will convert every provided date value into the time zone of the server it is hosted on.
The time zone of the server can be found in every date returned or displayed by FACT-Finder, since those are always formatted according to ISO-8601.
If a date value does not contain information regarding the time zone, FACT-Finder will interpret the date with the time zone of the server that runs FACT-Finder. That's why we suggest to always provide the time zone. Without a specified time zone, results will be less predictable.
The time zone information can be specified in the pattern by using the following symbols:
Unit | Symbol | Valid Values (examples) |
---|---|---|
time zone ID | VV | Europe/Berlin; Europe/Lisbon |
time zone name | z | PST; UTC; CET |
| zzzz | Pacific Standard Time; Universal Coordinated Time |
time zone offset | X | Z; +00; -08 |
| XXXX | Z; -0830; +083015 |
| XXXXX | Z; 08:30; +08:30:15 |
time zone offset (in English) | O | GMT; GMT+8; GMT-08:00 |
Examples:
Full pattern | Example Value | Resulting ISO-8601 |
---|---|---|
d.M.yyyy H:mXXXX | 30.08.2022 08:15+0200 | 2022-08-30T08:15:00+02:00 |
d.M.yyyy H:m O | 22.02.2022 08:15 GMT+2 | 2022-02-22T07:15:00+01:00 |
d.M.yyyy H:m z | 22.02.2022 05:06 PDT | 2022-02-22T14:06:00+01:00 |
d.M.yyyy H:m z | 22.02.2022 05:06 CET | 2022-02-22T05:06:00+01:00 |
d.M.yyyy H:m zzzz | 22.02.2022 05:06 Universal Coordinated Time | 2022-02-22T06:06:00+01:00 |
Special case: time not provided but time zone provided (not suggested!):
If dates do not contain information about their time zone, they are interpreted in the time zone of the hosting server (see example #1 below).
As mentioned above, dates without a specified time are interpreted to reference the start of the day. By specifying the time zone, the provided value will reference the start of the given day in that time zone. FACT-Finder will always reference that exact same point in time. However, please be aware that the day in the resulting ISO-8601 date may differ from the provided value, due to time differences between the hosting location and the given time zone (see example #3 below).
Example value | Start of the day in: | Resulting ISO-8601 |
---|---|---|
30.08.2022 | hosting location i.e. Berlin | 2022-08-30T00:00:00+02:00 |
30.08.2022+0100 | London | 2022-08-30T01:00:00+02:00 |
30.08.2022+0300 | Moscow | 2022-08-29T23:00:00+02:00 |
Free text
All letters A to Z and a to z are reserved pattern symbols. Any non-letter character, other than '[', ']', '{', '}', '#' and the single quote, will be parsed as is. You can mask letters by surrounding them with single quotes (') if you want to use them in free text. Use a single quote to mask a single quote ('').
Examples:
Full pattern | example date value |
---|---|
d. MMM ''yy z | 22. Jan '99 UTC |
'Export date:' yyyy M d z | Export date: 1999 03 22 UTC |
d'x'M'x'yyyy’x’z | 22x3x1999xUTC |
d.M.yyyy H'h'm z | 22.03.1999 13h37 CET |
d.M.yyyy 'at' H:m z | 22.03.1999 at 13:37 CET |
d.M.yyyy H 'o''clock' z | 22.03.1999 5 o'clock UTC |