The end of ‘Last Orders’ in spatiotemporal representation?

Sep 2006 | Comments Off on The end of ‘Last Orders’ in spatiotemporal representation?

A proposed new model for spatio-temporal information management

Despite the rapid advances in software and hardware technologies, the development of temporal databases capable of dealing with the evolution of geographical entities remains a challenging task. The aim of this paper is to discuss a proposed model that is able to handle spatial entities over time as a continuum.

Time, Space and GIS

The modelling of spatio-temporal changes features in a wide spectrum of applications, such as socioeconomic analysis, environmental impact assessment, epidemiological projections and transportation planning. Different types of data models, based on raster and vector approaches (Langran, 1993), have been used to represent changes of geographical phenomena. Relational database models have been found to be well suited for applications where the relationships among the geographical objects are fairly fixed and well-known. By contrast, objectoriented models can outperform relational models at handling complex relationships among geographical objects, and in dealing with temporal issues (Yourdon, 1994, Wachowicz, 1999); and optimum query mechanisms can also be produced by using objectoriented approaches. The need to adopt object oriented approaches have been prompted by the fact that there are problems with relational models in the context of dynamic environments where changes can be fast, and the databases cannot rapidly accommodate the flow of information (Milne et al, 1993). An object oriented database could model the changes, encompassing a mix of geographical objects and their relationships. For example, if a road is represented as an object rather than as an entry in a database table, associations with other objects (eg, street, building, etc) linked to the road can automatically ‘inherit’ any changes made to the road, thereby making it easier to track later (Worboys, 1994) .

Recent research proposals have used temporal GIS and object oriented techniques to explicitly define the relationship between the events (or processes) and the objects over time. These proposals include the eventoriented model and the triad model and. The event-oriented model involves the use of object oriented techniques to identify the pattern of changes (as events) within the objects (Worboys, 1994). In order to effectively track versions of the original object, version management (Wachowicz, 1999) and identity-based methods (Hornsby and Egenhofer, 2000) have been employed. The triad model (Peuquet, 1998) is an integrated model, consisting of three independent and interrelated domains (location, feature and time) whereas in event-oriented models events are time-stamped in a sequential manner and stored progressively over time (Frank, 1994; Peuquet, 1998 and Claramunt el at, 1999).

Although the triad model constitutes an integrated approach to representing changes, it does not relate events to specific geographical phenomena; while event-oriented models are suitable for temporally stable sequential changes but are not useful for representing sudden changes (eg, earthquakes) and protracted changes (eg, annual rainfall patterns) (Peuquet, 1998). Neither model is sufficiently suitable for tracking the evolution of geographical objects where splitting, merging or transitions need to be recorded and retrieved.


A proposed new model

Object orientation has the abstraction power to represent real objects, provides the extensibility needed to create new geographical models (through ‘inheritance’), and the semantic needed to construct complex objects of similar spatial and temporal states (through ‘polymorphism’) (Yourdon, 1994). The proposed object oriented model supports both object
and attributes versioning, where changes of geographical phenomena are handle by version management.

A version of an object consists of composite classes, as shown in figure 1. The aggregated composite classes include thematic class, spatial class and temporal class. The associated composite classes include events class and processes class. The spatial class deals with queries about the location of the object (eg, “where is the best museum in this city?”). The thematic class deals with queries about the features of an object (eg, “what is the speed limit of this road?”). The temporal class deals with queries about the time attributes of the object (eg, “when was hospital H built in this locality?”).

The thematic, spatial and temporal classed are linked to a composite class structure recording versions, events and processes. An event class deals with the cause of the changes of the geographical object (eg, “the event which marked reducing the speed limit on road R”). A process class handles the effect of changes of the object (eg, “how much rainfall will be expected to cause a flood?”).

Figure 2 explains the workings of the version class. A geographical object is represented as a generic object, and the first object and any subsequent
changes can be represented as versions. Each version of the object records the changes (involving an attribute or behaviour) signalled by the aggregated spatial, thematic and temporal classes and the associated events and processes classes. Subsequent changes of the attributes of a geographical object will dynamically generate related attributes and temporal links updated by the corresponding versions, an effective facility proposed originally in a research paper by Owen (1993). The relationships between the generic object and versions of that object are represented by a temporal version management approach, as discussed by Dadam et al (1984) and Wachowicz (1999). This method of version management uses temporal operators (eg, during, after, before etc) to handle gradual and sudden changes, as defined by Allen (1984). To avoid the use of large storage space, only the generic object (or subsequently the current object) holds the complete attributes and behaviour of the object while the other versions record only the changes in their attributes and behaviour.

The temporal relationships between the current object and versions are given by:


A shown in equation (2), previous versions can be evaluated from current versions, and this strategy is known as backward versioning. The method in equation (2) provides a quicker access to the current versions.


When a geographical object changes, the generated dynamic attribute locates the versions and creates temporal links between the previous version and the new versions. Similar equations, which can be used for splitting and merging of objects, are provided by Dadam et al (1984).

A version of an object is induced by changes (attribute or behaviour) of the spatial, thematic and temporal classes. Subsequent attributes and behaviour of the classes are automatically updated to the respective class.
Each attribute or behaviour change is contained in a version, linked bidirectionally to the respective spatial, thematic and temporal classes.


Model implantation and evaluation

The model was implemented using an object oriented database, Objectivity, and the object oriented programming environment Visual C++. The relationships between the classes are established in the application schema file using the object reference class function, ooRef. For example, when the first line of code below is inserted in the version class and the second in the spatial class, the relationships between the version class and the spatial class is created. 1) ooRef(Spatial) current_spatdata; 2) ooRef(GObject) current_SpatObject;

Objectivity/DB has the capabilities to represent the versioning approaches (ie, linear, splitting and merging) demonstrated in the OOM. Linear changes are represented by linear versioning method using the setVersSt atus(oocLinearVers) function. Changes involving splitting are represented by branching versioning technique using the setVersStatus(oocBranchingVers) function. Geographical phenomena involving merging are represented by the merging versioning approach using the add_derivative function. If the properties of the merged object are similar to the previous objects, the add_derivedFrom function is used. Versioning is established by invoking the version(copy) and version(move)
function in the application DDL (Data Definition Language) schema file. The version(move) function allows the attributes and behaviour of the previous version to be moved to the current version and the version(copy) function enables the copying of the properties of previous version to the current version.

Persistence objects are identified using the object identifier (OID) which is unique within a federated database. Objectivity/DB uses the object handle class, Handle, to access persistent objects automatically by the DDL process for every persistence class found in the schema header. The persistent objects of the version class was represented by GObjectH, the spatial class by SpatH, the temporal class by TempH, the thematic class by ThemH, the process class by ProcessH and the event class by EventH. For example, the persistent objects of the version class and the spatial class are generated using the method below: Handle (Spatial) SpatH; Handle (GObject) GObjectH;

Aggregated relationships between the version class and the spatial class, the thematic class and the temporal class are established in the application source code using the code below:

GObject::GObject(): current_spatdata(newSpatial()),
current_themdata(new Thematic());

A dynamic function handles the temporal relationships between versions, events and processes. The code below generates the relationships between the versions, events and processes. Each process is linked to the event through the corresponding version.

A test of the functionality of the model was conducted which involved the tracking of geographical objects that experienced versioned events triggering by spatial and thematic attribute changes. Comparing the historical map of Canbury Ward in 1913 (figures 3-5) and that of 1933, there was an expansion on the Upper Ham Road in 1933 to ease traffic congestion in the area. Figure 4 shows a sample dialog box that was used to update the spatial attributes of the Upper Ham Road. The attribute changes (ie, spatial ) were updated to the new versions of the geographical
object. The spatial changes represent the Y (northing) and the X (easting) coordinates of the geographical objects. The spatial attributes were updated on the map by retrieving values from the database as shown in figure 5. The updated spatial attributes shown represents the northing and easting coordinates of the new versions of the geographical object Upper Ham Road.



The proposed system constitutes good temporal representation, because the temporal attributes and behaviour of the versions are independent, but retain dynamic relationships which enable the tracking of individual thematic, spatial or temporal events and processes as distinct (rather than hierarchically indexed or consolidated) versions. Moreover, the temporal attributes in the proposed model include temporal operators to promote the continuous analysis of patterns of change. The system also works well with both gradual and sudden changes because the attributes of events have temporal operators, and versions have builtin relationships between them. The GIS system proposed by the authors eliminates the need for large data storage capacities by recording only the changes in the spatial, temporal, thematic, event and process classes. The results have also indicated that continuous tracking of the patterns of change of geographical phenomenon can be achieved effectively. The development of an improved graphical user interface together with interfacing with some existing geographical information systems will be tackled in future work.


Adamu, A, Khaddaj, S. and Morad, M. (2004). ‘Object Model for Temporal Changes in GIS. Methodologies’, in Models and Instruments for Rural and Urban Land Management, ed. By Deakin, M., Mansberger, R. and Dixon- Gough, R., Ashgate Publishing, UK.

Allen, J. F. (1984). ‘Towards a General Theory of Action and Time’, Artificial Intelligence 23, 123-154.

Claramunt, C. and Theriault, M. (1996).’Towards Semantics for Modeling Spatio-Temporal Processes within GIS,’ 7th International Symposium on Spatial Data Handling, 12-16.

Claramunt, C. Parent, S. Spaccapietra and Theriault, M. (1999). ‘Database Modelling for Environmental and Land Use Changes’, in Geographical Information and Planning, ed. By Stillwell, J., Geertman, S. and Openshaw, S., eds., (Springer, London,1999) 182-202.

Dadam, P., Lum, V. and Werner, H.D. (1984). ‘Integrating of Time Versions
into Relational Database Systems’, in Proceeding of the Conference on Very Large Databases, 509-522.

Frank, A (1994). ‘Qualitative Temporal Reasoning in GIS- Ordered Time Scales’, in Sixth International Symposium on Spatial Data Handling (Edinburgh Scotland International Geographical Union, 410-30

Hornsby, K. and Egenhofer, M. (2000). ‘Identity-Based Change: A Foundation For Spatio-Temporal Knowledge Representation’, International Journal of Geographical Information Science 14(3), 207-224.

Khaddaj, S, Adamu, A, M Morad (2004). ‘Object Versioning and Information Management’, Information and Software Technology, 46: 491-498.

Langran, G. (1993). ‘Manipulation and Analysis of Temporal GIS’, in Proceedings of the Canadian Conference on GIS, 869-879.

Milne, P., Milton, S. and Smith, J.L. (1993). ‘Geographical Object-Oriented Database – A Case Study’, International Journal of GIS 7 (1), 39-55.

Nash, P.J. and Parker, D. (Eds.) (2005). ‘A model for spatio-temporal network planning Computers & Geosciences’, Volume 31(2), 135-143.

Owen, P.K. (1993). ‘Dynamic Functions Triggers in an On-Line Topology Environment’, in European Conference on GIS (EGIS), 1249-1255.

Peuquet, D. (1998). ‘Time in GIS and Geographical Databases’, in Geographical Information Systems: Principles and Applications , ed. by Longley, P., Goodchild, M., Maguire, D. and Rhind D., Volume 1, Chapter 8, London, Wiley.

Quantrani, T. (2002). Visual Modelling with Rational Rose 2000 and UML, New York, Addison-Wesley.

Sui, D. (19980. ‘GIS Based Urban Modeling: Practices, Problems, and Prospects’, International Journal of Geographical Information Science (8), 7-24.

Wachowicz, M. (1999). ‘Object Oriented Design for Temporal GIS’, London, Taylor & Francis.

Worboys, M. (1994). ‘Object Oriented Approaches to Georeferenced Information’, International Journal of GIS (6), 353-399.

Yourdon, E. (1994). Object Oriented System Design: An Integrated Approach, New York, Yourdon Press.


M Morad

Head of Department, Urban Environment &
Leisure Studies, London South Bank University, UK

A Adamu

Researcher, Faculty of Computing,
Information Systems & Mathematics,
Kingston University, UK

S Khaddaj

Senior Lecturer, Faculty of
Computing, Information Systems &
Mathematics, Kingston University, UK
My coordinates
His Coordinates
Steve Berglund
Mark your calendar
May 09 TO DECEMBER 2009

1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 4.50 out of 5)