RE: Alternative calendars and holidays, moon phases etc.

Hello Charles,

Sorry for the late reaction, but I'm only handling the mails from this
list now.
Some of the stuff you are looking for has been developed in a component
suite called "DateExpert".
I have been working on this till 1996.

The basic idea behind this was:
- be able to provide, as an end user, a date expression in whatever form
we are used to and be able for applications / agents etc to use these
dates in time restricted searches.

Of course this isn't the only application of it but that was the first
issue.

The solution I choose was the one of an absolute time line from some 15
billion years in the past to 277 billion years in future.
The resolution is the second and there is a possibility to indicate
fractions of seconds too. (comp integer type)
 The choice of the absolute zero came from a point back in time beyond
the Big Bang, which should enable us to use besides the current
historical dates also astronomic dates.

This absolute value is used as a reference value of date exchanges
between different calendars.

The component suite is build as follows:
-  calendar manager: interface to the outer world, providing capability
descriptions amongst which the list of available calendars.
- several calendars: Julian/Gregorian, French Revolutionary, User
calendar, (started to work on the Hebrew calendar and Maya calendar but
never finished them)

Each of the calendars has knowledge about the rules to be applied to
this particular calendar:
- range of validity
- algorithms for cyclic events (Easter etc)
- special rules for particular stuff (like the switch from the Julian to
Gregorian calendar that occurred in different years depending on the
country and where some days never existed)
- conversion capabilities from text based dates (for several languages)
to absolute values and the other way around. These conversion
capabilities might use another component suite "Number converter" that
converts text numbers in to digits and digits into text (of course also
language dependant; available languages for NC are: English, French,
Roman).

The user calendar is a bit particular and is in fact more like a
dictionary allowing the registration of reusable date expressions like
"Second Dynasty of Chang".

A typical use case for applications:
- storage of the date expression in the form the user gave it (in case
we have to rederive the absolute value corresponding to it).
- transformation (behind his back) into two values for the upper and
lower limit of the expression given (each date expression in fact
indicates a period in time even if the seconds are given)
- storage of one of the values (or both), depending on the intended use,
in the date search field(s).

Date related queries use exactly the same mechanism.


Second phase (after 1996):

One the problems with this solution was the language depency elements
(The expression for "Easter", "Pasen", "Paques" etc) had all to be known
to the calendar.

During the development of "Notion System" [1] I stopped the development
of these components is the way they were defined in the beginning in
order to use the same principle (absolute date reference values) in
combination with nodes in the semantic network providing language
defined references to e.g. cyclic events (like Easter) and leave the
algorithms only within the calendar components. The "User Calendar" has
completely disappeared.
The "conversion" of normal dates (in various languages) has not yet
found a solution that completely satisfies me. But I didn't spend much
time on this topic since.


[1] http://www.notionsystem.com

Friendly greetings

-- 
Ronald Poell
Consultant Knowledge Management
Netherlands Organization for Applied Scientific Research (TNO)

Oude Waalsdorperweg 63
P.O. Box 96864
2509 JG The Hague
The Netherlands

T +31 70 374 02 00
F +31 70 374 06 52

http://www.tno.nl

email poell@fel.tno.nl


Charles McCathieNevile wrote:
> 
> On Thu, 12 Apr 2001, Greg FitzPatrick wrote:
> 
>   *Maundy Thursday
> 
> Which reminds me:
> 
> One of the things Iwanted to be able to do is  work with different calendars
> - e.g. Muslim calendar, Jewish Calendar, comparison of modern Gregorian
> Calendar with older variants of such for historical purposes such as
> understanding  why the "October Revolution" didn't happen in what I always
> imagine when I think of October 1917, etc.
> 
> One of the best use cases I  came up with was figuring out when Greek
> Orthodox churches and Australian Protestant churches celebrate easter at the
> same time.
> 
> Thursday before first Sunday after first full moon after (southern
> hemisphere) autumn eqiunox is my belief about how to calculate maundy
> thursday for australian protestant churches. I don't actually know what part
> of the rule differs for greek churches, just that sometimes, like this year,
> easter is the same time, and sometimes it is different.
> 
> So the important requirements:
> 
> A way of talking about what calendar is being used, and of relating that to
> at least one other calendar.
> 
> A way of specifying cyclic events (obvious requirement)
> 
> A way of specifying one event as occurring based on the time of some other
> event
> 
> For example:
> full moon occurs every 28.(a bit) days, and one of those days in ISO xxxx
> time is yyyy
> 
> or
> Southern Hemisphere seasonal calendar
> Autumn Equinox occurs on northern hemisphere seasonal calendar spring Equinox
> 
> or
> Anglican church of Australia Calendar
> Maundy Thursday 2001 occurs on ISO xxxxyyyyzzzz
> Good Friday 2001 occurs Greek Orthodox Church calendar Good Friday 2001 (??)
> Palm Sunday 2001 occurs z days after MyCalendar Beltane xyzyx
> 
> cheers
> 
> Chaals
> 
> (PS a lot of calendaring is not religious, but a remarkable amount of it
> is...)
> 
> --
> Charles McCathieNevile    http://www.w3.org/People/Charles  phone: +61 409 134 136
> W3C Web Accessibility Initiative     http://www.w3.org/WAI    fax: +1 617 258 5999
> Location: 21 Mitchell street FOOTSCRAY Vic 3011, Australia
> (or W3C INRIA, Route des Lucioles, BP 93, 06902 Sophia Antipolis Cedex, France)

Received on Sunday, 13 May 2001 02:51:31 UTC