Different DB implementations provide support for temporal data. An overview
is here

https://en.wikipedia.org/wiki/Temporal_database

section
Implementations in relational databases

Here is an example for the encoding of org.opengis.filter.temporal.During

The default geotools encoding in org.geotools.data.jdbc.FilterToSQL produces

where ? between from and to  (closed interval)

DB2 would need

where from <= ? and ? <  to  (semi closed interval)

Oracle needs

where from <= ? and (? <  to  or to is null)   (semi closed interval
including null value as open end)

Some time ago, we had a discussion about the topic.
http://sourceforge.net/p/geoserver/mailman/message/31706807/

My idea is to add a parameter USE_DB_TEMPORAL_MODEL to the datastore
factory. This param defaults to false. If the param is true, the specific
DB temporal support should be used.

The SQL encoding happens in org.geotools.data.jdbc.FilterToSQL. In my case,
I would do the encoding in org.geotools.data.db2.DB2FilterToSQL (only if
USE_DB_TEMPORAL_MODEL is true).

Is this concept of interest for all geotools JDBC data stores ?. If not, I
would implement it only in the DB2 classes.

If yes, I think I would have to write a geotools change proposal.

Opinions ?

Cheers
Christian







-- 
DI Christian Mueller MSc (GIS), MSc (IT-Security)
OSS Open Source Solutions GmbH
------------------------------------------------------------------------------
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to