atom feed3 messages in com.x-query.talkRe: [xquery-talk] create a sequence o...
FromSent OnAttachments
Jakob FixApr 12, 2014 1:58 pm 
Andy BunceApr 12, 2014 2:59 pm 
Jakob FixApr 13, 2014 2:10 am 
Subject:Re: [xquery-talk] create a sequence of dates
From:Andy Bunce (
Date:Apr 12, 2014 2:59:42 pm

How about:

let $d1 := xs:date("2014-03-02") let $d2 := xs:date("2014-04-21") let $days:=0 to days-from-duration($d2 - $d1) return $days!($d1+ . *xs:dayTimeDuration('P1D'))

Cheers /Andy

On Sat, Apr 12, 2014 at 9:58 PM, Jakob Fix <> wrote:


I have a "sparse sequence" of dates that I'd like to pad with the missing ones.

So I thought I'd find the min and the max dates, create a sequence from min to max and then create a union with the existing sequence and get the distinct values.

unfortunately, creating a sequence of dates doesn't seem that simple. This:

let $d1 := xs:date("2014-03-01") let $d2 := xs:date("2014-03-31") return ($d1 to $d2)

doesn't work. There is probably a way to create a recursive function using durations, but maybe it's just me not seeing the forest because of all the tress...