Hello, I was watching the State of XTDB talk given at Clojure Conj 2023. The ‘Ramping up’ slide at 7:57 features Tom Johnston’s Bitemporal Data Theory and Practice. Is there consideration for supporting tritemporality in XTDB as described by Johnston?
- State time AKA appearance time, valid time among others
- Speech act time AKA assertion time
- Inscription time AKA transaction time, system time among others
It’s a very interesting question…we’ve not come across a situation that truly demanded a third time dimension ourselves yet, although I don’t doubt genuine use cases do exist. So it’s not been a priority to think about / work on.
Have you seen the need for a distinct “speech act time” dimension in your own experience?
I, for one, would be very grateful to hear anecdotes from the industries you’ve worked within.
@refset I have no prior experience in temporal relational design. I am working on a project where slowly changing dimensions was originally proposed as a data management pattern, and then I came across Johnston’s work as well as Snodgrass’. After reading more I decided that a bitemporal system at the least is suitable for our business requirements.
We are working on a project/portfolio management system where the decision time of governance tasks e.g. when was it decided this staff person would be allocated to a budget vs. when that was recorded in the system.
Still working on conclusively deciding if we have a need to answer questions that use that dimension. Implementing even a bitemporal model with our stack (FastAPI, PostgreSQL) is already seeming a challenge enough.
Interesting & thank you for the summary, that’s really useful to know. Please let us know if we can help in some way! (and feel free to reach out directly email@example.com, if only to chat / swap ideas)