ASTERIXDB-1281 - Interval format update to AQL and ADM
The new interval format takes a more generic approach to representing intervals.
Here is an example for a date interval:
interval(date("2012-01-01”), date(”2013-04-01”))
Note that the interval type is defined by the arguments to the interval expression.
Currently only date, time, and datetime types are supported for intervals. The new
format is used for ADM and AQL.
In addition to the format change, the internal byte structure of an interval has been
updated. The format looks like the following:
byte tag, T start, T end (where T is a date, time or datetime type)
Note how the tag has been moved to the front. Also with the new sturcture, an
interval is variable length, not fixed length as before.
Change-Id: I009c71b7a445d141e228ba15d56d0b6cf3c8a3f5
Reviewed-on: https://asterix-gerrit.ics.uci.edu/602
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Till Westmann <tillw@apache.org>
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.3.query.aql
index 8ccca18..23b820c 100644
--- a/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.3.query.aql
@@ -18,13 +18,13 @@
*/
use dataverse test;
-let $id1 := interval-from-date("2002-01-01", "2003-01-01")
-let $id2 := interval-from-date("2006-01-01", "2010-01-01")
-let $id3 := interval-from-date("2001-01-01", "2010-01-01")
-let $id4 := interval-from-date("2003-01-01", "2008-01-01")
-let $id5 := interval-from-date("2002-01-01", "2010-01-01")
-let $id6 := interval-from-date("2004-01-01", "2009-01-01")
-let $id7 := interval-from-date("2003-01-01", "2008-01-01")
+let $id1 := interval(date("2002-01-01"), date("2003-01-01"))
+let $id2 := interval(date("2006-01-01"), date("2010-01-01"))
+let $id3 := interval(date("2001-01-01"), date("2010-01-01"))
+let $id4 := interval(date("2003-01-01"), date("2008-01-01"))
+let $id5 := interval(date("2002-01-01"), date("2010-01-01"))
+let $id6 := interval(date("2004-01-01"), date("2009-01-01"))
+let $id7 := interval(date("2003-01-01"), date("2008-01-01"))
for $id in [$id1, $id2, $id3, $id4, $id5, $id6, $id7]
order by $id
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.4.query.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.4.query.aql
index e0d9410..b16313e 100644
--- a/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.4.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/interval_order/interval_order.4.query.aql
@@ -18,13 +18,13 @@
*/
use dataverse test;
-let $id1 := interval-from-date("2002-01-01", "2003-01-01")
-let $id2 := interval-from-date("2006-01-01", "2010-01-01")
-let $id3 := interval-from-date("2001-01-01", "2010-01-01")
-let $id4 := interval-from-date("2003-01-01", "2008-01-01")
-let $id5 := interval-from-date("2002-01-01", "2010-01-01")
-let $id6 := interval-from-date("2004-01-01", "2009-01-01")
-let $id7 := interval-from-date("2003-01-01", "2008-01-01")
+let $id1 := interval(date("2002-01-01"), date("2003-01-01"))
+let $id2 := interval(date("2006-01-01"), date("2010-01-01"))
+let $id3 := interval(date("2001-01-01"), date("2010-01-01"))
+let $id4 := interval(date("2003-01-01"), date("2008-01-01"))
+let $id5 := interval(date("2002-01-01"), date("2010-01-01"))
+let $id6 := interval(date("2004-01-01"), date("2009-01-01"))
+let $id7 := interval(date("2003-01-01"), date("2008-01-01"))
for $id in [$id1, $id2, $id3, $id4, $id5, $id6, $id7]
order by $id desc
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_equality/issue363_equality.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_equality/issue363_equality.3.query.aql
index 037ce47..b6564eb 100644
--- a/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_equality/issue363_equality.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_equality/issue363_equality.3.query.aql
@@ -31,7 +31,7 @@
let $v6 := polygon("-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75")
let $v7 := circle("0.1234,-1.00e-10 +10.5E-2")
let $v8 := rectangle("0.1234,-1.00e-10 5.5487,0.48765")
-let $v9 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+let $v9 := interval(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
let $dv1 := duration("P3Y6M3DT9H5M2.348S")
let $dv2 := year-month-duration("P3Y6M")
let $dv3 := day-time-duration("P3DT9H5M2.348S")
@@ -40,7 +40,7 @@
let $dv6 := polygon("-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75")
let $dv7 := circle("0.1234,-1.00e-10 +10.5E-2")
let $dv8 := rectangle("0.1234,-1.00e-10 5.5487,0.48765")
-let $dv9 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+let $dv9 := interval(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
let $ndv1 := duration("P4Y6M3DT9H5M2.348S")
let $ndv2 := year-month-duration("P3Y7M")
let $ndv3 := day-time-duration("P3DT1H5M2.348S")
@@ -49,22 +49,22 @@
let $ndv6 := polygon("-1.0,+10.5e2 -02.19E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75")
let $ndv7 := circle("0.5678,-1.00e-10 +10.5E-2")
let $ndv8 := rectangle("0.5678,-1.00e-10 5.5487,0.48765")
-let $ndv9 := interval-from-datetime(datetime("-1983-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+let $ndv9 := interval(datetime("-1983-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
-return { "duration": $v1 = $dv1,
-"year-month-duration": $v2 = $dv2,
-"day-time-duration": $v3 = $dv3,
-"point": $v4 = $dv4,
-"line": $v5 = $dv5,
+return { "duration": $v1 = $dv1,
+"year-month-duration": $v2 = $dv2,
+"day-time-duration": $v3 = $dv3,
+"point": $v4 = $dv4,
+"line": $v5 = $dv5,
"polygon": $v6 = $dv6,
"circle": $v7 = $dv7,
"rectangle": $v8 = $dv8,
"interval": $v9 = $dv9,
-"duration2": $v1 != $ndv1,
-"year-month-duration2": $v2 != $ndv2,
-"day-time-duration2": $v3 != $ndv3,
-"point2": $v4 != $ndv4,
-"line2": $v5 != $ndv5,
+"duration2": $v1 != $ndv1,
+"year-month-duration2": $v2 != $ndv2,
+"day-time-duration2": $v3 != $ndv3,
+"point2": $v4 != $ndv4,
+"line2": $v5 != $ndv5,
"polygon2": $v6 != $ndv6,
"circle2": $v7 != $ndv7,
"rectangle2": $v8 != $ndv8,
diff --git a/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.aql
index bf20a2f..9d1a868 100644
--- a/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.aql
@@ -22,8 +22,8 @@
* Date : 9 May 2013
* Issue : 363
*/
-
-let $v1 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
-let $dv1 := interval-from-datetime(datetime("-1983-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+
+let $v1 := interval(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+let $dv1 := interval(datetime("-1983-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
return { "interval0": $v1 > $dv1, "interval1": $dv1 < $v1, "interval2": $v1 >= $dv1, "interval3": $dv1 <= $v1 }
diff --git a/asterix-app/src/test/resources/runtimets/queries/constructor/interval/interval.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/constructor/interval/interval.3.query.aql
index 2e1b6f6..b5eb998 100644
--- a/asterix-app/src/test/resources/runtimets/queries/constructor/interval/interval.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/constructor/interval/interval.3.query.aql
@@ -19,24 +19,6 @@
use dataverse test;
-let $itv11 := interval-from-date(date("2010-10-30"), date("2012-10-21"))
-let $itv12 := interval-from-date("2010-10-30", date("2012-10-21"))
-let $itv13 := interval-from-date(date("2010-10-30"), "2012-10-21")
-let $itv14 := interval-from-date("2010-10-30", "2012-10-21")
-let $itv15 := interval-from-date(null, "2012-10-21")
-let $itv16 := interval-from-date("2010-10-30", null)
-let $itv21 := interval-from-time(time("03:04:05.678-11:00"), time("232425267+0200"))
-let $itv22 := interval-from-time("03:04:05.678-11:00", time("232425267+0200"))
-let $itv23 := interval-from-time(time("03:04:05.678-11:00"), "232425267+0200")
-let $itv24 := interval-from-time("03:04:05.678-11:00", "232425267+0200")
-let $itv25 := interval-from-time(null, time("232425267+0200"))
-let $itv26 := interval-from-time(time("03:04:05.678-11:00"), null)
-let $itv31 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
-let $itv32 := interval-from-datetime("-1987-11-19T02:43:57.938+08:00", datetime("19991112T124935948-0700"))
-let $itv33 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), "19991112T124935948-0700")
-let $itv34 := interval-from-datetime("-1987-11-19T02:43:57.938+08:00", "19991112T124935948-0700")
-let $itv35 := interval-from-datetime(null, datetime("19991112T124935948-0700"))
-let $itv36 := interval-from-datetime(datetime("-1987-11-19T02:43:57.938+08:00"), null)
let $itv41 := interval-start-from-date(date("0001-12-27"), duration("P3Y394DT48H398.483S"))
let $itv42 := interval-start-from-date("0001-12-27", duration("P3Y394DT48H398.483S"))
let $itv43 := interval-start-from-date(date("0001-12-27"), "P3Y394DT48H398.483S")
@@ -55,6 +37,15 @@
let $itv64 := interval-start-from-datetime("-2043-11-19T15:32:39.293", "P439Y3M20DT20H39M58.949S")
let $itv65 := interval-start-from-datetime(null, duration("P439Y3M20DT20H39M58.949S"))
let $itv66 := interval-start-from-datetime(datetime("-2043-11-19T15:32:39.293"), null)
+let $itv71 := interval(date("2010-10-30"), date("2012-10-21"))
+let $itv72 := interval(null, date("2012-10-21"))
+let $itv73 := interval(date("2010-10-30"), null)
+let $itv74 := interval(time("03:04:05.678-11:00"), time("232425267+0200"))
+let $itv75 := interval(null, time("232425267+0200"))
+let $itv76 := interval(time("03:04:05.678-11:00"), null)
+let $itv77 := interval(datetime("-1987-11-19T02:43:57.938+08:00"), datetime("19991112T124935948-0700"))
+let $itv78 := interval(null, datetime("19991112T124935948-0700"))
+let $itv79 := interval(datetime("-1987-11-19T02:43:57.938+08:00"), null)
-return {"interval11": $itv11, "interval12": $itv12, "interval13": $itv13, "interval14": $itv14, "interval15": $itv15, "interval16": $itv16, "interval21": $itv21, "interval22": $itv22, "interval23": $itv23, "interval24": $itv24, "interval25": $itv25, "interval26": $itv26, "interval31": $itv31, "interval32": $itv32, "interval33": $itv33, "interval34": $itv34, "interval35": $itv35, "interval36": $itv36, "interval41": $itv41, "interval42": $itv42, "interval43": $itv43, "interval44": $itv44, "interval45": $itv45, "interval46": $itv46, "interval51": $itv51, "interval52": $itv52, "interval53": $itv53, "interval54": $itv54, "interval55": $itv55, "interval56": $itv56, "interval61": $itv61, "interval62": $itv62, "interval63": $itv63, "interval64": $itv64, "interval65": $itv65, "interval66": $itv66}
+return {"interval41": $itv41, "interval42": $itv42, "interval43": $itv43, "interval44": $itv44, "interval45": $itv45, "interval46": $itv46, "interval51": $itv51, "interval52": $itv52, "interval53": $itv53, "interval54": $itv54, "interval55": $itv55, "interval56": $itv56, "interval61": $itv61, "interval62": $itv62, "interval63": $itv63, "interval64": $itv64, "interval65": $itv65, "interval66": $itv66, "interval71": $itv71, "interval72": $itv72, "interval73": $itv73, "interval74": $itv74, "interval75": $itv75, "interval76": $itv76, "interval77": $itv77, "interval78": $itv78, "interval79": $itv79}
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/accessors_interval/accessors_interval.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/accessors_interval/accessors_interval.3.query.aql
index 78e97d9..7f9101e 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/accessors_interval/accessors_interval.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/accessors_interval/accessors_interval.3.query.aql
@@ -18,8 +18,8 @@
*/
use dataverse test;
-let $interval1 := interval-from-date(date("2010-10-30"), "2013-04-01")
-let $interval2 := interval-from-time("08:09:10.234Z", time("203040567+0800"))
-let $interval3 := interval-from-datetime("2009-09-01T00:00:00.000+08:00", datetime-from-date-time(date("2013-04-04"), time("00:00:00.000+08:00")))
+let $interval1 := interval(date("2010-10-30"), date("2013-04-01"))
+let $interval2 := interval(time("08:09:10.234Z"), time("203040567+0800"))
+let $interval3 := interval(datetime("2009-09-01T00:00:00.000+08:00"), datetime-from-date-time(date("2013-04-04"), time("00:00:00.000+08:00")))
return {"start1": get-interval-start($interval1), "end1": get-interval-end($interval1), "start2": get-interval-start($interval2), "end2": get-interval-end($interval2), "start3": get-interval-start($interval3), "end3": get-interval-end($interval3) }
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/duration_functions/duration_functions.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/duration_functions/duration_functions.3.query.aql
index 9b51407..e080b49 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/duration_functions/duration_functions.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/duration_functions/duration_functions.3.query.aql
@@ -24,9 +24,9 @@
use dataverse test;
-let $itv1 := interval-from-date("2010-10-30", "2010-12-21")
-let $itv2 := interval-from-datetime("2012-06-26T01:01:01.111", "2012-07-27T02:02:02.222")
-let $itv3 := interval-from-time("12:32:38", "20:29:20")
+let $itv1 := interval(date("2010-10-30"), date("2010-12-21"))
+let $itv2 := interval(datetime("2012-06-26T01:01:01.111"), datetime("2012-07-27T02:02:02.222"))
+let $itv3 := interval(time("12:32:38"), time("20:29:20"))
return { "dr1" : duration-from-interval($itv1),
"dr2" : duration-from-interval($itv2),
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/get_overlapping_interval/get_overlapping_interval.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/get_overlapping_interval/get_overlapping_interval.3.query.aql
index bc410ca..57afc1d 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/get_overlapping_interval/get_overlapping_interval.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/get_overlapping_interval/get_overlapping_interval.3.query.aql
@@ -21,9 +21,9 @@
* Expected result: success
**/
-{ "overlap1": get-overlapping-interval(interval-from-time(time("11:23:39"), time("18:27:19")), interval-from-time(time("12:23:39"), time("23:18:00"))),
- "overlap2": get-overlapping-interval(interval-from-time(time("12:23:39"), time("18:27:19")), interval-from-time(time("07:19:39"), time("09:18:00"))),
- "overlap3": get-overlapping-interval(interval-from-date(date("1980-11-30"), date("1999-09-09")), interval-from-date(date("2013-01-01"), date("2014-01-01"))),
- "overlap4": get-overlapping-interval(interval-from-date(date("1980-11-30"), date("2099-09-09")), interval-from-date(date("2013-01-01"), date("2014-01-01"))),
- "overlap5": get-overlapping-interval(interval-from-datetime(datetime("1844-03-03T11:19:39"), datetime("2000-10-30T18:27:19")), interval-from-datetime(datetime("1989-03-04T12:23:39"), datetime("2009-10-10T23:18:00"))),
- "overlap6": get-overlapping-interval(interval-from-datetime(datetime("1989-03-04T12:23:39"), datetime("2000-10-30T18:27:19")), interval-from-datetime(datetime("1844-03-03T11:19:39"), datetime("1888-10-10T23:18:00"))) }
+{ "overlap1": get-overlapping-interval(interval(time("11:23:39"), time("18:27:19")), interval(time("12:23:39"), time("23:18:00"))),
+ "overlap2": get-overlapping-interval(interval(time("12:23:39"), time("18:27:19")), interval(time("07:19:39"), time("09:18:00"))),
+ "overlap3": get-overlapping-interval(interval(date("1980-11-30"), date("1999-09-09")), interval(date("2013-01-01"), date("2014-01-01"))),
+ "overlap4": get-overlapping-interval(interval(date("1980-11-30"), date("2099-09-09")), interval(date("2013-01-01"), date("2014-01-01"))),
+ "overlap5": get-overlapping-interval(interval(datetime("1844-03-03T11:19:39"), datetime("2000-10-30T18:27:19")), interval(datetime("1989-03-04T12:23:39"), datetime("2009-10-10T23:18:00"))),
+ "overlap6": get-overlapping-interval(interval(datetime("1989-03-04T12:23:39"), datetime("2000-10-30T18:27:19")), interval(datetime("1844-03-03T11:19:39"), datetime("1888-10-10T23:18:00"))) }
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
index d986a1e..62ed6a9 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/interval_functions/interval_functions.3.query.aql
@@ -18,25 +18,25 @@
*/
use dataverse test;
-let $itv1 := interval-from-date("2010-10-30", "2010-12-21")
-let $itv2 := interval-from-date("2011-10-30", "2012-10-21")
-let $itv3 := interval-from-date("2010-12-21", "2013-01-01")
+let $itv1 := interval(date("2010-10-30"), date("2010-12-21"))
+let $itv2 := interval(date("2011-10-30"), date("2012-10-21"))
+let $itv3 := interval(date("2010-12-21"), date("2013-01-01"))
let $blnBefore1 := interval-before($itv1, $itv2)
let $blnAfter1 := interval-after($itv2, $itv1)
let $blnBefore2 := interval-before($itv1, $itv3)
let $blnAfter2 := interval-after($itv3, $itv1)
-let $itv4 := interval-from-datetime("2012-06-26T01:01:01.111", "2012-07-27T02:02:02.222")
-let $itv5 := interval-from-datetime("20120727T020202222", "2013-08-08T03:03:03.333")
-let $itv6 := interval-from-datetime("19000707T020202222", "2013-08-07T03:03:03.333")
+let $itv4 := interval(datetime("2012-06-26T01:01:01.111"), datetime("2012-07-27T02:02:02.222"))
+let $itv5 := interval(datetime("20120727T020202222"), datetime("2013-08-08T03:03:03.333"))
+let $itv6 := interval(datetime("19000707T020202222"), datetime("2013-08-07T03:03:03.333"))
let $blnMeet1 := interval-meets($itv4, $itv5)
let $blnMetBy1 := interval-met-by($itv5, $itv4)
let $blnMeet2 := interval-meets($itv6, $itv4)
let $blnMetBy2 := interval-met-by($itv6, $itv4)
-let $itv7 := interval-from-time("12:32:38", "20:29:20")
-let $itv8 := interval-from-time("17:48:19", "22:19:49")
-let $itv9 := interval-from-time("01:32:49", "17:48:19")
+let $itv7 := interval(time("12:32:38"), time("20:29:20"))
+let $itv8 := interval(time("17:48:19"), time("22:19:49"))
+let $itv9 := interval(time("01:32:49"), time("17:48:19"))
let $blnOverlaps1 := interval-overlaps($itv7, $itv8)
let $blnOverlapped1 := interval-overlapped-by($itv8, $itv7)
let $blnOverlaps2 := interval-overlaps($itv9, $itv8)
@@ -44,21 +44,21 @@
let $blnOverlap1 := interval-overlapping($itv9, $itv7)
let $blnOverlap2 := interval-overlapping($itv9, $itv8)
-let $itv10 := interval-from-date("2010-10-30", "2010-11-30")
+let $itv10 := interval(date("2010-10-30"), date("2010-11-30"))
let $blnStarts1 := interval-starts($itv10, $itv1)
let $blnStarts2 := interval-starts($itv10, $itv2)
let $blnStartedBy1 := interval-started-by($itv1, $itv10)
let $blnStartedBy2 := interval-started-by($itv10, $itv2)
-let $itv10 := interval-from-datetime("19000707T020202222", "2013-08-07T03:03:03.333")
-let $itv11 := interval-from-datetime("19990707T020202222", "2013-08-07T03:03:03.333")
-let $itv12 := interval-from-datetime("-19990707T020202222", "2013-08-07T03:03:03.333")
+let $itv10 := interval(datetime("19000707T020202222"), datetime("2013-08-07T03:03:03.333"))
+let $itv11 := interval(datetime("19990707T020202222"), datetime("2013-08-07T03:03:03.333"))
+let $itv12 := interval(datetime("-19990707T020202222"), datetime("2013-08-07T03:03:03.333"))
let $blnCovers1 := interval-covers($itv10, $itv11)
let $blnCovers2 := interval-covers($itv10, $itv12)
let $blnCoveredBy1 := interval-covered-by($itv11, $itv10)
let $blnCoveredBy2 := interval-covered-by($itv12, $itv10)
-let $itv11 := interval-from-time("19:00:00.009", "20:29:20.000")
+let $itv11 := interval(time("19:00:00.009"), time("20:29:20.000"))
let $blnEnds1 := interval-ends($itv11, $itv7)
let $blnEnds2 := interval-ends($itv11, $itv8)
let $blnEndedBy1 := interval-ended-by($itv7, $itv11)
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
index 6b2c252..8011ad6 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins/overlap_bins.3.query.aql
@@ -21,9 +21,9 @@
* Expected result: success
**/
-let $itv1 := interval-from-time(time("17:23:37"), time("18:30:21"))
-let $itv2 := interval-from-date(date("1984-03-17"), date("2013-08-22"))
-let $itv3 := interval-from-datetime(datetime("1800-01-01T23:59:48.938"), datetime("2015-07-26T13:28:30.218"))
+let $itv1 := interval(time("17:23:37"), time("18:30:21"))
+let $itv2 := interval(date("1984-03-17"), date("2013-08-22"))
+let $itv3 := interval(datetime("1800-01-01T23:59:48.938"), datetime("2015-07-26T13:28:30.218"))
return { "timebins": overlap-bins($itv1, time("00:00:00"), day-time-duration("PT30M")),
"datebins": overlap-bins($itv2, date("1990-01-01"), year-month-duration("P20Y")),
"datetimebins": overlap-bins($itv3, datetime("1900-01-01T00:00:00.000"), year-month-duration("P100Y")) }
diff --git a/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.aql
index 41c2781..1661d68 100644
--- a/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.aql
@@ -18,7 +18,7 @@
*/
use dataverse multitask;
-for $bin in overlap-bins(interval-from-time(min(for $i in dataset logs return $i.time), max(for $i in dataset logs return $i.time + duration-from-ms($i.duration * 1000))), time("00:00:00.000"), day-time-duration("PT1M"))
+for $bin in overlap-bins(interval(min(for $i in dataset logs return $i.time), max(for $i in dataset logs return $i.time + duration-from-ms($i.duration * 1000))), time("00:00:00.000"), day-time-duration("PT1M"))
order by get-interval-start($bin)
return {
"timebin": $bin,
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_equality/issue363_equality.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_equality/issue363_equality.3.query.sqlpp
index da2e983..315b435 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_equality/issue363_equality.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_equality/issue363_equality.3.query.sqlpp
@@ -23,4 +23,21 @@
* Issue : 363
*/
-{'duration':(duration('P3Y6M3DT9H5M2.348S') = duration('P3Y6M3DT9H5M2.348S')),'year-month-duration':("year-month-duration"('P3Y6M') = "year-month-duration"('P3Y6M')),'day-time-duration':("day-time-duration"('P3DT9H5M2.348S') = "day-time-duration"('P3DT9H5M2.348S')),'point':(point('47.44,80.65') = point('47.44,80.65')),'line':(line('10.1234,11.1e-1 +10.2E-2,-11.22') = line('10.1234,11.1e-1 +10.2E-2,-11.22')),'polygon':(polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75') = polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75')),'circle':(circle('0.1234,-1.00e-10 +10.5E-2') = circle('0.1234,-1.00e-10 +10.5E-2')),'rectangle':(rectangle('0.1234,-1.00e-10 5.5487,0.48765') = rectangle('0.1234,-1.00e-10 5.5487,0.48765')),'interval':("interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) = "interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),'duration2':(duration('P3Y6M3DT9H5M2.348S') != duration('P4Y6M3DT9H5M2.348S')),'year-month-duration2':("year-month-duration"('P3Y6M') != "year-month-duration"('P3Y7M')),'day-time-duration2':("day-time-duration"('P3DT9H5M2.348S') != "day-time-duration"('P3DT1H5M2.348S')),'point2':(point('47.44,80.65') != point('47.4444,80.65')),'line2':(line('10.1234,11.1e-1 +10.2E-2,-11.22') != line('10.5678,11.1e-1 +10.2E-2,-11.22')),'polygon2':(polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75') != polygon('-1.0,+10.5e2 -02.19E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75')),'circle2':(circle('0.1234,-1.00e-10 +10.5E-2') != circle('0.5678,-1.00e-10 +10.5E-2')),'rectangle2':(rectangle('0.1234,-1.00e-10 5.5487,0.48765') != rectangle('0.5678,-1.00e-10 5.5487,0.48765')),'interval2':("interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) != "interval-from-datetime"(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')))};
+{ 'duration':(duration('P3Y6M3DT9H5M2.348S') = duration('P3Y6M3DT9H5M2.348S')),
+ 'year-month-duration':("year-month-duration"('P3Y6M') = "year-month-duration"('P3Y6M')),
+ 'day-time-duration':("day-time-duration"('P3DT9H5M2.348S') = "day-time-duration"('P3DT9H5M2.348S')),
+ 'point':(point('47.44,80.65') = point('47.44,80.65')),
+ 'line':(line('10.1234,11.1e-1 +10.2E-2,-11.22') = line('10.1234,11.1e-1 +10.2E-2,-11.22')),
+ 'polygon':(polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75') = polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75')),
+ 'circle':(circle('0.1234,-1.00e-10 +10.5E-2') = circle('0.1234,-1.00e-10 +10.5E-2')),
+ 'rectangle':(rectangle('0.1234,-1.00e-10 5.5487,0.48765') = rectangle('0.1234,-1.00e-10 5.5487,0.48765')),
+ 'interval':(interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) = interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),
+ 'duration2':(duration('P3Y6M3DT9H5M2.348S') != duration('P4Y6M3DT9H5M2.348S')),
+ 'year-month-duration2':("year-month-duration"('P3Y6M') != "year-month-duration"('P3Y7M')),
+ 'day-time-duration2':("day-time-duration"('P3DT9H5M2.348S') != "day-time-duration"('P3DT1H5M2.348S')),
+ 'point2':(point('47.44,80.65') != point('47.4444,80.65')),
+ 'line2':(line('10.1234,11.1e-1 +10.2E-2,-11.22') != line('10.5678,11.1e-1 +10.2E-2,-11.22')),
+ 'polygon2':(polygon('-1.0,+10.5e2 -02.15E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75') != polygon('-1.0,+10.5e2 -02.19E+50,2.5 -1.0,+3.3e3 -2.50E+05,20.15 +3.5e+2,03.6 -4.60E-3,+4.75 -2,+1.0e2 -2.00E+5,20.10 30.5,03.25 -4.33E-3,+4.75')),
+ 'circle2':(circle('0.1234,-1.00e-10 +10.5E-2') != circle('0.5678,-1.00e-10 +10.5E-2')),
+ 'rectangle2':(rectangle('0.1234,-1.00e-10 5.5487,0.48765') != rectangle('0.5678,-1.00e-10 5.5487,0.48765')),
+ 'interval2':(interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) != interval(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')))};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.sqlpp
index c72d273..f379db3 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.query.sqlpp
@@ -23,4 +23,7 @@
* Issue : 363
*/
-{'interval0':("interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) > "interval-from-datetime"(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),'interval1':("interval-from-datetime"(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) < "interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),'interval2':("interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) >= "interval-from-datetime"(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),'interval3':("interval-from-datetime"(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) <= "interval-from-datetime"(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')))};
+{ 'interval0':(interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) > interval(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),
+ 'interval1':(interval(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) < interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),
+ 'interval2':(interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) >= interval(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700'))),
+ 'interval3':(interval(datetime('-1983-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')) <= interval(datetime('-1987-11-19T02:43:57.938+08:00'),datetime('19991112T124935948-0700')))};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/constructor/interval/interval.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/constructor/interval/interval.3.query.sqlpp
index 83ffa9b..4ce9ff0 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/constructor/interval/interval.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/constructor/interval/interval.3.query.sqlpp
@@ -20,4 +20,30 @@
use test;
-{'interval11':test."interval-from-date"(test.date('2010-10-30'),test.date('2012-10-21')),'interval12':test."interval-from-date"('2010-10-30',test.date('2012-10-21')),'interval13':test."interval-from-date"(test.date('2010-10-30'),'2012-10-21'),'interval14':test."interval-from-date"('2010-10-30','2012-10-21'),'interval15':test."interval-from-date"(null,'2012-10-21'),'interval16':test."interval-from-date"('2010-10-30',null),'interval21':test."interval-from-time"(test.time('03:04:05.678-11:00'),test.time('232425267+0200')),'interval22':test."interval-from-time"('03:04:05.678-11:00',test.time('232425267+0200')),'interval23':test."interval-from-time"(test.time('03:04:05.678-11:00'),'232425267+0200'),'interval24':test."interval-from-time"('03:04:05.678-11:00','232425267+0200'),'interval25':test."interval-from-time"(null,test.time('232425267+0200')),'interval26':test."interval-from-time"(test.time('03:04:05.678-11:00'),null),'interval31':test."interval-from-datetime"(test.datetime('-1987-11-19T02:43:57.938+08:00'),test.datetime('19991112T124935948-0700')),'interval32':test."interval-from-datetime"('-1987-11-19T02:43:57.938+08:00',test.datetime('19991112T124935948-0700')),'interval33':test."interval-from-datetime"(test.datetime('-1987-11-19T02:43:57.938+08:00'),'19991112T124935948-0700'),'interval34':test."interval-from-datetime"('-1987-11-19T02:43:57.938+08:00','19991112T124935948-0700'),'interval35':test."interval-from-datetime"(null,test.datetime('19991112T124935948-0700')),'interval36':test."interval-from-datetime"(test.datetime('-1987-11-19T02:43:57.938+08:00'),null),'interval41':test."interval-start-from-date"(test.date('0001-12-27'),test.duration('P3Y394DT48H398.483S')),'interval42':test."interval-start-from-date"('0001-12-27',test.duration('P3Y394DT48H398.483S')),'interval43':test."interval-start-from-date"(test.date('0001-12-27'),'P3Y394DT48H398.483S'),'interval44':test."interval-start-from-date"('0001-12-27','P3Y394DT48H398.483S'),'interval45':test."interval-start-from-date"(null,test.duration('P3Y394DT48H398.483S')),'interval46':test."interval-start-from-date"(test.date('0001-12-27'),null),'interval51':test."interval-start-from-time"(test.time('20:03:20.948'),test.duration('P60DT48M389.938S')),'interval52':test."interval-start-from-time"('20:03:20.948',test.duration('P60DT48M389.938S')),'interval53':test."interval-start-from-time"(test.time('20:03:20.948'),'P60DT48M389.938S'),'interval54':test."interval-start-from-time"('20:03:20.948','P60DT48M389.938S'),'interval55':test."interval-start-from-time"(null,test.duration('P60DT48M389.938S')),'interval56':test."interval-start-from-time"(test.time('20:03:20.948'),null),'interval61':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),test.duration('P439Y3M20DT20H39M58.949S')),'interval62':test."interval-start-from-datetime"('-2043-11-19T15:32:39.293',test.duration('P439Y3M20DT20H39M58.949S')),'interval63':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),'P439Y3M20DT20H39M58.949S'),'interval64':test."interval-start-from-datetime"('-2043-11-19T15:32:39.293','P439Y3M20DT20H39M58.949S'),'interval65':test."interval-start-from-datetime"(null,test.duration('P439Y3M20DT20H39M58.949S')),'interval66':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),null)};
+{ 'interval41':test."interval-start-from-date"(test.date('0001-12-27'),test.duration('P3Y394DT48H398.483S')),
+ 'interval42':test."interval-start-from-date"('0001-12-27',test.duration('P3Y394DT48H398.483S')),
+ 'interval43':test."interval-start-from-date"(test.date('0001-12-27'),'P3Y394DT48H398.483S'),
+ 'interval44':test."interval-start-from-date"('0001-12-27','P3Y394DT48H398.483S'),
+ 'interval45':test."interval-start-from-date"(null,test.duration('P3Y394DT48H398.483S')),
+ 'interval46':test."interval-start-from-date"(test.date('0001-12-27'),null),
+ 'interval51':test."interval-start-from-time"(test.time('20:03:20.948'),test.duration('P60DT48M389.938S')),
+ 'interval52':test."interval-start-from-time"('20:03:20.948',test.duration('P60DT48M389.938S')),
+ 'interval53':test."interval-start-from-time"(test.time('20:03:20.948'),'P60DT48M389.938S'),
+ 'interval54':test."interval-start-from-time"('20:03:20.948','P60DT48M389.938S'),
+ 'interval55':test."interval-start-from-time"(null,test.duration('P60DT48M389.938S')),
+ 'interval56':test."interval-start-from-time"(test.time('20:03:20.948'),null),
+ 'interval61':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),test.duration('P439Y3M20DT20H39M58.949S')),
+ 'interval62':test."interval-start-from-datetime"('-2043-11-19T15:32:39.293',test.duration('P439Y3M20DT20H39M58.949S')),
+ 'interval63':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),'P439Y3M20DT20H39M58.949S'),
+ 'interval64':test."interval-start-from-datetime"('-2043-11-19T15:32:39.293','P439Y3M20DT20H39M58.949S'),
+ 'interval65':test."interval-start-from-datetime"(null,test.duration('P439Y3M20DT20H39M58.949S')),
+ 'interval66':test."interval-start-from-datetime"(test.datetime('-2043-11-19T15:32:39.293'),null),
+ 'interval71':test.interval(test.date('2010-10-30'),test.date('2012-10-21')),
+ 'interval72':test.interval(null,test.date('2012-10-21')),
+ 'interval73':test.interval(test.date('2010-10-30'),null),
+ 'interval74':test.interval(test.time('03:04:05.678-11:00'),test.time('232425267+0200')),
+ 'interval75':test.interval(null,test.time('232425267+0200')),
+ 'interval76':test.interval(test.time('03:04:05.678-11:00'),null),
+ 'interval77':test.interval(test.datetime('-1987-11-19T02:43:57.938+08:00'),test.datetime('19991112T124935948-0700')),
+ 'interval78':test.interval(null,test.datetime('19991112T124935948-0700')),
+ 'interval79':test.interval(test.datetime('-1987-11-19T02:43:57.938+08:00'),null)};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/accessors_interval/accessors_interval.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/accessors_interval/accessors_interval.3.query.sqlpp
index 4f30c74..5a8cc6a 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/accessors_interval/accessors_interval.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/accessors_interval/accessors_interval.3.query.sqlpp
@@ -20,4 +20,9 @@
use test;
-{'start1':test."get-interval-start"(test."interval-from-date"(test.date('2010-10-30'),'2013-04-01')),'end1':test."get-interval-end"(test."interval-from-date"(test.date('2010-10-30'),'2013-04-01')),'start2':test."get-interval-start"(test."interval-from-time"('08:09:10.234Z',test.time('203040567+0800'))),'end2':test."get-interval-end"(test."interval-from-time"('08:09:10.234Z',test.time('203040567+0800'))),'start3':test."get-interval-start"(test."interval-from-datetime"('2009-09-01T00:00:00.000+08:00',test."datetime-from-date-time"(test.date('2013-04-04'),test.time('00:00:00.000+08:00')))),'end3':test."get-interval-end"(test."interval-from-datetime"('2009-09-01T00:00:00.000+08:00',test."datetime-from-date-time"(test.date('2013-04-04'),test.time('00:00:00.000+08:00'))))};
+{ 'start1':test."get-interval-start"(test.interval(test.date('2010-10-30'),test.date('2013-04-01'))),
+ 'end1':test."get-interval-end"(test.interval(test.date('2010-10-30'),test.date('2013-04-01'))),
+ 'start2':test."get-interval-start"(test.interval(test.time('08:09:10.234Z'),test.time('203040567+0800'))),
+ 'end2':test."get-interval-end"(test.interval(test.time('08:09:10.234Z'),test.time('203040567+0800'))),
+ 'start3':test."get-interval-start"(test.interval(test.datetime('2009-09-01T00:00:00.000+08:00'),test."datetime-from-date-time"(test.date('2013-04-04'),test.time('00:00:00.000+08:00')))),
+ 'end3':test."get-interval-end"(test.interval(test.datetime('2009-09-01T00:00:00.000+08:00'),test."datetime-from-date-time"(test.date('2013-04-04'),test.time('00:00:00.000+08:00'))))};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/duration_functions/duration_functions.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/duration_functions/duration_functions.3.query.sqlpp
index 01a35b6..7f49e94 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/duration_functions/duration_functions.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/duration_functions/duration_functions.3.query.sqlpp
@@ -25,4 +25,6 @@
use test;
-{'dr1':test."duration-from-interval"(test."interval-from-date"('2010-10-30','2010-12-21')),'dr2':test."duration-from-interval"(test."interval-from-datetime"('2012-06-26T01:01:01.111','2012-07-27T02:02:02.222')),'dr3':test."duration-from-interval"(test."interval-from-time"('12:32:38','20:29:20')),'dr4':test."duration-from-interval"(null)};
+{ 'dr1':test."duration-from-interval"(test.interval(date('2010-10-30'),date('2010-12-21'))),
+ 'dr2':test."duration-from-interval"(test.interval(datetime('2012-06-26T01:01:01.111'),datetime('2012-07-27T02:02:02.222'))),
+ 'dr3':test."duration-from-interval"(test.interval(time('12:32:38'),time('20:29:20'))),'dr4':test."duration-from-interval"(null)};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.query.sqlpp
index d27952e..940be8c 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.query.sqlpp
@@ -21,4 +21,9 @@
* Expected result: success
**/
-select element {'overlap1':"get-overlapping-interval"("interval-from-time"(time('11:23:39'),time('18:27:19')),"interval-from-time"(time('12:23:39'),time('23:18:00'))),'overlap2':"get-overlapping-interval"("interval-from-time"(time('12:23:39'),time('18:27:19')),"interval-from-time"(time('07:19:39'),time('09:18:00'))),'overlap3':"get-overlapping-interval"("interval-from-date"(date('1980-11-30'),date('1999-09-09')),"interval-from-date"(date('2013-01-01'),date('2014-01-01'))),'overlap4':"get-overlapping-interval"("interval-from-date"(date('1980-11-30'),date('2099-09-09')),"interval-from-date"(date('2013-01-01'),date('2014-01-01'))),'overlap5':"get-overlapping-interval"("interval-from-datetime"(datetime('1844-03-03T11:19:39'),datetime('2000-10-30T18:27:19')),"interval-from-datetime"(datetime('1989-03-04T12:23:39'),datetime('2009-10-10T23:18:00'))),'overlap6':"get-overlapping-interval"("interval-from-datetime"(datetime('1989-03-04T12:23:39'),datetime('2000-10-30T18:27:19')),"interval-from-datetime"(datetime('1844-03-03T11:19:39'),datetime('1888-10-10T23:18:00')))};
+select element {'overlap1':"get-overlapping-interval"(interval(time('11:23:39'),time('18:27:19')),interval(time('12:23:39'),time('23:18:00'))),
+ 'overlap2':"get-overlapping-interval"(interval(time('12:23:39'),time('18:27:19')),interval(time('07:19:39'),time('09:18:00'))),
+ 'overlap3':"get-overlapping-interval"(interval(date('1980-11-30'),date('1999-09-09')),interval(date('2013-01-01'),date('2014-01-01'))),
+ 'overlap4':"get-overlapping-interval"(interval(date('1980-11-30'),date('2099-09-09')),interval(date('2013-01-01'),date('2014-01-01'))),
+ 'overlap5':"get-overlapping-interval"(interval(datetime('1844-03-03T11:19:39'),datetime('2000-10-30T18:27:19')),interval(datetime('1989-03-04T12:23:39'),datetime('2009-10-10T23:18:00'))),
+ 'overlap6':"get-overlapping-interval"(interval(datetime('1989-03-04T12:23:39'),datetime('2000-10-30T18:27:19')),interval(datetime('1844-03-03T11:19:39'),datetime('1888-10-10T23:18:00')))};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/interval_functions/interval_functions.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/interval_functions/interval_functions.3.query.sqlpp
index bf5fd67..d7c278d 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/interval_functions/interval_functions.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/interval_functions/interval_functions.3.query.sqlpp
@@ -19,25 +19,25 @@
use test;
-let itv1 = "interval-from-date"('2010-10-30', '2010-12-21')
-,itv2 = "interval-from-date"('2011-10-30', '2012-10-21')
-, itv3 = "interval-from-date"('2010-12-21', '2013-01-01')
+let itv1 = interval(date('2010-10-30'), date('2010-12-21'))
+, itv2 = interval(date('2011-10-30'), date('2012-10-21'))
+, itv3 = interval(date('2010-12-21'), date('2013-01-01'))
, blnBefore1 = "interval-before"(itv1, itv2)
, blnAfter1 = "interval-after"(itv2, itv1)
, blnBefore2 = "interval-before"(itv1, itv3)
, blnAfter2 = "interval-after"(itv3, itv1)
-, itv4 = "interval-from-datetime"('2012-06-26T01:01:01.111', '2012-07-27T02:02:02.222')
-, itv5 = "interval-from-datetime"('20120727T020202222', '2013-08-08T03:03:03.333')
-, itv6 = "interval-from-datetime"('19000707T020202222', '2013-08-07T03:03:03.333')
+, itv4 = interval(datetime('2012-06-26T01:01:01.111'), datetime('2012-07-27T02:02:02.222'))
+, itv5 = interval(datetime('20120727T020202222'), datetime('2013-08-08T03:03:03.333'))
+, itv6 = interval(datetime('19000707T020202222'), datetime('2013-08-07T03:03:03.333'))
, blnMeet1 = "interval-meets"(itv4, itv5)
, blnMetBy1 = "interval-met-by"(itv5, itv4)
, blnMeet2 = "interval-meets"(itv6, itv4)
, blnMetBy2 = "interval-met-by"(itv6, itv4)
-, itv7 = "interval-from-time"('12:32:38', '20:29:20')
-, itv8 = "interval-from-time"('17:48:19', '22:19:49')
-, itv9 = "interval-from-time"('01:32:49', '17:48:19')
+, itv7 = interval(time('12:32:38'), time('20:29:20'))
+, itv8 = interval(time('17:48:19'), time('22:19:49'))
+, itv9 = interval(time('01:32:49'), time('17:48:19'))
, blnOverlaps1 = "interval-overlaps"(itv7, itv8)
, blnOverlapped1 = "interval-overlapped-by"(itv8, itv7)
, blnOverlaps2 = "interval-overlaps"(itv9, itv8)
@@ -45,21 +45,21 @@
, blnOverlap1 = "interval-overlapping"(itv9, itv7)
, blnOverlap2 = "interval-overlapping"(itv9, itv8)
-, itv10 = "interval-from-date"('2010-10-30', '2010-11-30')
+, itv10 = interval(date('2010-10-30'), date('2010-11-30'))
, blnStarts1 = "interval-starts"(itv10, itv1)
, blnStarts2 = "interval-starts"(itv10, itv2)
, blnStartedBy1 = "interval-started-by"(itv1, itv10)
, blnStartedBy2 = "interval-started-by"(itv10, itv2)
-, itv10 = "interval-from-datetime"('19000707T020202222', '2013-08-07T03:03:03.333')
-, itv11 = "interval-from-datetime"('19990707T020202222', '2013-08-07T03:03:03.333')
-, itv12 = "interval-from-datetime"('-19990707T020202222', '2013-08-07T03:03:03.333')
+, itv10 = interval(datetime('19000707T020202222'), datetime('2013-08-07T03:03:03.333'))
+, itv11 = interval(datetime('19990707T020202222'), datetime('2013-08-07T03:03:03.333'))
+, itv12 = interval(datetime('-19990707T020202222'), datetime('2013-08-07T03:03:03.333'))
, blnCovers1 = "interval-covers"(itv10, itv11)
, blnCovers2 = "interval-covers"(itv10, itv12)
, blnCoveredBy1 = "interval-covered-by"(itv11, itv10)
, blnCoveredBy2 = "interval-covered-by"(itv12, itv10)
-, itv11 = "interval-from-time"('19:00:00.009', '20:29:20.000')
+, itv11 = interval(time('19:00:00.009'), time('20:29:20.000'))
, blnEnds1 = "interval-ends"(itv11, itv7)
, blnEnds2 = "interval-ends"(itv11, itv8)
, blnEndedBy1 = "interval-ended-by"(itv7, itv11)
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins/overlap_bins.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins/overlap_bins.3.query.sqlpp
index fa484e0..8f4b04b 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins/overlap_bins.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins/overlap_bins.3.query.sqlpp
@@ -21,4 +21,7 @@
* Expected result: success
**/
-{'timebins':"overlap-bins"("interval-from-time"(time('17:23:37'),time('18:30:21')),time('00:00:00'),"day-time-duration"('PT30M')),'datebins':"overlap-bins"("interval-from-date"(date('1984-03-17'),date('2013-08-22')),date('1990-01-01'),"year-month-duration"('P20Y')),'datetimebins':"overlap-bins"("interval-from-datetime"(datetime('1800-01-01T23:59:48.938'),datetime('2015-07-26T13:28:30.218')),datetime('1900-01-01T00:00:00.000'),"year-month-duration"('P100Y'))};
+{ 'timebins':"overlap-bins"(interval(time('17:23:37'),time('18:30:21')),time('00:00:00'),"day-time-duration"('PT30M')),
+ 'datebins':"overlap-bins"(interval(date('1984-03-17'),date('2013-08-22')),date('1990-01-01'),"year-month-duration"('P20Y')),
+ 'datetimebins':"overlap-bins"(interval(datetime('1800-01-01T23:59:48.938'),datetime('2015-07-26T13:28:30.218')),datetime('1900-01-01T00:00:00.000'),
+ "year-month-duration"('P100Y'))};
diff --git a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.sqlpp b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.sqlpp
index cfce69e..c996e7d 100644
--- a/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.sqlpp
+++ b/asterix-app/src/test/resources/runtimets/queries_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.query.sqlpp
@@ -27,7 +27,7 @@
group by i.app as subgid
order by subgid,multitask.count(i)
)}
-from multitask."overlap-bins"(multitask."interval-from-time"(multitask.min((
+from multitask."overlap-bins"(multitask.interval(multitask.min((
select element i.time
from logs as i
)),multitask.max((
diff --git a/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.3.adm b/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.3.adm
index 35b6077..c55c2fc 100644
--- a/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.3.adm
+++ b/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.3.adm
@@ -1,7 +1,7 @@
-interval-date("2001-01-01, 2010-01-01")
-interval-date("2002-01-01, 2003-01-01")
-interval-date("2002-01-01, 2010-01-01")
-interval-date("2003-01-01, 2008-01-01")
-interval-date("2003-01-01, 2008-01-01")
-interval-date("2004-01-01, 2009-01-01")
-interval-date("2006-01-01, 2010-01-01")
\ No newline at end of file
+interval(date("2001-01-01"), date("2010-01-01"))
+interval(date("2002-01-01"), date("2003-01-01"))
+interval(date("2002-01-01"), date("2010-01-01"))
+interval(date("2003-01-01"), date("2008-01-01"))
+interval(date("2003-01-01"), date("2008-01-01"))
+interval(date("2004-01-01"), date("2009-01-01"))
+interval(date("2006-01-01"), date("2010-01-01"))
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.4.adm b/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.4.adm
index b8b3d7a..0ce3141 100644
--- a/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.4.adm
+++ b/asterix-app/src/test/resources/runtimets/results/comparison/interval_order/interval_order.4.adm
@@ -1,7 +1,7 @@
-interval-date("2006-01-01, 2010-01-01")
-interval-date("2002-01-01, 2010-01-01")
-interval-date("2001-01-01, 2010-01-01")
-interval-date("2004-01-01, 2009-01-01")
-interval-date("2003-01-01, 2008-01-01")
-interval-date("2003-01-01, 2008-01-01")
-interval-date("2002-01-01, 2003-01-01")
\ No newline at end of file
+interval(date("2006-01-01"), date("2010-01-01"))
+interval(date("2002-01-01"), date("2010-01-01"))
+interval(date("2001-01-01"), date("2010-01-01"))
+interval(date("2004-01-01"), date("2009-01-01"))
+interval(date("2003-01-01"), date("2008-01-01"))
+interval(date("2003-01-01"), date("2008-01-01"))
+interval(date("2002-01-01"), date("2003-01-01"))
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/constructor/interval/interval.1.adm b/asterix-app/src/test/resources/runtimets/results/constructor/interval/interval.1.adm
index d6c9c9b..bc00add 100644
--- a/asterix-app/src/test/resources/runtimets/results/constructor/interval/interval.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/constructor/interval/interval.1.adm
@@ -1 +1 @@
-{ "interval11": interval-date("2010-10-30, 2012-10-21"), "interval12": interval-date("2010-10-30, 2012-10-21"), "interval13": interval-date("2010-10-30, 2012-10-21"), "interval14": interval-date("2010-10-30, 2012-10-21"), "interval15": null, "interval16": null, "interval21": interval-time("14:04:05.678Z, 21:24:25.267Z"), "interval22": interval-time("14:04:05.678Z, 21:24:25.267Z"), "interval23": interval-time("14:04:05.678Z, 21:24:25.267Z"), "interval24": interval-time("14:04:05.678Z, 21:24:25.267Z"), "interval25": null, "interval26": null, "interval31": interval-datetime("-1987-11-18T18:43:57.938Z, 1999-11-12T19:49:35.948Z"), "interval32": interval-datetime("-1987-11-18T18:43:57.938Z, 1999-11-12T19:49:35.948Z"), "interval33": interval-datetime("-1987-11-18T18:43:57.938Z, 1999-11-12T19:49:35.948Z"), "interval34": interval-datetime("-1987-11-18T18:43:57.938Z, 1999-11-12T19:49:35.948Z"), "interval35": null, "interval36": null, "interval41": interval-date("0001-12-27, 0006-01-27"), "interval42": interval-date("0001-12-27, 0006-01-27"), "interval43": interval-date("0001-12-27, 0006-01-27"), "interval44": interval-date("0001-12-27, 0006-01-27"), "interval45": null, "interval46": null, "interval51": interval-time("20:03:20.948Z, 20:57:50.886Z"), "interval52": interval-time("20:03:20.948Z, 20:57:50.886Z"), "interval53": interval-time("20:03:20.948Z, 20:57:50.886Z"), "interval54": interval-time("20:03:20.948Z, 20:57:50.886Z"), "interval55": null, "interval56": null, "interval61": interval-datetime("-2043-11-19T15:32:39.293Z, -1603-03-12T12:12:38.242Z"), "interval62": interval-datetime("-2043-11-19T15:32:39.293Z, -1603-03-12T12:12:38.242Z"), "interval63": interval-datetime("-2043-11-19T15:32:39.293Z, -1603-03-12T12:12:38.242Z"), "interval64": interval-datetime("-2043-11-19T15:32:39.293Z, -1603-03-12T12:12:38.242Z"), "interval65": null, "interval66": null }
+{ "interval41": interval(date("0001-12-27"), date("0006-01-27")), "interval42": interval(date("0001-12-27"), date("0006-01-27")), "interval43": interval(date("0001-12-27"), date("0006-01-27")), "interval44": interval(date("0001-12-27"), date("0006-01-27")), "interval45": null, "interval46": null, "interval51": interval(time("20:03:20.948Z"), time("20:57:50.886Z")), "interval52": interval(time("20:03:20.948Z"), time("20:57:50.886Z")), "interval53": interval(time("20:03:20.948Z"), time("20:57:50.886Z")), "interval54": interval(time("20:03:20.948Z"), time("20:57:50.886Z")), "interval55": null, "interval56": null, "interval61": interval(datetime("-2043-11-19T15:32:39.293Z"), datetime("-1603-03-12T12:12:38.242Z")), "interval62": interval(datetime("-2043-11-19T15:32:39.293Z"), datetime("-1603-03-12T12:12:38.242Z")), "interval63": interval(datetime("-2043-11-19T15:32:39.293Z"), datetime("-1603-03-12T12:12:38.242Z")), "interval64": interval(datetime("-2043-11-19T15:32:39.293Z"), datetime("-1603-03-12T12:12:38.242Z")), "interval65": null, "interval66": null, "interval71": interval(date("2010-10-30"), date("2012-10-21")), "interval72": null, "interval73": null, "interval74": interval(time("14:04:05.678Z"), time("21:24:25.267Z")), "interval75": null, "interval76": null, "interval77": interval(datetime("-1987-11-18T18:43:57.938Z"), datetime("1999-11-12T19:49:35.948Z")), "interval78": null, "interval79": null }
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/get_overlapping_interval/get_overlapping_interval.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/get_overlapping_interval/get_overlapping_interval.1.adm
index 4c3ce59..a6a2c22 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/get_overlapping_interval/get_overlapping_interval.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/get_overlapping_interval/get_overlapping_interval.1.adm
@@ -1 +1 @@
-{ "overlap1": interval-time("12:23:39.000Z, 18:27:19.000Z"), "overlap2": null, "overlap3": null, "overlap4": interval-date("2013-01-01, 2014-01-01"), "overlap5": interval-datetime("1989-03-04T12:23:39.000Z, 2000-10-30T18:27:19.000Z"), "overlap6": null }
+{ "overlap1": interval(time("12:23:39.000Z"), time("18:27:19.000Z")), "overlap2": null, "overlap3": null, "overlap4": interval(date("2013-01-01"), date("2014-01-01")), "overlap5": interval(datetime("1989-03-04T12:23:39.000Z"), datetime("2000-10-30T18:27:19.000Z")), "overlap6": null }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds/insert_from_ext_ds.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds/insert_from_ext_ds.1.adm
index 61de6de..5eb8905 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds/insert_from_ext_ds.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds/insert_from_ext_ds.1.adm
@@ -1,4 +1,4 @@
-{ "date": date("-2012-12-12"), "time": time("23:49:12.390Z"), "datetime": datetime("2012-12-12T00:00:00.001Z"), "duration": duration("P20Y19DT4H14M23.34S"), "interval": interval-datetime("2012-12-12T00:00:00.001Z, 2013-08-10T22:10:15.398Z"), "ymduration": null, "dtduration": null }
-{ "date": null, "time": time("04:12:12.219Z"), "datetime": datetime("1920-12-21T11:29:18.478Z"), "duration": null, "interval": interval-time("04:29:30.000Z, 07:59:59.999Z"), "ymduration": null, "dtduration": null }
-{ "date": null, "time": null, "datetime": datetime("-0290-03-22T17:59:48.999Z"), "duration": duration("-P27Y148D"), "interval": interval-date("-2012-03-17, 2013-04-01"), "ymduration": null, "dtduration": null }
+{ "date": date("-2012-12-12"), "time": time("23:49:12.390Z"), "datetime": datetime("2012-12-12T00:00:00.001Z"), "duration": duration("P20Y19DT4H14M23.34S"), "interval": interval(datetime("2012-12-12T00:00:00.001Z"), datetime("2013-08-10T22:10:15.398Z")), "ymduration": null, "dtduration": null }
+{ "date": null, "time": time("04:12:12.219Z"), "datetime": datetime("1920-12-21T11:29:18.478Z"), "duration": null, "interval": interval(time("04:29:30.000Z"), time("07:59:59.999Z")), "ymduration": null, "dtduration": null }
+{ "date": null, "time": null, "datetime": datetime("-0290-03-22T17:59:48.999Z"), "duration": duration("-P27Y148D"), "interval": interval(date("-2012-03-17"), date("2013-04-01")), "ymduration": null, "dtduration": null }
{ "date": null, "time": null, "datetime": null, "duration": null, "interval": null, "ymduration": year-month-duration("P31Y2M"), "dtduration": day-time-duration("-P148D") }
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds_2/insert_from_ext_ds_2.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds_2/insert_from_ext_ds_2.1.adm
index 2c485e2..2b03194 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds_2/insert_from_ext_ds_2.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/insert_from_ext_ds_2/insert_from_ext_ds_2.1.adm
@@ -1,3 +1,3 @@
-{ "date": date("-9971-09-24"), "time": time("11:38:17.154Z"), "datetime": datetime("1259-11-13T09:49:11.852Z"), "duration": duration("P473653Y9M4566143DT10H20M53.61S"), "year-month-duration": year-month-duration("P148233Y10M"), "day-time-duration": day-time-duration("-P7236357DT2H56M56.164S"), "date-interval": interval-date("-0255-09-06, 4925-05-03"), "time-interval": interval-time("12:10:45.169Z, 15:37:48.736Z"), "datetime-interval": interval-datetime("0534-12-08T08:20:31.487Z, 6778-02-16T22:40:21.653Z") }
-{ "date": date("4619-11-23"), "time": time("14:29:36.786Z"), "datetime": datetime("2749-01-27T17:27:30.020Z"), "duration": duration("-P474133Y7M854630DT4H40M6.45S"), "year-month-duration": year-month-duration("P193989Y3M"), "day-time-duration": day-time-duration("P4477686DT4H49M31.87S"), "date-interval": interval-date("-9537-08-04, 9656-06-03"), "time-interval": interval-time("12:04:45.689Z, 12:41:59.002Z"), "datetime-interval": interval-datetime("-2640-10-11T17:32:15.675Z, 4104-02-01T05:59:11.902Z") }
-{ "date": date("7986-11-25"), "time": time("12:49:39.736Z"), "datetime": datetime("-8337-01-30T15:23:07.598Z"), "duration": duration("-P184484Y7M2241423DT10H42M49.500S"), "year-month-duration": year-month-duration("-P546031Y3M"), "day-time-duration": day-time-duration("P2623386DT10H32M31.983S"), "date-interval": interval-date("-4514-05-24, 3337-08-26"), "time-interval": interval-time("04:16:42.321Z, 12:22:56.816Z"), "datetime-interval": interval-datetime("2129-12-12T13:18:35.758Z, 8647-07-01T13:10:19.691Z") }
+{ "date": date("-9971-09-24"), "time": time("11:38:17.154Z"), "datetime": datetime("1259-11-13T09:49:11.852Z"), "duration": duration("P473653Y9M4566143DT10H20M53.61S"), "year-month-duration": year-month-duration("P148233Y10M"), "day-time-duration": day-time-duration("-P7236357DT2H56M56.164S"), "date-interval": interval(date("-0255-09-06"), date("4925-05-03")), "time-interval": interval(time("12:10:45.169Z"), time("15:37:48.736Z")), "datetime-interval": interval(datetime("0534-12-08T08:20:31.487Z"), datetime("6778-02-16T22:40:21.653Z")) }
+{ "date": date("4619-11-23"), "time": time("14:29:36.786Z"), "datetime": datetime("2749-01-27T17:27:30.020Z"), "duration": duration("-P474133Y7M854630DT4H40M6.45S"), "year-month-duration": year-month-duration("P193989Y3M"), "day-time-duration": day-time-duration("P4477686DT4H49M31.87S"), "date-interval": interval(date("-9537-08-04"), date("9656-06-03")), "time-interval": interval(time("12:04:45.689Z"), time("12:41:59.002Z")), "datetime-interval": interval(datetime("-2640-10-11T17:32:15.675Z"), datetime("4104-02-01T05:59:11.902Z")) }
+{ "date": date("7986-11-25"), "time": time("12:49:39.736Z"), "datetime": datetime("-8337-01-30T15:23:07.598Z"), "duration": duration("-P184484Y7M2241423DT10H42M49.500S"), "year-month-duration": year-month-duration("-P546031Y3M"), "day-time-duration": day-time-duration("P2623386DT10H32M31.983S"), "date-interval": interval(date("-4514-05-24"), date("3337-08-26")), "time-interval": interval(time("04:16:42.321Z"), time("12:22:56.816Z")), "datetime-interval": interval(datetime("2129-12-12T13:18:35.758Z"), datetime("8647-07-01T13:10:19.691Z")) }
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin/interval_bin.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin/interval_bin.1.adm
index 46fbfa5..8c95d98 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin/interval_bin.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin/interval_bin.1.adm
@@ -1 +1 @@
-{ "bin1": interval-date("2010-01-01, 2011-01-01"), "bin2": interval-date("2010-01-01, 2011-01-01"), "bin3": interval-datetime("-1987-07-01T00:00:00.000Z, -1986-01-01T00:00:00.000Z"), "bin4": interval-datetime("-1987-11-19T12:00:00.000Z, -1987-11-20T00:00:00.000Z"), "bin5": interval-time("04:00:00.000Z, 06:00:00.000Z"), "bin6": null, "bin7": null, "bin8": null }
+{ "bin1": interval(date("2010-01-01"), date("2011-01-01")), "bin2": interval(date("2010-01-01"), date("2011-01-01")), "bin3": interval(datetime("-1987-07-01T00:00:00.000Z"), datetime("-1986-01-01T00:00:00.000Z")), "bin4": interval(datetime("-1987-11-19T12:00:00.000Z"), datetime("-1987-11-20T00:00:00.000Z")), "bin5": interval(time("04:00:00.000Z"), time("06:00:00.000Z")), "bin6": null, "bin7": null, "bin8": null }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_0/interval_bin_gby_0.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_0/interval_bin_gby_0.1.adm
index 7902191..aa0f939 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_0/interval_bin_gby_0.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_0/interval_bin_gby_0.1.adm
@@ -1,4 +1,4 @@
-{ "tbin": interval-datetime("-1990-01-01T00:00:00.000Z, -1970-01-01T00:00:00.000Z"), "count": 4 }
-{ "tbin": interval-datetime("-0990-01-01T00:00:00.000Z, -0970-01-01T00:00:00.000Z"), "count": 1 }
-{ "tbin": interval-datetime("1970-01-01T00:00:00.000Z, 1990-01-01T00:00:00.000Z"), "count": 5 }
-{ "tbin": interval-datetime("2010-01-01T00:00:00.000Z, 2030-01-01T00:00:00.000Z"), "count": 2 }
+{ "tbin": interval(datetime("-1990-01-01T00:00:00.000Z"), datetime("-1970-01-01T00:00:00.000Z")), "count": 4 }
+{ "tbin": interval(datetime("-0990-01-01T00:00:00.000Z"), datetime("-0970-01-01T00:00:00.000Z")), "count": 1 }
+{ "tbin": interval(datetime("1970-01-01T00:00:00.000Z"), datetime("1990-01-01T00:00:00.000Z")), "count": 5 }
+{ "tbin": interval(datetime("2010-01-01T00:00:00.000Z"), datetime("2030-01-01T00:00:00.000Z")), "count": 2 }
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_1/interval_bin_gby_1.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_1/interval_bin_gby_1.1.adm
index 3ff3ce0..37fb65f 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_1/interval_bin_gby_1.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/interval_bin_gby_1/interval_bin_gby_1.1.adm
@@ -1,8 +1,8 @@
-{ "tbin": interval-time("00:20:00.000Z, 00:30:00.000Z"), "count": 1 }
-{ "tbin": interval-time("09:30:00.000Z, 09:40:00.000Z"), "count": 1 }
-{ "tbin": interval-time("17:20:00.000Z, 17:30:00.000Z"), "count": 1 }
-{ "tbin": interval-time("18:00:00.000Z, 18:10:00.000Z"), "count": 1 }
-{ "tbin": interval-time("23:20:00.000Z, 23:30:00.000Z"), "count": 1 }
-{ "tbin": interval-time("23:30:00.000Z, 23:40:00.000Z"), "count": 1 }
-{ "tbin": interval-time("23:40:00.000Z, 23:50:00.000Z"), "count": 5 }
-{ "tbin": interval-time("23:50:00.000Z, 00:00:00.000Z"), "count": 1 }
+{ "tbin": interval(time("00:20:00.000Z"), time("00:30:00.000Z")), "count": 1 }
+{ "tbin": interval(time("09:30:00.000Z"), time("09:40:00.000Z")), "count": 1 }
+{ "tbin": interval(time("17:20:00.000Z"), time("17:30:00.000Z")), "count": 1 }
+{ "tbin": interval(time("18:00:00.000Z"), time("18:10:00.000Z")), "count": 1 }
+{ "tbin": interval(time("23:20:00.000Z"), time("23:30:00.000Z")), "count": 1 }
+{ "tbin": interval(time("23:30:00.000Z"), time("23:40:00.000Z")), "count": 1 }
+{ "tbin": interval(time("23:40:00.000Z"), time("23:50:00.000Z")), "count": 5 }
+{ "tbin": interval(time("23:50:00.000Z"), time("00:00:00.000Z")), "count": 1 }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins/overlap_bins.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins/overlap_bins.1.adm
index 88f2be1..a17ee5e 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins/overlap_bins.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins/overlap_bins.1.adm
@@ -1 +1 @@
-{ "timebins": [ interval-time("17:00:00.000Z, 17:30:00.000Z"), interval-time("17:30:00.000Z, 18:00:00.000Z"), interval-time("18:00:00.000Z, 18:30:00.000Z"), interval-time("18:30:00.000Z, 19:00:00.000Z") ], "datebins": [ interval-date("1970-01-01, 1990-01-01"), interval-date("1990-01-01, 2010-01-01"), interval-date("2010-01-01, 2030-01-01") ], "datetimebins": [ interval-datetime("1800-01-01T00:00:00.000Z, 1900-01-01T00:00:00.000Z"), interval-datetime("1900-01-01T00:00:00.000Z, 2000-01-01T00:00:00.000Z"), interval-datetime("2000-01-01T00:00:00.000Z, 2100-01-01T00:00:00.000Z") ] }
+{ "timebins": [ interval(time("17:00:00.000Z"), time("17:30:00.000Z")), interval(time("17:30:00.000Z"), time("18:00:00.000Z")), interval(time("18:00:00.000Z"), time("18:30:00.000Z")), interval(time("18:30:00.000Z"), time("19:00:00.000Z")) ], "datebins": [ interval(date("1970-01-01"), date("1990-01-01")), interval(date("1990-01-01"), date("2010-01-01")), interval(date("2010-01-01"), date("2030-01-01")) ], "datetimebins": [ interval(datetime("1800-01-01T00:00:00.000Z"), datetime("1900-01-01T00:00:00.000Z")), interval(datetime("1900-01-01T00:00:00.000Z"), datetime("2000-01-01T00:00:00.000Z")), interval(datetime("2000-01-01T00:00:00.000Z"), datetime("2100-01-01T00:00:00.000Z")) ] }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_0/overlap_bins_gby_0.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_0/overlap_bins_gby_0.1.adm
index 5402cb5..551e054 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_0/overlap_bins_gby_0.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_0/overlap_bins_gby_0.1.adm
@@ -1,23 +1,23 @@
-{ "tbin": interval-time("00:00:00.000Z, 01:30:00.000Z"), "interval": interval-time("00:27:13.432Z, 01:27:13.432Z"), "overlap": interval-time("00:27:13.432Z, 01:27:13.432Z") }
-{ "tbin": interval-time("07:30:00.000Z, 09:00:00.000Z"), "interval": interval-time("07:49:23.938Z, 10:49:23.938Z"), "overlap": interval-time("07:49:23.938Z, 09:00:00.000Z") }
-{ "tbin": interval-time("09:00:00.000Z, 10:30:00.000Z"), "interval": interval-time("07:49:23.938Z, 10:49:23.938Z"), "overlap": interval-time("09:00:00.000Z, 10:30:00.000Z") }
-{ "tbin": interval-time("09:00:00.000Z, 10:30:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("09:35:28.039Z, 10:30:00.000Z") }
-{ "tbin": interval-time("10:30:00.000Z, 12:00:00.000Z"), "interval": interval-time("07:49:23.938Z, 10:49:23.938Z"), "overlap": interval-time("10:30:00.000Z, 10:49:23.938Z") }
-{ "tbin": interval-time("10:30:00.000Z, 12:00:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("10:30:00.000Z, 12:00:00.000Z") }
-{ "tbin": interval-time("12:00:00.000Z, 13:30:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("12:00:00.000Z, 13:30:00.000Z") }
-{ "tbin": interval-time("12:00:00.000Z, 13:30:00.000Z"), "interval": interval-time("12:49:23.938Z, 15:49:23.938Z"), "overlap": interval-time("12:49:23.938Z, 13:30:00.000Z") }
-{ "tbin": interval-time("13:30:00.000Z, 15:00:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("13:30:00.000Z, 15:00:00.000Z") }
-{ "tbin": interval-time("13:30:00.000Z, 15:00:00.000Z"), "interval": interval-time("12:49:23.938Z, 15:49:23.938Z"), "overlap": interval-time("13:30:00.000Z, 15:00:00.000Z") }
-{ "tbin": interval-time("15:00:00.000Z, 16:30:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("15:00:00.000Z, 16:30:00.000Z") }
-{ "tbin": interval-time("15:00:00.000Z, 16:30:00.000Z"), "interval": interval-time("12:49:23.938Z, 15:49:23.938Z"), "overlap": interval-time("15:00:00.000Z, 15:49:23.938Z") }
-{ "tbin": interval-time("16:30:00.000Z, 18:00:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("16:30:00.000Z, 18:00:00.000Z") }
-{ "tbin": interval-time("16:30:00.000Z, 18:00:00.000Z"), "interval": interval-time("17:28:13.900Z, 17:28:32.900Z"), "overlap": interval-time("17:28:13.900Z, 17:28:32.900Z") }
-{ "tbin": interval-time("18:00:00.000Z, 19:30:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("18:00:00.000Z, 19:30:00.000Z") }
-{ "tbin": interval-time("18:00:00.000Z, 19:30:00.000Z"), "interval": interval-time("18:00:00.000Z, 20:00:00.000Z"), "overlap": interval-time("18:00:00.000Z, 19:30:00.000Z") }
-{ "tbin": interval-time("19:30:00.000Z, 21:00:00.000Z"), "interval": interval-time("09:35:28.039Z, 20:25:28.039Z"), "overlap": interval-time("19:30:00.000Z, 20:25:28.039Z") }
-{ "tbin": interval-time("19:30:00.000Z, 21:00:00.000Z"), "interval": interval-time("18:00:00.000Z, 20:00:00.000Z"), "overlap": interval-time("19:30:00.000Z, 20:00:00.000Z") }
-{ "tbin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "interval": interval-time("23:22:38.000Z, 23:42:38.000Z"), "overlap": interval-time("23:22:38.000Z, 23:42:38.000Z") }
-{ "tbin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "interval": interval-time("23:30:00.000Z, 23:32:00.000Z"), "overlap": interval-time("23:30:00.000Z, 23:32:00.000Z") }
-{ "tbin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "interval": interval-time("23:49:23.938Z, 23:54:23.938Z"), "overlap": interval-time("23:49:23.938Z, 23:54:23.938Z") }
-{ "tbin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "interval": interval-time("23:49:33.938Z, 23:50:03.938Z"), "overlap": interval-time("23:49:33.938Z, 23:50:03.938Z") }
-{ "tbin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "interval": interval-time("23:58:17.038Z, 23:58:56.420Z"), "overlap": interval-time("23:58:17.038Z, 23:58:56.420Z") }
+{ "tbin": interval(time("00:00:00.000Z"), time("01:30:00.000Z")), "interval": interval(time("00:27:13.432Z"), time("01:27:13.432Z")), "overlap": interval(time("00:27:13.432Z"), time("01:27:13.432Z")) }
+{ "tbin": interval(time("07:30:00.000Z"), time("09:00:00.000Z")), "interval": interval(time("07:49:23.938Z"), time("10:49:23.938Z")), "overlap": interval(time("07:49:23.938Z"), time("09:00:00.000Z")) }
+{ "tbin": interval(time("09:00:00.000Z"), time("10:30:00.000Z")), "interval": interval(time("07:49:23.938Z"), time("10:49:23.938Z")), "overlap": interval(time("09:00:00.000Z"), time("10:30:00.000Z")) }
+{ "tbin": interval(time("09:00:00.000Z"), time("10:30:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("09:35:28.039Z"), time("10:30:00.000Z")) }
+{ "tbin": interval(time("10:30:00.000Z"), time("12:00:00.000Z")), "interval": interval(time("07:49:23.938Z"), time("10:49:23.938Z")), "overlap": interval(time("10:30:00.000Z"), time("10:49:23.938Z")) }
+{ "tbin": interval(time("10:30:00.000Z"), time("12:00:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("10:30:00.000Z"), time("12:00:00.000Z")) }
+{ "tbin": interval(time("12:00:00.000Z"), time("13:30:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("12:00:00.000Z"), time("13:30:00.000Z")) }
+{ "tbin": interval(time("12:00:00.000Z"), time("13:30:00.000Z")), "interval": interval(time("12:49:23.938Z"), time("15:49:23.938Z")), "overlap": interval(time("12:49:23.938Z"), time("13:30:00.000Z")) }
+{ "tbin": interval(time("13:30:00.000Z"), time("15:00:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("13:30:00.000Z"), time("15:00:00.000Z")) }
+{ "tbin": interval(time("13:30:00.000Z"), time("15:00:00.000Z")), "interval": interval(time("12:49:23.938Z"), time("15:49:23.938Z")), "overlap": interval(time("13:30:00.000Z"), time("15:00:00.000Z")) }
+{ "tbin": interval(time("15:00:00.000Z"), time("16:30:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("15:00:00.000Z"), time("16:30:00.000Z")) }
+{ "tbin": interval(time("15:00:00.000Z"), time("16:30:00.000Z")), "interval": interval(time("12:49:23.938Z"), time("15:49:23.938Z")), "overlap": interval(time("15:00:00.000Z"), time("15:49:23.938Z")) }
+{ "tbin": interval(time("16:30:00.000Z"), time("18:00:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("16:30:00.000Z"), time("18:00:00.000Z")) }
+{ "tbin": interval(time("16:30:00.000Z"), time("18:00:00.000Z")), "interval": interval(time("17:28:13.900Z"), time("17:28:32.900Z")), "overlap": interval(time("17:28:13.900Z"), time("17:28:32.900Z")) }
+{ "tbin": interval(time("18:00:00.000Z"), time("19:30:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("18:00:00.000Z"), time("19:30:00.000Z")) }
+{ "tbin": interval(time("18:00:00.000Z"), time("19:30:00.000Z")), "interval": interval(time("18:00:00.000Z"), time("20:00:00.000Z")), "overlap": interval(time("18:00:00.000Z"), time("19:30:00.000Z")) }
+{ "tbin": interval(time("19:30:00.000Z"), time("21:00:00.000Z")), "interval": interval(time("09:35:28.039Z"), time("20:25:28.039Z")), "overlap": interval(time("19:30:00.000Z"), time("20:25:28.039Z")) }
+{ "tbin": interval(time("19:30:00.000Z"), time("21:00:00.000Z")), "interval": interval(time("18:00:00.000Z"), time("20:00:00.000Z")), "overlap": interval(time("19:30:00.000Z"), time("20:00:00.000Z")) }
+{ "tbin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "interval": interval(time("23:22:38.000Z"), time("23:42:38.000Z")), "overlap": interval(time("23:22:38.000Z"), time("23:42:38.000Z")) }
+{ "tbin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "interval": interval(time("23:30:00.000Z"), time("23:32:00.000Z")), "overlap": interval(time("23:30:00.000Z"), time("23:32:00.000Z")) }
+{ "tbin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "interval": interval(time("23:49:23.938Z"), time("23:54:23.938Z")), "overlap": interval(time("23:49:23.938Z"), time("23:54:23.938Z")) }
+{ "tbin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "interval": interval(time("23:49:33.938Z"), time("23:50:03.938Z")), "overlap": interval(time("23:49:33.938Z"), time("23:50:03.938Z")) }
+{ "tbin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "interval": interval(time("23:58:17.038Z"), time("23:58:56.420Z")), "overlap": interval(time("23:58:17.038Z"), time("23:58:56.420Z")) }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_1/overlap_bins_gby_1.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_1/overlap_bins_gby_1.1.adm
index 9de6522..bd05dab 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_1/overlap_bins_gby_1.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_1/overlap_bins_gby_1.1.adm
@@ -1,11 +1,11 @@
-{ "timebin": interval-time("00:00:00.000Z, 01:30:00.000Z"), "count": 1, "total_ms": 3600000 }
-{ "timebin": interval-time("07:30:00.000Z, 09:00:00.000Z"), "count": 1, "total_ms": 4236062 }
-{ "timebin": interval-time("09:00:00.000Z, 10:30:00.000Z"), "count": 2, "total_ms": 8671961 }
-{ "timebin": interval-time("10:30:00.000Z, 12:00:00.000Z"), "count": 2, "total_ms": 6563938 }
-{ "timebin": interval-time("12:00:00.000Z, 13:30:00.000Z"), "count": 2, "total_ms": 7836062 }
-{ "timebin": interval-time("13:30:00.000Z, 15:00:00.000Z"), "count": 2, "total_ms": 10800000 }
-{ "timebin": interval-time("15:00:00.000Z, 16:30:00.000Z"), "count": 2, "total_ms": 8363938 }
-{ "timebin": interval-time("16:30:00.000Z, 18:00:00.000Z"), "count": 2, "total_ms": 5419000 }
-{ "timebin": interval-time("18:00:00.000Z, 19:30:00.000Z"), "count": 2, "total_ms": 10800000 }
-{ "timebin": interval-time("19:30:00.000Z, 21:00:00.000Z"), "count": 2, "total_ms": 5128039 }
-{ "timebin": interval-time("22:30:00.000Z, 00:00:00.000Z"), "count": 5, "total_ms": 1689382 }
+{ "timebin": interval(time("00:00:00.000Z"), time("01:30:00.000Z")), "count": 1, "total_ms": 3600000 }
+{ "timebin": interval(time("07:30:00.000Z"), time("09:00:00.000Z")), "count": 1, "total_ms": 4236062 }
+{ "timebin": interval(time("09:00:00.000Z"), time("10:30:00.000Z")), "count": 2, "total_ms": 8671961 }
+{ "timebin": interval(time("10:30:00.000Z"), time("12:00:00.000Z")), "count": 2, "total_ms": 6563938 }
+{ "timebin": interval(time("12:00:00.000Z"), time("13:30:00.000Z")), "count": 2, "total_ms": 7836062 }
+{ "timebin": interval(time("13:30:00.000Z"), time("15:00:00.000Z")), "count": 2, "total_ms": 10800000 }
+{ "timebin": interval(time("15:00:00.000Z"), time("16:30:00.000Z")), "count": 2, "total_ms": 8363938 }
+{ "timebin": interval(time("16:30:00.000Z"), time("18:00:00.000Z")), "count": 2, "total_ms": 5419000 }
+{ "timebin": interval(time("18:00:00.000Z"), time("19:30:00.000Z")), "count": 2, "total_ms": 10800000 }
+{ "timebin": interval(time("19:30:00.000Z"), time("21:00:00.000Z")), "count": 2, "total_ms": 5128039 }
+{ "timebin": interval(time("22:30:00.000Z"), time("00:00:00.000Z")), "count": 5, "total_ms": 1689382 }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_3/overlap_bins_gby_3.1.adm b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_3/overlap_bins_gby_3.1.adm
index c1ffd9b..28fa184 100644
--- a/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_3/overlap_bins_gby_3.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/temporal/overlap_bins_gby_3/overlap_bins_gby_3.1.adm
@@ -1,42 +1,42 @@
-{ "timebin": interval-time("10:27:00.000Z, 10:28:00.000Z"), "subgroups": [ { "subgid": "Email", "item_count": 2 }, { "subgid": "Facebook", "item_count": 2 } ] }
-{ "timebin": interval-time("10:28:00.000Z, 10:29:00.000Z"), "subgroups": [ { "subgid": "Facebook", "item_count": 1 } ] }
-{ "timebin": interval-time("10:29:00.000Z, 10:30:00.000Z"), "subgroups": [ { "subgid": "Email", "item_count": 1 }, { "subgid": "Facebook", "item_count": 2 } ] }
-{ "timebin": interval-time("10:30:00.000Z, 10:31:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:31:00.000Z, 10:32:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:32:00.000Z, 10:33:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:33:00.000Z, 10:34:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:34:00.000Z, 10:35:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:35:00.000Z, 10:36:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:36:00.000Z, 10:37:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:37:00.000Z, 10:38:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:38:00.000Z, 10:39:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:39:00.000Z, 10:40:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:40:00.000Z, 10:41:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:41:00.000Z, 10:42:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:42:00.000Z, 10:43:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:43:00.000Z, 10:44:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:44:00.000Z, 10:45:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:45:00.000Z, 10:46:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:46:00.000Z, 10:47:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:47:00.000Z, 10:48:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:48:00.000Z, 10:49:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:49:00.000Z, 10:50:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:50:00.000Z, 10:51:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:51:00.000Z, 10:52:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:52:00.000Z, 10:53:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:53:00.000Z, 10:54:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:54:00.000Z, 10:55:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:55:00.000Z, 10:56:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:56:00.000Z, 10:57:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:57:00.000Z, 10:58:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:58:00.000Z, 10:59:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("10:59:00.000Z, 11:00:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:00:00.000Z, 11:01:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:01:00.000Z, 11:02:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:02:00.000Z, 11:03:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:03:00.000Z, 11:04:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:04:00.000Z, 11:05:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:05:00.000Z, 11:06:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:06:00.000Z, 11:07:00.000Z"), "subgroups": [ ] }
-{ "timebin": interval-time("11:07:00.000Z, 11:08:00.000Z"), "subgroups": [ { "subgid": "Email", "item_count": 2 } ] }
-{ "timebin": interval-time("11:08:00.000Z, 11:09:00.000Z"), "subgroups": [ ] }
+{ "timebin": interval(time("10:27:00.000Z"), time("10:28:00.000Z")), "subgroups": [ { "subgid": "Email", "item_count": 2 }, { "subgid": "Facebook", "item_count": 2 } ] }
+{ "timebin": interval(time("10:28:00.000Z"), time("10:29:00.000Z")), "subgroups": [ { "subgid": "Facebook", "item_count": 1 } ] }
+{ "timebin": interval(time("10:29:00.000Z"), time("10:30:00.000Z")), "subgroups": [ { "subgid": "Email", "item_count": 1 }, { "subgid": "Facebook", "item_count": 2 } ] }
+{ "timebin": interval(time("10:30:00.000Z"), time("10:31:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:31:00.000Z"), time("10:32:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:32:00.000Z"), time("10:33:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:33:00.000Z"), time("10:34:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:34:00.000Z"), time("10:35:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:35:00.000Z"), time("10:36:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:36:00.000Z"), time("10:37:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:37:00.000Z"), time("10:38:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:38:00.000Z"), time("10:39:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:39:00.000Z"), time("10:40:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:40:00.000Z"), time("10:41:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:41:00.000Z"), time("10:42:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:42:00.000Z"), time("10:43:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:43:00.000Z"), time("10:44:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:44:00.000Z"), time("10:45:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:45:00.000Z"), time("10:46:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:46:00.000Z"), time("10:47:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:47:00.000Z"), time("10:48:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:48:00.000Z"), time("10:49:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:49:00.000Z"), time("10:50:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:50:00.000Z"), time("10:51:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:51:00.000Z"), time("10:52:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:52:00.000Z"), time("10:53:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:53:00.000Z"), time("10:54:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:54:00.000Z"), time("10:55:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:55:00.000Z"), time("10:56:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:56:00.000Z"), time("10:57:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:57:00.000Z"), time("10:58:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:58:00.000Z"), time("10:59:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("10:59:00.000Z"), time("11:00:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:00:00.000Z"), time("11:01:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:01:00.000Z"), time("11:02:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:02:00.000Z"), time("11:03:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:03:00.000Z"), time("11:04:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:04:00.000Z"), time("11:05:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:05:00.000Z"), time("11:06:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:06:00.000Z"), time("11:07:00.000Z")), "subgroups": [ ] }
+{ "timebin": interval(time("11:07:00.000Z"), time("11:08:00.000Z")), "subgroups": [ { "subgid": "Email", "item_count": 2 } ] }
+{ "timebin": interval(time("11:08:00.000Z"), time("11:09:00.000Z")), "subgroups": [ ] }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_equality/issue363_equality.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_equality/issue363_equality.3.ast
index a25e02e..5bf9603 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_equality/issue363_equality.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_equality/issue363_equality.3.ast
@@ -108,7 +108,7 @@
LiteralExpr [STRING] [interval]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -117,7 +117,7 @@
]
]
=
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -235,7 +235,7 @@
LiteralExpr [STRING] [interval2]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -244,7 +244,7 @@
]
]
!=
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1983-11-19T02:43:57.938+08:00]
]
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.ast
index 498aa79..e59b50f 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/comparison/issue363_inequality_interval/issue363_inequality_interval.3.ast
@@ -4,7 +4,7 @@
LiteralExpr [STRING] [interval0]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -13,7 +13,7 @@
]
]
>
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1983-11-19T02:43:57.938+08:00]
]
@@ -27,7 +27,7 @@
LiteralExpr [STRING] [interval1]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1983-11-19T02:43:57.938+08:00]
]
@@ -36,7 +36,7 @@
]
]
<
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -50,7 +50,7 @@
LiteralExpr [STRING] [interval2]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
@@ -59,7 +59,7 @@
]
]
>=
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1983-11-19T02:43:57.938+08:00]
]
@@ -73,7 +73,7 @@
LiteralExpr [STRING] [interval3]
:
OperatorExpr [
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1983-11-19T02:43:57.938+08:00]
]
@@ -82,7 +82,7 @@
]
]
<=
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
]
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/constructor/interval/interval.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/constructor/interval/interval.3.ast
index fd0e9c5..0382c4f 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/constructor/interval/interval.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/constructor/interval/interval.3.ast
@@ -2,182 +2,6 @@
Query:
RecordConstructor [
(
- LiteralExpr [STRING] [interval11]
- :
- FunctionCall test.interval-from-date@2[
- FunctionCall test.date@1[
- LiteralExpr [STRING] [2010-10-30]
- ]
- FunctionCall test.date@1[
- LiteralExpr [STRING] [2012-10-21]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval12]
- :
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- FunctionCall test.date@1[
- LiteralExpr [STRING] [2012-10-21]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval13]
- :
- FunctionCall test.interval-from-date@2[
- FunctionCall test.date@1[
- LiteralExpr [STRING] [2010-10-30]
- ]
- LiteralExpr [STRING] [2012-10-21]
- ]
- )
- (
- LiteralExpr [STRING] [interval14]
- :
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- LiteralExpr [STRING] [2012-10-21]
- ]
- )
- (
- LiteralExpr [STRING] [interval15]
- :
- FunctionCall test.interval-from-date@2[
- LiteralExpr [NULL]
- LiteralExpr [STRING] [2012-10-21]
- ]
- )
- (
- LiteralExpr [STRING] [interval16]
- :
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- LiteralExpr [NULL]
- ]
- )
- (
- LiteralExpr [STRING] [interval21]
- :
- FunctionCall test.interval-from-time@2[
- FunctionCall test.time@1[
- LiteralExpr [STRING] [03:04:05.678-11:00]
- ]
- FunctionCall test.time@1[
- LiteralExpr [STRING] [232425267+0200]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval22]
- :
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [03:04:05.678-11:00]
- FunctionCall test.time@1[
- LiteralExpr [STRING] [232425267+0200]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval23]
- :
- FunctionCall test.interval-from-time@2[
- FunctionCall test.time@1[
- LiteralExpr [STRING] [03:04:05.678-11:00]
- ]
- LiteralExpr [STRING] [232425267+0200]
- ]
- )
- (
- LiteralExpr [STRING] [interval24]
- :
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [03:04:05.678-11:00]
- LiteralExpr [STRING] [232425267+0200]
- ]
- )
- (
- LiteralExpr [STRING] [interval25]
- :
- FunctionCall test.interval-from-time@2[
- LiteralExpr [NULL]
- FunctionCall test.time@1[
- LiteralExpr [STRING] [232425267+0200]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval26]
- :
- FunctionCall test.interval-from-time@2[
- FunctionCall test.time@1[
- LiteralExpr [STRING] [03:04:05.678-11:00]
- ]
- LiteralExpr [NULL]
- ]
- )
- (
- LiteralExpr [STRING] [interval31]
- :
- FunctionCall test.interval-from-datetime@2[
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
- ]
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [19991112T124935948-0700]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval32]
- :
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [19991112T124935948-0700]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval33]
- :
- FunctionCall test.interval-from-datetime@2[
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
- ]
- LiteralExpr [STRING] [19991112T124935948-0700]
- ]
- )
- (
- LiteralExpr [STRING] [interval34]
- :
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
- LiteralExpr [STRING] [19991112T124935948-0700]
- ]
- )
- (
- LiteralExpr [STRING] [interval35]
- :
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [NULL]
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [19991112T124935948-0700]
- ]
- ]
- )
- (
- LiteralExpr [STRING] [interval36]
- :
- FunctionCall test.interval-from-datetime@2[
- FunctionCall test.datetime@1[
- LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
- ]
- LiteralExpr [NULL]
- ]
- )
- (
LiteralExpr [STRING] [interval41]
:
FunctionCall test.interval-start-from-date@2[
@@ -357,4 +181,100 @@
LiteralExpr [NULL]
]
)
-]
+ (
+ LiteralExpr [STRING] [interval71]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-10-30]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2012-10-21]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval72]
+ :
+ FunctionCall test.interval@2[
+ LiteralExpr [NULL]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2012-10-21]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval73]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-10-30]
+ ]
+ LiteralExpr [NULL]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval74]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [03:04:05.678-11:00]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [232425267+0200]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval75]
+ :
+ FunctionCall test.interval@2[
+ LiteralExpr [NULL]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [232425267+0200]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval76]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [03:04:05.678-11:00]
+ ]
+ LiteralExpr [NULL]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval77]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [19991112T124935948-0700]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval78]
+ :
+ FunctionCall test.interval@2[
+ LiteralExpr [NULL]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [19991112T124935948-0700]
+ ]
+ ]
+ )
+ (
+ LiteralExpr [STRING] [interval79]
+ :
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [-1987-11-19T02:43:57.938+08:00]
+ ]
+ LiteralExpr [NULL]
+ ]
+ )
+]
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/accessors_interval/accessors_interval.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/accessors_interval/accessors_interval.3.ast
index da3708c..f3014f0 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/accessors_interval/accessors_interval.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/accessors_interval/accessors_interval.3.ast
@@ -5,11 +5,13 @@
LiteralExpr [STRING] [start1]
:
FunctionCall test.get-interval-start@1[
- FunctionCall test.interval-from-date@2[
+ FunctionCall test.interval@2[
FunctionCall test.date@1[
LiteralExpr [STRING] [2010-10-30]
]
- LiteralExpr [STRING] [2013-04-01]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2013-04-01]
+ ]
]
]
)
@@ -17,11 +19,13 @@
LiteralExpr [STRING] [end1]
:
FunctionCall test.get-interval-end@1[
- FunctionCall test.interval-from-date@2[
+ FunctionCall test.interval@2[
FunctionCall test.date@1[
LiteralExpr [STRING] [2010-10-30]
]
- LiteralExpr [STRING] [2013-04-01]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2013-04-01]
+ ]
]
]
)
@@ -29,8 +33,10 @@
LiteralExpr [STRING] [start2]
:
FunctionCall test.get-interval-start@1[
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [08:09:10.234Z]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [08:09:10.234Z]
+ ]
FunctionCall test.time@1[
LiteralExpr [STRING] [203040567+0800]
]
@@ -41,8 +47,10 @@
LiteralExpr [STRING] [end2]
:
FunctionCall test.get-interval-end@1[
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [08:09:10.234Z]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [08:09:10.234Z]
+ ]
FunctionCall test.time@1[
LiteralExpr [STRING] [203040567+0800]
]
@@ -53,8 +61,10 @@
LiteralExpr [STRING] [start3]
:
FunctionCall test.get-interval-start@1[
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [2009-09-01T00:00:00.000+08:00]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2009-09-01T00:00:00.000+08:00]
+ ]
FunctionCall test.datetime-from-date-time@2[
FunctionCall test.date@1[
LiteralExpr [STRING] [2013-04-04]
@@ -70,8 +80,10 @@
LiteralExpr [STRING] [end3]
:
FunctionCall test.get-interval-end@1[
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [2009-09-01T00:00:00.000+08:00]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2009-09-01T00:00:00.000+08:00]
+ ]
FunctionCall test.datetime-from-date-time@2[
FunctionCall test.date@1[
LiteralExpr [STRING] [2013-04-04]
@@ -83,4 +95,4 @@
]
]
)
-]
+]
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/duration_functions/duration_functions.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/duration_functions/duration_functions.3.ast
index 0ab1988..6d2d197 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/duration_functions/duration_functions.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/duration_functions/duration_functions.3.ast
@@ -5,9 +5,13 @@
LiteralExpr [STRING] [dr1]
:
FunctionCall test.duration-from-interval@1[
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- LiteralExpr [STRING] [2010-12-21]
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-10-30]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-12-21]
+ ]
]
]
)
@@ -15,9 +19,13 @@
LiteralExpr [STRING] [dr2]
:
FunctionCall test.duration-from-interval@1[
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [2012-06-26T01:01:01.111]
- LiteralExpr [STRING] [2012-07-27T02:02:02.222]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2012-06-26T01:01:01.111]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2012-07-27T02:02:02.222]
+ ]
]
]
)
@@ -25,9 +33,13 @@
LiteralExpr [STRING] [dr3]
:
FunctionCall test.duration-from-interval@1[
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [12:32:38]
- LiteralExpr [STRING] [20:29:20]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [12:32:38]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [20:29:20]
+ ]
]
]
)
@@ -38,4 +50,4 @@
LiteralExpr [NULL]
]
)
-]
+]
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.ast
index 72400ac..8fb6da7 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/get_overlapping_interval/get_overlapping_interval.3.ast
@@ -5,7 +5,7 @@
LiteralExpr [STRING] [overlap1]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-time@2[
+ FunctionCall null.interval@2[
FunctionCall null.time@1[
LiteralExpr [STRING] [11:23:39]
]
@@ -13,7 +13,7 @@
LiteralExpr [STRING] [18:27:19]
]
]
- FunctionCall null.interval-from-time@2[
+ FunctionCall null.interval@2[
FunctionCall null.time@1[
LiteralExpr [STRING] [12:23:39]
]
@@ -27,7 +27,7 @@
LiteralExpr [STRING] [overlap2]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-time@2[
+ FunctionCall null.interval@2[
FunctionCall null.time@1[
LiteralExpr [STRING] [12:23:39]
]
@@ -35,7 +35,7 @@
LiteralExpr [STRING] [18:27:19]
]
]
- FunctionCall null.interval-from-time@2[
+ FunctionCall null.interval@2[
FunctionCall null.time@1[
LiteralExpr [STRING] [07:19:39]
]
@@ -49,7 +49,7 @@
LiteralExpr [STRING] [overlap3]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-date@2[
+ FunctionCall null.interval@2[
FunctionCall null.date@1[
LiteralExpr [STRING] [1980-11-30]
]
@@ -57,7 +57,7 @@
LiteralExpr [STRING] [1999-09-09]
]
]
- FunctionCall null.interval-from-date@2[
+ FunctionCall null.interval@2[
FunctionCall null.date@1[
LiteralExpr [STRING] [2013-01-01]
]
@@ -71,7 +71,7 @@
LiteralExpr [STRING] [overlap4]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-date@2[
+ FunctionCall null.interval@2[
FunctionCall null.date@1[
LiteralExpr [STRING] [1980-11-30]
]
@@ -79,7 +79,7 @@
LiteralExpr [STRING] [2099-09-09]
]
]
- FunctionCall null.interval-from-date@2[
+ FunctionCall null.interval@2[
FunctionCall null.date@1[
LiteralExpr [STRING] [2013-01-01]
]
@@ -93,7 +93,7 @@
LiteralExpr [STRING] [overlap5]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [1844-03-03T11:19:39]
]
@@ -101,7 +101,7 @@
LiteralExpr [STRING] [2000-10-30T18:27:19]
]
]
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [1989-03-04T12:23:39]
]
@@ -115,7 +115,7 @@
LiteralExpr [STRING] [overlap6]
:
FunctionCall null.get-overlapping-interval@2[
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [1989-03-04T12:23:39]
]
@@ -123,7 +123,7 @@
LiteralExpr [STRING] [2000-10-30T18:27:19]
]
]
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [1844-03-03T11:19:39]
]
@@ -134,4 +134,4 @@
]
)
]
-]
+]
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/interval_functions/interval_functions.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/interval_functions/interval_functions.3.ast
index e85501d..f4e11c6 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/interval_functions/interval_functions.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/interval_functions/interval_functions.3.ast
@@ -2,21 +2,33 @@
Query:
LetVariable [ Name=itv1 ]
:=
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- LiteralExpr [STRING] [2010-12-21]
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-10-30]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-12-21]
+ ]
]
LetVariable [ Name=itv2 ]
:=
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2011-10-30]
- LiteralExpr [STRING] [2012-10-21]
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2011-10-30]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2012-10-21]
+ ]
]
LetVariable [ Name=itv3 ]
:=
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-12-21]
- LiteralExpr [STRING] [2013-01-01]
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-12-21]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2013-01-01]
+ ]
]
LetVariable [ Name=blnBefore1 ]
:=
@@ -44,21 +56,33 @@
]
LetVariable [ Name=itv4 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [2012-06-26T01:01:01.111]
- LiteralExpr [STRING] [2012-07-27T02:02:02.222]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2012-06-26T01:01:01.111]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2012-07-27T02:02:02.222]
+ ]
]
LetVariable [ Name=itv5 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [20120727T020202222]
- LiteralExpr [STRING] [2013-08-08T03:03:03.333]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [20120727T020202222]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2013-08-08T03:03:03.333]
+ ]
]
LetVariable [ Name=itv6 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [19000707T020202222]
- LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [19000707T020202222]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ ]
]
LetVariable [ Name=blnMeet1 ]
:=
@@ -86,21 +110,33 @@
]
LetVariable [ Name=itv7 ]
:=
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [12:32:38]
- LiteralExpr [STRING] [20:29:20]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [12:32:38]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [20:29:20]
+ ]
]
LetVariable [ Name=itv8 ]
:=
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [17:48:19]
- LiteralExpr [STRING] [22:19:49]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [17:48:19]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [22:19:49]
+ ]
]
LetVariable [ Name=itv9 ]
:=
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [01:32:49]
- LiteralExpr [STRING] [17:48:19]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [01:32:49]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [17:48:19]
+ ]
]
LetVariable [ Name=blnOverlaps1 ]
:=
@@ -140,9 +176,13 @@
]
LetVariable [ Name=itv10 ]
:=
- FunctionCall test.interval-from-date@2[
- LiteralExpr [STRING] [2010-10-30]
- LiteralExpr [STRING] [2010-11-30]
+ FunctionCall test.interval@2[
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-10-30]
+ ]
+ FunctionCall test.date@1[
+ LiteralExpr [STRING] [2010-11-30]
+ ]
]
LetVariable [ Name=blnStarts1 ]
:=
@@ -170,21 +210,33 @@
]
LetVariable [ Name=itv10 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [19000707T020202222]
- LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [19000707T020202222]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ ]
]
LetVariable [ Name=itv11 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [19990707T020202222]
- LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [19990707T020202222]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ ]
]
LetVariable [ Name=itv12 ]
:=
- FunctionCall test.interval-from-datetime@2[
- LiteralExpr [STRING] [-19990707T020202222]
- LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ FunctionCall test.interval@2[
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [-19990707T020202222]
+ ]
+ FunctionCall test.datetime@1[
+ LiteralExpr [STRING] [2013-08-07T03:03:03.333]
+ ]
]
LetVariable [ Name=blnCovers1 ]
:=
@@ -212,9 +264,13 @@
]
LetVariable [ Name=itv11 ]
:=
- FunctionCall test.interval-from-time@2[
- LiteralExpr [STRING] [19:00:00.009]
- LiteralExpr [STRING] [20:29:20.000]
+ FunctionCall test.interval@2[
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [19:00:00.009]
+ ]
+ FunctionCall test.time@1[
+ LiteralExpr [STRING] [20:29:20.000]
+ ]
]
LetVariable [ Name=blnEnds1 ]
:=
@@ -406,4 +462,4 @@
Variable [ Name=null3 ]
)
]
-]
+]
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins/overlap_bins.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins/overlap_bins.3.ast
index 6d2e508..962d9ff 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins/overlap_bins.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins/overlap_bins.3.ast
@@ -4,7 +4,7 @@
LiteralExpr [STRING] [timebins]
:
FunctionCall null.overlap-bins@3[
- FunctionCall null.interval-from-time@2[
+ FunctionCall null.interval@2[
FunctionCall null.time@1[
LiteralExpr [STRING] [17:23:37]
]
@@ -24,7 +24,7 @@
LiteralExpr [STRING] [datebins]
:
FunctionCall null.overlap-bins@3[
- FunctionCall null.interval-from-date@2[
+ FunctionCall null.interval@2[
FunctionCall null.date@1[
LiteralExpr [STRING] [1984-03-17]
]
@@ -44,7 +44,7 @@
LiteralExpr [STRING] [datetimebins]
:
FunctionCall null.overlap-bins@3[
- FunctionCall null.interval-from-datetime@2[
+ FunctionCall null.interval@2[
FunctionCall null.datetime@1[
LiteralExpr [STRING] [1800-01-01T23:59:48.938]
]
diff --git a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.ast b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.ast
index 5197186..645c82c 100644
--- a/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.ast
+++ b/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/temporal/overlap_bins_gby_3/overlap_bins_gby_3.3.ast
@@ -73,7 +73,7 @@
]
]
FROM [ FunctionCall multitask.overlap-bins@3[
- FunctionCall multitask.interval-from-time@2[
+ FunctionCall multitask.interval@2[
FunctionCall multitask.min@1[
(
SELECT ELEMENT [
diff --git a/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterix-app/src/test/resources/runtimets/testsuite.xml
index d593039..1c99e67 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite.xml
@@ -6297,11 +6297,6 @@
<output-dir compare="Text">time_functions</output-dir>
</compilation-unit>
</test-case>
- <test-case FilePath="constructor">
- <compilation-unit name="interval">
- <output-dir compare="Text">interval</output-dir>
- </compilation-unit>
- </test-case>
<test-case FilePath="temporal">
<compilation-unit name="duration_comps">
<output-dir compare="Text">duration_comps</output-dir>
diff --git a/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml b/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
index d56cdad..ba36184 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
@@ -68,7 +68,7 @@
</compilation-unit>
</test-case>
</test-group>
- <!--
+ <!--
<test-group name="union">
<test-case FilePath="union">
<compilation-unit name="union">
@@ -6125,11 +6125,6 @@
<output-dir compare="Text">time_functions</output-dir>
</compilation-unit>
</test-case>
- <test-case FilePath="constructor">
- <compilation-unit name="interval">
- <output-dir compare="Text">interval</output-dir>
- </compilation-unit>
- </test-case>
<test-case FilePath="temporal">
<compilation-unit name="duration_comps">
<output-dir compare="Text">duration_comps</output-dir>
diff --git a/asterix-app/src/test/resources/runtimets/testsuite_sqlpp_parser.xml b/asterix-app/src/test/resources/runtimets/testsuite_sqlpp_parser.xml
index bb7128a..f21d7f7 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite_sqlpp_parser.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite_sqlpp_parser.xml
@@ -68,7 +68,7 @@
</compilation-unit>
</test-case>
</test-group>
- <!--
+ <!--
<test-group name="union">
<test-case FilePath="union">
<compilation-unit name="union">
@@ -6349,11 +6349,6 @@
<output-dir compare="AST">time_functions</output-dir>
</compilation-unit>
</test-case>
- <test-case FilePath="constructor">
- <compilation-unit name="interval">
- <output-dir compare="AST">interval</output-dir>
- </compilation-unit>
- </test-case>
<test-case FilePath="temporal">
<compilation-unit name="duration_comps">
<output-dir compare="AST">duration_comps</output-dir>