[xquery-talk] Re: The State of Native XML databases

Andrew Welch andrew.j.welch at gmail.com
Tue Aug 21 12:38:19 PDT 2007

On 8/21/07, John Snelson <john.snelson at oracle.com> wrote:
> Andrew Welch wrote:
> > Isn't the difference that one _looks like_ a date, but the other _is_
> > an xs:date.
> What _is_ an xs:date?

Something you can perform operations on using functions that expect an xs:date.

For example, in XSLT given two dates:

<xsl:variable name="today" select="xs:date('2007-08-21')"/>
<xsl:variable name="yesterday" select="xs:date('2007-08-20')"/>

You can get the duration between the two by subtracting one from the other:

<xsl:value-of select="$today - $yesterday"/>

which returns "P1D".

You can't do:

'2007-08-21' - '2007-08-20'

as that's just operations on Strings even though they look like dates
and may well have come from <date> elements.

Obviously you can convert those Strings to xs:dates, but why do it
every time the date value is read - surely if its possible to store
the typed value its a good thing?

Just an observation...


More information about the talk mailing list