ebojd Messages: 225 Registered: January 2007 Location: USA
Experienced Member
Over on the Spirit++ forum we've had a couple of discussions over the years about how to deal with similar issues. There are a number of standars (such as ISO 8601) which describe how and why various things are being done. In addition to that, I ran into a problem a couple of decades ago where I needed to describe date and time ranges for a variety of modeling and paleological database management.
When modeling events over geological timeframes you can run into some odd things where you know that an event happened in the morning (because a flower that only blooms in the morning, during about a given month) was embedded into sediment. From this you can deduce the sample was "collected/fixed" April 15 (+/-15 days), 7:00am (+/-1:00) 25,000 BCE (+/- 5,000)... How do you represent various errors and/or ranges... At the moment I have a bunch of LIDAR processing I am working towards and need to be able to track the real-time laser shots down to the us or finer.
Also, there are numerous calendars and actually different ways to measure time (sorry I do not have the references on me but I might be able to point you to them if interested). So there is an implied issue of separating the presentation from the actual date/time variable.
In the end, it is very difficult to design a widely applicable date/time parser/module. I would first ask what your applications are.