This is a migrated thread and some comments may be shown as answers.

Temporal Data modeling - valid time, transaction time and bitemporal data

1 Answer 74 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
This question is locked. New answers and comments are not allowed.
Slobodan
Top achievements
Rank 1
Slobodan asked on 08 Nov 2012, 04:14 PM
Hi,

We are investigating whether to use OpenAccess ORM for our .net side in conjunction of the ERP solution that we are developing. But we are specifically interested in the "temporal capabilities".

Our ERP solution has extensive implementation of Temporal Data (http://en.wikipedia.org/wiki/Temporal_database). We have the full concept covered for Bitemporal Data (http://en.wikipedia.org/wiki/Bitemporal_data) so we have both valid time and transaction time implemented in many of our tables.

This means that we have a mechanism for storing historic records of an entity and for tracking the changes to the entity and for "soft deleting". But to do this we have implemented a set of APIs in our ERP system to support this. So inserts/updates/deletes of "temporally enabled" tables are done through the API. To correctly end date one record and create another valid one. And we are also implementing helpers to query the currently valid or some history records... We have done this over the course of several years and the framework is pretty stable for our purposes. 

My question is whether OpenAccess ORM has the "temporal" features built in? Maybe someone has already built a "bitemporaly enabled" system and what are the experiences? 

This is the theory behind it: http://www.cs.arizona.edu/~rts/tdbbook.pdf 

There are suggestions of partial support in nHibernate and EF, but nothing that completely covers bitemporal and soft delete with gap handling, query support, and UI integration support... So is this possible to achieve with OpenAccess ORM?

Regards,
Slobodan

1 Answer, 1 is accepted

Sort by
0
Ivailo
Telerik team
answered on 13 Nov 2012, 09:52 AM
Hello Slobodan,

In case you are looking for capabilities provided out of the box as automated features, unfortunately OpenAccess ORM is not offering Temporal Data support in such way.

However, you still can implement the scenario based on OpenAccess as we are always trying the be flexible and to provide hooks at the places you might want to customize the default behavior of the product. For instance, you can handle the Adding / Changing / Refreshing / Removing events and attach there the temporal logic for your application using the API you mentioned. If you need, you can customize the code generation and add a base class to your entities, or you can do that by coding with Fluent Mapping API.

Let us know if you are planning to give it a try and we will do our best to support you in the process.

Kind regards,
Ivailo
the Telerik team
Telerik OpenAccess ORM Meets ASP.NET Web API. Read more.
Tags
General Discussions
Asked by
Slobodan
Top achievements
Rank 1
Answers by
Ivailo
Telerik team
Share this question
or