Full text: XVIIth ISPRS Congress (Part B3)

  
  
AN OBJECT-ORIENTED MODELLING FRAMEWORK FOR GEOGRAPHIC INFORMATION 
M. Isdale & Y.C. Lee 
Department of Surveying Engineering 
University of New Brunswick 
Fredericton, N.B. Canada 
ISPRS COMMISSION III 
ABSTRACT 
One of the drawbacks of many Geographic Information Systems is in the concepts provided for representing features in the real 
world. These concepts tend to be far removed from those employed by users when they think about geographic features. As a 
result, these concepts lack the power to represent the higher level, semantic aspects of geographic information. This paper describes 
the design and implementation of a framework for the storage of geographic models of the real world. It can operate at a level closer 
to that of GIS users, and supports concepts based on those of Entity/Relationship and Object-Oriented modelling. It provides a 
number of data types suitable for spatial processing, and they can be extended by the user. The implementation of the framework 
was carried out using an object-oriented programming language called Eiffel. 
KEY WORDS: Data Base, Object-Orientation, GIS/LIS, System Design. 
1. INTRODUCTION 
The abstract view of the world provided by many of today's 
Geographic Information Systems (GIS) is based heavily on 
the data structures used to represent information. For 
example, the concepts provided by the graph abstraction of 
space — points, lines and polygons — are often given a 
great deal of emphasis. Such emphasis on particular 
structures reflects an over-dependance on them, and leads to 
a lack of flexibility in using others. In addition, the identities 
of the things being represented are often hidden away among 
a great deal of interconnected data. The combination of a 
polygon and identifier, a feature code and a set of relational 
tuples is often the extent of the powers of a GIS when it 
comes to representing a plot of land, for example. 
This paper deals with the design and implementation of a 
framework for the storage of geographic information. In 
this framework, an attempt is made to provide better 
representational powers by supplying structures which 
explicitly represent the existance of the things of interest — 
nothing more. These structures can then be linked to others 
which represent information about the things of interest — 
names and positions, for example, along with other 
quantitative and qualitative information. 
By elevating the things of interest to a position of greater 
importance, and by supplying the structures to represent 
them, two things are acheived. First, the representation in 
the GIS should correspond more closely to the user's 
perception of the real world. This should make it easier for 
the user to interact with the representation and to get work 
done. Second, with the de-emphasis of the structures used 
to represent information about the things of interest, it is 
anticipated that a more flexible approach to using such 
structures will be possible. It should be noted that although 
the importance of a structure such as a line graph may well 
be de-emphasised from an overall point of view, this in no 
way detracts from the fact that it is a powerful structure for 
modelling and analysing networks, and for providing a basis 
for polygonal structures. 
The framework which was developed can be described as 
being object-oriented, both in terms of its implementation 
and the way in which it models the real world. This paper 
first sets out to explain what object-orientation is, and how it 
can be applied. It then goes on to describe the ideas behind 
the design of the framework, and the experiences 
encountered in trying to implement it. 
2. OBJECT-ORIENTATION 
The term ‘object-orientation’ is one of the biggest computer 
buzzwords of our time. It is one that is often used without 
much understanding of what it implies, and has, for some 
people, become a hi-tech synonym for ‘good’. Object- 
orientation is based on some fundamental concepts which 
754 
can be used at a number of different levels. They are used in 
software development, modelling, and as the basis for user 
interfaces. This can lead to some conflict in what people 
perceive as being object-oriented. In this section, the 
concepts behind object-orientation will be outlined, and their 
application in different situations described. These concepts 
need to be covered before a complete explanation of the 
modelling framework can be undertaken. 
2.1 Concepts of Object-Orientation 
The basic idea behind all things object-oriented is that in one 
way or another, a system can be viewed as a collection of 
inter-related objects. An object has a unique identity 
(implying its existance), a state (defining its structural 
characteristics at any point in time), and a behaviour 
(defining its operational characteristics, or what it can do). 
The concept of classification dictates that an object must 
belong to a class of objects, all with the same specifications 
of state and behaviour. A class defines the nature of the state 
and behaviour, while an object records the identity and state 
of one particular instance of a class. 
The objects dealt with are dictated by the kind of system 
being considered. When looking at a model of a real world 
system, objects such as roads or rivers may be dealt with. 
When concerned with the implementation of a software 
system, objects such as arrays and lists would be important 
— in addition to those representing things in the real world, 
were this the purpose of the software system. Object- 
oriented user interfaces use objects such as windows, icons 
& pointers to allow the user to control a computer 
environment. The common idea is that a system — be it the 
code for a computer programme, a model of reality or a 
computer environment — is viewed as a collection of inter- 
related, uniquely identifiable objects with a state and 
behaviour. 
As well as the concepts of object and class, object- 
orientation also supplies the dual concepts of 
generalisation and specialisation. Together, these 
allow classes to be arranged in a hierarchy. A class which is 
a descendant of another in the hierarchy is said to be a more 
specialised subclass, while the more general class is the 
superclass. A subclass has the characteristics of the 
superclass automatically defined for it. It can also define 
more specialised characteristics of its own, however. 
To make things happen in an object-oriented system, 
messages are passed to objects. This may be done by the 
user or by other objects. An object which has a message 
sent to it will then behave in some way, depending on what 
kind of system is being dealt with. Object-oriented systems 
are therefore dynamic in nature. 
A GIS is a software system concerned with modelling the 
real world. There are three separate systems which can be 
spe 
inh 
def 
attr 
inh 
gen 
on 
sup 
inte 
diff
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.