[xquery-talk] the least stupid way to just print the current date in xquery

Geert Josten geert.josten at dayon.nl
Fri Dec 2 00:02:24 PST 2011


I think the most elegant way would be something like:

let $today := current-date()
let $year := year-from-date($today)
let $month := month-from-date($today)
let $day := day-from-date($today)
return
	concat($year, '-', $month, '-', $day)

Kind regards,
Geert

-----Oorspronkelijk bericht-----
Van: talk-bounces at x-query.com [mailto:talk-bounces at x-query.com] Namens
jidanni at jidanni.org
Verzonden: vrijdag 2 december 2011 8:52
Aan: talk at x-query.com
Onderwerp: [xquery-talk] the least stupid way to just print the current
date in xquery

Gentlemen, its my "virgin" post to the list. Allow me to test the waters
by asking what's the least stupid way to just print the current date in
xquery? (Without the ugly timezone baggage.)
$ basex -q 'tokenize(string(current-date()),"\+")[1]'
2011-12-02
gives me exactly what I want, but it is rather 'expensive'.
Other solutions involving fn:substring might break in 10000-2011=7989
years.
Yes, something like the opposite of
http://www.w3.org/TR/xpath-functions/#func-timezone-from-date
or something(s) that would NOT just give me
2011-12-2
Hmm, fn:substring-before might break if I move to the other side of
Greenwich, as will my tokenize without [+-] erg... Enough. How do you
guys just print the current date?
_______________________________________________
talk at x-query.com
http://x-query.com/mailman/listinfo/talk


More information about the talk mailing list