Re: [xslt] Problem with date:seconds
- From: Igor Zlatkovic <igor stud fh-frankfurt de>
- To: xslt gnome org
- Subject: Re: [xslt] Problem with date:seconds
- Date: Thu, 28 Nov 2002 01:07:58 +0100
Hi,
> I think the interpretation in 1.0.20 makes more sense.
>
> In
> http://www.exslt.org/date/functions/seconds/index.html
> they use the word "difference" and I think this is
> not very exact.
>
> The difference between 1 and 2 is 1;
> the difference between 2 and 1 is also 1 (not -1).
No. The difference between 1 and 2 is -1.
The difference in mathematical sense is the result of a subtraction and a
subtraction is not comutative, means x-y != y-x. The difference in the sense
of "distance", which cannot be negative, is what you are looking for.
The documentation for date:seconds says:
"...the difference between the date/time string and 1970-01-01T00:00:00Z
is calculated as with date:difference..."
The documentation for date:difference says:
"...If the first date occurs before the second date, then the result is a
positive duration; if it occurs after the second date, the result is a
negative duration."
Your date, somewhen anno 2002, is the first date and 1.1.1970 is the second,
that is what the first quote says. The second quote says that date:seconds
returns a negative value for everything that occurs after 1.1.1970. By doing
exactly that, libxslt follows the EXSLT specification.
Having said that, I must also say that I believe that the specification for
date:difference is wrong. Math says:
x - y is
1.) > 0 iff x > y
2.) < 0 iff x < y
3.) = 0 iff x = y
If we imagine the time on an axis, any human will percept the growth towards
the future. The specification for date:difference agrees to this only in
case 3. It assumes that "past > future", which heretises the human logic and
perception of time. Ask anyone to compare two data and you'll hear that the
former is smaller than the latter.
Ciao
Igor
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]