Temporal Expression Playground
Interactive playground for parsing ISO 8601, RFC 3339, and IXDTF temporal expressions. Visualize the anatomy of temporal strings through color-coded lexer tokens and explore the structured AST output. Powered by @taskade/temporal-parser.
Try these examples:
About Temporal Parser
The @taskade/temporal-parser library parses ISO 8601, RFC 3339, and IXDTF temporal expressions into structured AST (Abstract Syntax Tree) format.
This parser supports a wide range of temporal formats including:
- Dates:
2025-01-12 - Times:
T10:30:45 - Timezones:
+08:00,[Asia/Singapore] - Durations:
P1Y2M3DT4H5M6S - Ranges:
2025-01-01/2025-12-31 - IXDTF Annotations:
[u-ca=gregory]
Learn more: GitHub Repository · NPM Package
Standards reference
How ISO 8601, RFC 3339 and IXDTF fit together
ISO 8601 specifies interoperable representations for Gregorian dates and 24-hour times. RFC 3339 selects a narrower timestamp profile for Internet protocols. RFC 9557 extends RFC 3339 with optional bracketed suffixes, including time-zone and calendar information; it names that format IXDTF.
Verified parser examples
Each result below is generated at build time by @taskade/temporal-parser 1.1.0, then reduced to the AST fields that matter for the example.
| Format | Copy-paste input | Observed AST fields |
|---|---|---|
| RFC 3339 UTC timestamp | 2025-01-12T10:00:00Z | kind=DateTime; offset.kind=UtcOffset |
| RFC 9557 / IXDTF time zone and calendar | 1996-12-19T16:39:57-08:00[America/Los_Angeles][u-ca=hebrew] | kind=DateTime; offset=-08:00; timeZone=America/Los_Angeles; u-ca=hebrew |
| ISO 8601 duration | P1Y2M3DT4H5M6S | kind=Duration; years=1; months=2; days=3; hours=4; minutes=5; seconds=6 |
| ISO 8601 interval | 2025-01-01/2025-12-31 | kind=Range; start=2025-01-01; end=2025-12-31 |
What this parser does—and does not do
The library lexes supported strings and returns a structural AST. Unsupported grammar throws a parse error; a successful parse does not by itself prove that a value is valid for every downstream use.
- Version 1.1.0 implements a useful subset of the named standards. These accepted examples are not a claim of full conformance to every ISO 8601, RFC 3339, or RFC 9557 syntax and rule.
- The AST preserves a numeric offset, time-zone identifier, and suffix annotations, but the parser does not verify that the identifier exists in IANA data, resolve its time-zone rules, or check that the offset agrees with the named zone.
- Date and time field ranges are not validated. For example,
2025-13-40currently produces a DateTime AST with month 13 and day 40. Validate parsed fields before treating them as a real date.
Primary references
- ISO 8601-1:2019 — basic rules
- RFC 3339 — Internet timestamps
- RFC 9557 — IXDTF suffixes
- TC39 Temporal specification
- Temporal workflow platform documentation
Standards terminology and parser behavior verified against package version 1.1.0 on 14 July 2026.