325
i APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING TOOL: FOR APPLICATION TO HYDROLOGICAL NOWCASTING By Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March 2003

APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

i

APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING TOOL: FOR APPLICATION TO HYDROLOGICAL NOWCASTING

By

Waleed Al-Sabhan

A Thesis Presented for the Degree of

Doctor of Philosophy

KING’S COLLEGE - UNIVERSITY OF LONDON

March 2003

Page 2: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- ii -

Acknowledgement

All praise and thanks are due to Allah the Almighty in whom I put my trust. I

extend also my full respect to my beloved Prophet Mohammed peace and blessing upon

him.

I wish to acknowledge those whose assistance and support made this degree

possible. I thank my dissertation advisory committee for their guidance and support. My

special appreciation goes to my major supervisor Dr. Mark Mulligan for his valuable

counsel and his timely and critical feedback. Thanks also to Dr. Alan Blackburn for his

incisive commentary and ineffable sense of style. I also wish to express my gratitude to

the faculty members, staff, friends and my colleagues for their help and support.

Most importantly, I wish to acknowledge my debt to my beloved parents who

have supported me with their encouragement and prayers. I dedicate this work to the

memory of my dear brother Nawaf who, although absent, has motivated me for so long.

I thank all my brothers and sisters for their support. And I am especially grateful to my

wife and children Khalid and Mamdouh for their encouragement, support and patience

during the years of my studies.

Page 3: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- iii -

Table of Contents

Acknowledgement ............................................................................................................ii Table of Contents .............................................................................................................iii List of Figures .................................................................................................................vii List of Tables ...................................................................................................................ix 1. Introduction ...............................................................................................................1

1.1 Geographic Information Systems......................................................................1 1.2 Modelling ..........................................................................................................6 1.3 Research Problem .............................................................................................8 1.4 Research Objectives ........................................................................................10 1.5 Methods and Goals..........................................................................................10 1.6 Thesis Contributions .......................................................................................12 1.7 Thesis Organisation.........................................................................................13

2. Hydrological Modelling Tools...............................................................................15 2.1 Overview.........................................................................................................15 2.2 Hydrology, GISs, and the Internet ..................................................................15 2.3 History of GISs ...............................................................................................18

2.3.1 The Pioneering Age ................................................................................19 2.4 The Second Phase ...........................................................................................20

2.4.1 The Third Phase ......................................................................................21 2.4.2 The Fourth Phase ....................................................................................22

2.5 The Character of GISs.....................................................................................28 2.6 Hydrological Modelling ..................................................................................29 2.7 Spatial Flood-forecasting Tools ......................................................................31

2.7.1 Stand-alone Models.................................................................................32 2.7.2 GIS-based Flood-forecasting Tools ........................................................33

2.8 Real-time Requirements of Flood-forecasting Tools......................................36 2.9 Public Access to Hydrological Information....................................................38 2.10 The U.K. Flood Warning System....................................................................40

3. Web-based GISs......................................................................................................43 3.1 Introduction .....................................................................................................43 3.2 Recent Developments......................................................................................44 3.3 Hydrological Web-based GISs........................................................................44

3.3.1 Interfaces .................................................................................................46 3.3.2 Java Support ............................................................................................46 3.3.3 Data and Databases on the Web..............................................................47

3.4 Analysis...........................................................................................................49 3.5 Online GIS Applications .................................................................................52

3.5.1 Raw-data Download................................................................................52 3.5.2 Static-map Display ..................................................................................52 3.5.3 Metadata Search ......................................................................................53 3.5.4 Dynamic-map Display ............................................................................53

Page 4: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- iv -

3.5.5 Web-based GIS Query and Analysis.......................................................54 3.5.6 Net-savvy GIS Software .........................................................................55

3.6 Commercial Web Geographic Information Systems ......................................55 3.7 Conclusions .....................................................................................................56

4. Current Web Technologies .....................................................................................57 4.1 Overview.........................................................................................................57 4.2 Client-Server Computing ................................................................................57 4.3 Client-Server Network Architecture ...............................................................58

4.3.1 System Architectures ..............................................................................59 4.3.2 Web Servers ............................................................................................60

4.4 Web Software Development ...........................................................................60 4.4.1 Markup Languages..................................................................................60 4.4.2 Common Gateway Interface ...................................................................62 4.4.3 Java..........................................................................................................63 4.4.4 Applets and Servlets................................................................................67 4.4.5 ActiveX ...................................................................................................68 4.4.6 Client-side Java versus Server-side CGI.................................................69

4.5 Conclusions .....................................................................................................71 5. Methodology and Results for a Server-side Approach ...........................................73

5.1 Overview.........................................................................................................73 5.2 Components of a Flood-Modelling System ....................................................76

5.2.1 Data Collection .......................................................................................76 5.2.2 Data Transmission...................................................................................78 5.2.3 Meteorological Forecasting.....................................................................78 5.2.4 Flood Forecasting....................................................................................78 5.2.5 Warning Dissemination...........................................................................79

5.3 Web-based GIS Functionality: A Basic Investigation ....................................79 5.3.1 The Address Locator Problem ................................................................80 5.3.2 Animation Programs ...............................................................................82 5.3.3 Navigating Maps: Zoom in/Zoom out/Pan Programs .............................83 5.3.4 A Flood Prediction Service .....................................................................85

5.4 Advanced Investigation...................................................................................90 5.4.1 Slope........................................................................................................97 5.4.2 Watershed................................................................................................98 5.4.3 DEM Display ..........................................................................................99 5.4.4 Overlay..................................................................................................100 5.4.5 Histogram..............................................................................................101 5.4.6 User Input..............................................................................................104 5.4.7 Graphing................................................................................................105 5.4.8 Database Interaction..............................................................................108

5.5 Conclusion ....................................................................................................117 6. Methodology and Results for a Client-side Approach..........................................120

6.1 Overview.......................................................................................................120 6.2 Image-processing Analysis ...........................................................................120 6.3 GUI Layout ...................................................................................................127 6.4 Standard GIS Functionality...........................................................................134

6.4.1 Slope Calculation ..................................................................................135 6.4.2 Global Image Information.....................................................................137 6.4.3 Selection Information............................................................................139

Page 5: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- v -

6.5 Data Modelling .............................................................................................140 6.5.1 Point-pattern Analysis...........................................................................143 6.5.2 Spatial Analysis.....................................................................................144 6.5.3 Zooming In............................................................................................145 6.5.4 Zooming Out .........................................................................................146 6.5.5 Rubber Banding ....................................................................................147 6.5.6 Area-pattern Analysis............................................................................149 6.5.7 Network Analysis..................................................................................150 6.5.8 Hydrograph Generator ..........................................................................155

6.6 Conclusion ....................................................................................................162 7. System Architecture and Implementation.............................................................165

7.1 Requirements.................................................................................................165 7.2 Problem Domain ...........................................................................................166 7.3 Architecture...................................................................................................168 7.4 Support Tools and Resources........................................................................169

7.4.1 Data-collection Hardware .....................................................................170 7.4.2 Computer Hardware ..............................................................................171 7.4.3 Software ................................................................................................172

7.5 Database Connection.....................................................................................174 7.6 The Dynamic Model .....................................................................................178

7.6.1 Dynamic-modelling Functions..............................................................179 7.6.2 GIS Functions .......................................................................................180 7.6.3 Program Operation ................................................................................181

7.7 Java User Interface........................................................................................182 7.7.1 Analysis Page ........................................................................................183 7.7.2 Time-series Hydrographs ......................................................................206 7.7.3 Multi-image Page ..................................................................................207 7.7.4 Data-manager Page ...............................................................................210

7.8 Image Tools...................................................................................................213 7.9 Testing...........................................................................................................213 7.10 Summary .......................................................................................................214

8. Evaluation .............................................................................................................215 8.1 Comparison with Current Systems ...............................................................215 8.2 GIS-Model Coupling.....................................................................................215 8.3 Accessibility..................................................................................................217

8.3.1 Usability ................................................................................................217 8.3.2 Platform and Software Requirements ...................................................219 8.3.3 Cost .......................................................................................................219

8.4 Model Interaction ..........................................................................................222 8.5 Real-time Response.......................................................................................222 8.6 Problems Encountered ..................................................................................223

9. Conclusions and Future Work...............................................................................225 9.1 Summary .......................................................................................................225 9.2 Conclusions ...................................................................................................226

9.2.1 GIS-Model Coupling.............................................................................226 9.2.2 Accessibility..........................................................................................226 9.2.3 Model Interaction ..................................................................................227 9.2.4 Real-time Response...............................................................................228 9.2.5 Educational Uses...................................................................................228 9.2.6 Shortcomings ........................................................................................228

Page 6: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- vi -

9.3 Future Work ..................................................................................................230 9.3.1 Knowledge-based Approaches..............................................................230 9.3.2 Mobile Web-based GISs .......................................................................232 9.3.3 Services Anticipated by UMTS ............................................................233

Appendix A Raw Data Download .............................................................................234 Appendix B Miscellaneous Diagrams .......................................................................244 Appendix C Free Software Used ...............................................................................250 Appendix D 3G Wireless Technologies ....................................................................251 Appendix E UML Diagrams .....................................................................................254 Appendix F Questionnaire ........................................................................................267 Glossary ........................................................................................................................268 References .....................................................................................................................273

Page 7: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- vii -

List of Figures

Figure 3.1: Dynamic-map Display Architecture.............................................................53 Figure 3.2: Web-based GIS Query and Analysis Architecture .......................................54 Figure 4.1: CGI Life Cycle .............................................................................................63 Figure 4.2: Java Platform ................................................................................................64 Figure 4.3: Computer System Layering with Java..........................................................66 Figure 5.1: Flood Components........................................................................................77 Figure 5.2: Address Locator Example ............................................................................80 Figure 5.3: Map Navigation ............................................................................................85 Figure 5.4: Flood Prediction Service ..............................................................................86 Figure 5.5: Flood Map Result .........................................................................................86 Figure 5.6: DEM of the Velez Rubio Region .................................................................88 Figure 5.7: Slope Result..................................................................................................89 Figure 5.8: Web-based GIS System Diagram.................................................................91 Figure 5.9a: HTML Interface..........................................................................................92 Figure 5.9b: Main Menu .................................................................................................93 Figure 5.10: System Structure.........................................................................................93 Figure 5.11: File Sub-Menus ..........................................................................................94 Figure 5.12: Image Description Request.........................................................................94 Figure 5.13: Image Description Result ...........................................................................95 Figure 5.14: Create Directory .........................................................................................96 Figure 5.15: Directory Output.........................................................................................96 Figure 5.16: Slope Function Result.................................................................................98 Figure 5.17: Watershed Function Interface.....................................................................99 Figure 5.18: DEM Display............................................................................................100 Figure 5.19: Overlay Page ............................................................................................101 Figure 5.20: Histogram Page ........................................................................................102 Figure 5.21: Histogram Result ......................................................................................102 Figure 5.22: Example of Histogram Use.......................................................................103 Figure 5.23: User Input .................................................................................................104 Figure 5.24: Graph Interface .........................................................................................106 Figure 5.25: Bar Graph Result ......................................................................................108 Figure 5.26: Line Graph Result.....................................................................................108 Figure 5.27: User Interface of ‘get a filename’ Option.................................................112 Figure 5.28: Interface for ‘List Data’ Option................................................................113 Figure 5.29: Interface of ‘Select a Single Value’ Option..............................................114 Figure 5.30: Database Main User Interface ..................................................................114 Figure 5.31: Interface of ‘Insert a New File’ Option ....................................................115 Figure 5.32: Interface of ‘Delete Variable’ Option.......................................................116 Figure 5.33: Interface of ‘Add Variable’ Option ..........................................................116 Figure 5.34: Database Administrator Interface.............................................................117 Figure 6.1: Basic Interface Layout................................................................................128 Figure 6.2: Image Manipulation Interface ....................................................................132

Page 8: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- viii -

Figure 6.3: Result of the Invert Operation ....................................................................133 Figure 6.4: DEM Displayed ..........................................................................................135 Figure 6.7: Slope Result................................................................................................137 Figure 6.6: Window Selection Operation......................................................................138 Figure 6.7: Point-of-Interest Interface...........................................................................143 Figure 6.8: Zoomed-out Result .....................................................................................146 Figure 6.9: A User-drawn Box for Zooming In ............................................................148 Figure 6.10: Result of Zooming in to a Specific Area on a User-drawn Box...............148 Figure 6.11: Parks as Points of Interest in the City of New York.................................149 Figure 6.12: Crime Statistics (Highlighted Areas)........................................................150 Figure 6.15: Shortest Path (Displayed as a Line)..........................................................152 Figure 6.14: Bar-graph Result.......................................................................................161 Figure 6.15: Line-graph Result .....................................................................................161 Figure 7.1: System Structure........................................................................................169 Figure 7.2: Connection Model ......................................................................................170 Figure 7.3: Database Connectivity (JDBC) ..................................................................176 Figure 7.4: Three-tier Approach ...................................................................................177 Figure 7.5: User Interface .............................................................................................178 Figure 7.6: Dynamic Model ..........................................................................................181 Figure 7.7: Interactions within Modelling Program......................................................182 Figure 7.8: GUI Menu System......................................................................................183 Figure 7.9: Initial GUI Page..........................................................................................184 Figure 7.10: Analysis Page — DEM Displayed ...........................................................188 Figure 7.11: Example of Nine-pixel Image...................................................................189 Figure 7.12: Slope Result of the DEM in Figure 7.10 .................................................191 Figure 7.13: Slope Generated by Java ..........................................................................192 Figure 7.45: Slope Generated by Idrisi .........................................................................192 Figure 7.15: Overlay Result ..........................................................................................193 Figure 7.16: Histogram of Overlay Operation ..............................................................193 Figure 7.17: Overlaying Two Images ...........................................................................196 Figures 7.18 and 7.19: Direction of LDD Code and LDD Map ...................................198 Figures 7.20 and 7.21: Amount of Water and Accumulated Flux Map........................199 Figure 7.22: Accumulated Flux ....................................................................................200 Figure 7.23: Current-point Information ........................................................................203 Figure 7.24: Simple Histogram....................................................................................205 Figure 7.25: Time-series Graph Page — Monthly........................................................207 Figure 7.26: Multi-image Page .....................................................................................208 Figure 7.27: Animation Page ........................................................................................210 Figure 7.28: Database Interface ....................................................................................212 Figure 7.29: Result of Data Query ................................................................................212 Figure B.1: Three-tiered Architecture...........................................................................245 Figure B.2: Conversation Scenario in CGI ...................................................................246 Figure B.3: Applet Mechanism.....................................................................................247 Figure B.4: The Servlet Mechanism .............................................................................248 Figure D.1 The Development of 3G Wireless Technologies........................................251 Figure D.2 Interaction between Internet and Mobile Communication Network ..........252 Figure D.3 WAP-Internet Interaction ...........................................................................252 Figure D.4 Nokia 3G Terminal .....................................................................................253

Page 9: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- ix -

List of Tables

Table 2.1 The Development of GISs..............................................................................28 Table 3.1: Differences between Traditional and Web-based Database Applications.....48 Table 4.1: HTML Chronology ........................................................................................61 Table 4.2: A Comparison between Java and ActiveX ....................................................69 Table 4.3: Characteristics of Web-based GIS Systems...................................................70 Table 5.1: Tourist Centre HTML File.............................................................................81 Table 5.2: Database File (malls.db) ................................................................................81 Table 5.3: CGI Database Program ..................................................................................82 Table 5.4: Animation HTML ..........................................................................................83 Table 5.5: Database Vendors ........................................................................................109 Table 5.6: Rainfall Table...............................................................................................111 Table 5.7: Filename Table.............................................................................................111 Table 6.1: Standard Image Loading ..............................................................................123 Table 6.2: Non-standard Image Loading ......................................................................125 Table 6.3: Custom Encoding.........................................................................................125 Table 6.4: Border Layout ..............................................................................................128 Table 6.5: MouseAdapter..............................................................................................130 Table 6.6: Adapter Code ...............................................................................................130 Table 6.7: Image Canvas...............................................................................................131 Table 6.8: Invert Colour Subroutine .............................................................................132 Table 6.9: Flipping an Image Upside Down .................................................................133 Table 6.10: Slope Code.................................................................................................136 Table 6.11: Global Information Code ...........................................................................138 Table 6.12: Selected Information Code ........................................................................139 Table 6.13: HTML File with Parameters Initialised .....................................................142 Table 6.14: Configuration File for New York City ......................................................142 Table 6.15: Extract of the Zoom-in Code .....................................................................146 Table 6.16: Extract of the Zooming-out Code ..............................................................147 Table 6.17: Crime Statistics Colour Configuration File ...............................................150 Table 6.18: Configuration File (usa_route.ini) for Shortest Path..................................153 Table 6.19: Extract of the Shortest-path Code ..............................................................153 Table 6.20: Table Reader ..............................................................................................156 Table 6.21: InputStream Code ......................................................................................157 Table 6.22: Monthly Rainfall Data ...............................................................................158 Table 6.23: Daily Rainfall Data ....................................................................................159 Table 6.24: Bar-graph Code..........................................................................................160 Table 6.25: Techniques for Hydrologic Modelling over the Internet ...........................164 Table 7.1: Infiltration Capacity .....................................................................................180 Table 7.2: Example of a Time-series File .....................................................................185 Table 7.3: ColorImageRenderer Program.....................................................................186 Table 7.4: MonoImageRenderer Program ....................................................................187 Table 7.5: Overlay Options ...........................................................................................195

Page 10: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- x -

Table 7.6: Legend Generator Program..........................................................................202 Table 7.7: Histogram of a Simple Image ......................................................................204 Table 7.8: Animation Program......................................................................................209 Table 8.1: Current-system Comparison .......................................................................216 Table 8.2: Cost Comparison.........................................................................................221 Table B.1: Critical Distinctions between CGI and Java ..............................................249

Page 11: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 1 -

1. Introduction

This chapter contains a background discussion about geographic information

systems, statements of the research problem, objectives, and methods, a description of

the thesis contributions, and an outline of the thesis organization.

1.1 Geographic Information Systems

In the last two decades, Geographic Information System (GIS) applications have

been developed, implemented, and enhanced by scientists in many fields including

geography, computer science, environmental science, and others. GISs have

revolutionized many aspects of modern geography, especially with the advent of the

Internet and the World Wide Web (WWW or Web). The Internet, a global network of

computer networks, has become one of the world’s largest and most promising

information resources. The Web, an Internet service capable of accessing complex

information in the form of graphics, styled text, and even sound and video, has allowed

people to increase their sharing and use of spatial information.

The use of GISs has grown dramatically from obscurity in the 1980s to become

commonplace in businesses, universities, and governments, where they are now used

for many diverse applications. Although many different definitions of GISs have

developed, Worboys (1995) provides this typical definition of a conventional GIS:

A GIS is a computer-based information system that enables capture, modelling,

manipulation, retrieval, and presentation of geographically referenced data.

Page 12: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 2 -

Some experts from other fields such as computer science do not share the same

view as geographers. Another definition can be found in Microsoft’s Computer

Dictionary (Microsoft Dictionary, 1997):

A GIS is an application or suite of applications for viewing and creating maps.

Generally, geographic information systems contain a viewing system (sometimes

allowing users to view maps with a Web browser), an environment for creating

maps, and a server for managing maps and data for real- time on-line viewing.

Thus, in this definition, a GIS is a client-server application that is capable of

delivering maps over the Internet. The focus of GIS research and development has

shifted from spatial analysis tools to information retrieval, creating a gap between the

outdated desktop GIS and the state-of-the art Web GIS (Feng, 1999).

Four principal areas that impede GIS use can be identified: complexity,

interfacing, accessibility, customisation and platform dependency. At the present time,

GIS systems are large, complex, and difficult to use and have been severely criticised as

being elitist (Pickles, 1995). The hardware, software, and data can be highly expensive

for most individuals; similarly, the training required to use most GIS packages

successfully is extensive. In a survey by Joậo and Fonseca (Joậo and Fonseca, 1996;

Joậo, 1998), it was demonstrated that even though many practitioners know about GISs,

they are not used in many cases due to cost, expertise, and other factors.

Over time, GIS software has become more versatile and general, and different

user interfaces and useful models have been added (Mark and Frank 1992; Schee and

Jense, 1995), all increasing the complexity of the interface. In its early development, the

GIS industry focused on system functionality and data handling. However, it soon

became apparent that the evolution of GISs could not continue without developing a

better user interface (Raper, 1991). Although several vendors have developed new

interfaces, modellers were reluctant to use a GIS for modelling because of the

Page 13: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 3 -

complexity of developing an efficient integration technique to support the modelling

effort (Stuart and Stocks, 1993).

The most significant aspect of implementation is an appropriate user interface,

for it determines the interaction between the computer system and the user (Dodson,

1993). This interface permits the application of a variety of tools regulating both the

visualisation and analysis of the spatial distribution of model parameters, as well as the

simulated state variables set at a variety of spatial and temporal scales. Improvements in

the quality of the user interface connecting the GIS has become an essential contributing

factor motivating people to use a GIS as a means of handling spatial data and for

determining policies. Frank (1993) agrees, stating that the user interface is the most

important single part of the system.

In the United States, significant initiatives have furthered GIS user-interface

design such as the National Center for Geographic Information and Analysis (NCGIA)

(Kuhn et al., 1992). Albercht et al. (1997) stated that the finished product of a modelling

system must include a graphical user interface that is simple to use. Knill (1993)

stresses the need for improvements in user-friendliness, including visualisation and

results. Some authors focus on the need to develop an adaptive user interface, which

provides multiple, customised interfaces for each class of users. For example,

hydrologists could be presented with a more technical interface than casual users.

Kingston et al. (2000) also stressed the need for the development of an interface that can

be modified to match the skill levels of the user.

GIS and simulation models are used most frequently in professional and

academic endeavours. Therefore, the developments in watershed model integration with

GISs are actually the result of the development of interfaces that facilitate the creation

of watershed-model input data sets (DeBarry et al., 1999). Models such as HEC-11, TR-

202, SWMM3, and others lack good interface design and require intensive input data

1 U.S. Army Corps of Engineers Flood Hydrograph Package for rainfall-runoff simulations from Hydrologic Engineering Center (HEC) of the U.S. Army Corps of Engineers. 2 TR-20 is a computer program for the generation and routing of runoff hydrographs from Natural Resources Conservation Service (NRCS).

Page 14: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 4 -

development, which is often very labour intensive and time consuming (DeBarry et al.,

1999). Even programs such as HEC-HMS, which is designed with an interactive

graphic user interface (GUI) to provide a convenient means for entering data and

displaying results, are cumbersome when they are needed to execute a series of model

applications with alternative sets of parameters (HEC, 1996). Interfacing is the most

important part of hydrological model development, making improvements in user-

friendliness and flexibility a priority for the use of such systems.

Hydrological modelling tends to remain in the domain of the model developer

and to be applied within a consulting framework. The models are inaccessible to

decision makers who are not specialist modellers (Taylor el al., 1998) and appear to be

designed for experts and professionals for use as in-house tools (Parson, 1999)

Environmental information is usually held in government, academic, and commercial

water institutions. While data are currently available for public use through the Internet

by some institutions and governmental agencies, many of these institutions provide the

data in varying formats and use complicated relational databases (Dai et al., 1997).

However, some, like the United States Environmental Protection Agency (USEPA) and

United States Geological Survey (USGS), have made significant progress toward

providing public access to various environmental databases, in the form of real-time

data (Stewart, 1999a). Unfortunately, effective use of these data requires specialised

software not available to every user. Indeed, the USEPA reported (Princeton Economic

Research Inc., 1998) that various user groups have expressed interest in processed

information, including the output of environmental models (flood plain models), and

that there was far less interest in accessing “raw data”.

Public participation and involvement are important components in the

implementation of a water resources project and in flood management planning (Wood

et al., 1985). Recently, geographers have begun to consider the practical and societal

impacts of using GISs to support public participation (NCGIA 1995, 1996). Having

realized these impacts, it has been concluded that there is a growing demand for public

access to environmental information, as well as a need for publicly accessible 3 Storm Water Management Model for water quantity and quality simulation model developed by Center for Exposure Assessment Modelling (CEAM) of the U.S. Environmental Protection Agency (EPA).

Page 15: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 5 -

Environmental Information Systems (Haklay, in press). In addition, it has long been

recognized that GISs provide the user with a flexible framework for the development of

GIS-based Spatial Decision Support Systems4 (SDSSs) (Clarke, 1990). GISs are,

therefore, often designed for spatial decision support, but they lack the capacity for

collaborative spatial decision making (Jankowski et al., 1997). Research into

collaborative spatial decision support systems (Shiffer, 1992; Harris, 1995; Horita,

2000) and related research into technical aspects of Public Participation GIS (PPGIS)

(Carver et al., 1998; Shiffer, 1999; Kingston et al., 2000; Laurini, 2001) have been

extensively pursued. In the future, a GIS must support SDSSs in collaborative

environments (Karimi and Blais, 1997) designed for sharing, executing, and comparing

model results, especially when the decision makers and/or stakeholders are from

geographically separate locations (Carver et al., 1996).

Customisability describes the process by which GIS software is tailored and

modified to satisfy corporate, departmental, and user requirements (Bundock and Raper,

1991a). Each organisation requires a system that is in many ways unique to its own

structure with consideration to its specific problems, requirements, goals, and

objectives. At present, most GIS and simulation software customisation processes are

time consuming and expensive, require technical expertise in many computer languages,

and very often produce poor results (Raper and Bundock, 1993). Schultz (1993)

discusses the use of GISs with increasing complexity in hydrology and indicates that

some necessary hydrological routines are missing from most GISs and new routines

cannot be introduced directly by the user. Furthermore, many of these hydrological

models and GISs do not support multiple platforms. Most systems depend on a specific

computer platform or hardware configuration. For example, WMS5 runs on a Windows

platform (WMS reference, 1999) while MMS6 operates within the UNIX environment

(MMS manual, 1998). Arc/Info, the most popular GIS software, runs on a UNIX

platform and the Windows-based version (Windows NT) has been released recently

4 SDSS is an interactive, computer-based system designed to support a user or group of users in achieving a higher effectiveness of decision making while solving a semi-structured spatial decision problem. 5 WMS: Watershed Modeling System. Graphical Interfaces to HEC-1, TR-20, NFF, Rational Method and HSPF from Scientific Software Group (http://www.scisoftware.com/index.html). 6 MMS: Modular Modeling System. From the U.S. Geological Survey (USGS).

Page 16: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 6 -

(1996) (Binge, 2000). Thus, platform dependence is one of the issues that restrict users

from data and software sharing.

1.2 Modelling

While GISs provide powerful tools for spatial analysis, their capabilities for

spatio-temporal modelling are limited (Worboys, 1995). Wesseling et al. (1996a) stated

that standard GISs do not explicitly allow dynamic phenomena to be stored and

analyzed. Furthermore, GISs do not provide efficient facilities for iteration through

time.

The importance of integrating simulation models with GIS technology is well-

recognised (Burrough et al., 1988; Van Deursen and Kwadijk, 1993; Goodchild, 1992;

Raper and Livingstone, 1993). Modelling has been a powerful method for integrating

and analyzing data from different sources in comprehensive flood management (Correia

et al., 1997). Many authors have described other methodologies and prototypes for GIS-

integrated systems (Maidment, 1993; Fedra, 1993).

Strategies for integrating GISs with simulation programs, although a subject of

continuous and considerable debate, range from loosely coupled to fully integrated

systems (Goodchild, 1992; Nyerges, 1993; Sui and Maggio, 1999). It can be inferred

from the literature that a substantial amount of effort has been devoted to assessing

hydrological models. These efforts, however, have been largely directed at the

mathematical implementation of different hydrological algorithms and their

applications, or comparison of the existing hydrological and hydraulic models.

In researching the field of GISs and simulation models, three major

requirements for better use of flood forecasting and integrated watershed management

systems have been identified. The requirements include real-time modelling, model

interfacing, and model accessibility.

Page 17: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 7 -

The provision of accurate, timely, and comprehensive real-time and long-term

hydrologic forecasts is a key component in the implementation of integrated water

resources management programs as well as for environmental disaster mitigation efforts

for events such as floods and droughts. The key requirement of flood forecasting is

near-to-real-time data acquisition and analysis. Considering forecasters’ reliance on

hydrological modelling to provide reliable and intelligible forecasts of flood flows with

a long lead time, there is a need for up-to-date data of adequate quality (Bowen, 1987;

Karimi and Chapman, 1997). The lack of such data is an issue in the analysis of most

water resources systems. For example, in some modelling systems (NOAA 1994;

Vehviläinen, and Huttunen, 2001) used in a real-time flood forecasting system, data are

not available before a one-month or so delay in reporting and verifying data such as

precipitation measurements. Such an unacceptable delay may be overcome when

technicians find a means to speed up data processing.

Hydrological models are used mostly in the research stage of environmental

projects, providing information for the development of new hydrological designs or the

evaluation of existing designs (Collier, 1994; Todini and Di Bacco, 1995; Haggett,

1998). Models often supplement on-site monitoring because of the expensive and time-

consuming nature of monitoring. Hydrological model users become skilled at

overcoming the three big challenges of traditional hydrological modelling (Parson

1999): compiling the proper input files, running the model to create output files, and

evaluating the output files.

It is widely recognized that there is a need to improve access to both spatial

information (Lin and Zhang, 1997) and the analytical tools of watershed management.

The audiences, including farmers, urban and watershed residents, natural resources

professionals, business people, others who are directly affected by the decisions, and

scientists, need direct access to spatial data used for flood management and control.

Singh (1995) stated that: “There is a need for watershed models to interface with

economic, social, political, administrative, and legal models. Thus watershed models

will become a component of the larger management modelling strategy.” At present,

however, the effective use of GIS databases requires specialised computer hardware and

Page 18: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 8 -

software that typically are not available to communities. Consequently, communities

currently lacking the ability to access GIS systems do not significantly benefit from

access to valuable data collected and maintained by government agencies, universities,

and private organizations around the world.

1.3 Research Problem

The science linking GISs and the Web, known as geographic information

retrieval (GIR), was first introduced by Larson in 1994. GIR is concerned with

providing specialized access to geo-referenced information sources (Larson, 1996).

Encouraging public access to GISs, Plewe (1997) introduced a new term for the entire,

expanded field; distributed geographic information (DGI) is the distribution of

geographic information to a larger audience than would have had access using

traditional GIS technology.

Using the Web with GISs, geographers and hydrologists can provide access to

GIS databases and simulation models to people who otherwise would not have access to

the technology but whom would find the information useful in their decision-making

activities. In the past, the high cost of hardware and software prohibited individuals

from having their own GIS. Access was also limited by difficult learning curves

surrounding the use of GISs. Web-based GISs will remove the barriers of high cost and

difficult learning curves.

Although commercial GIS developers have produced powerful Web-based GISs

in the past few years, these products are expensive, may not be suitable for

inexperienced users, and require strong programming knowledge. They are also general-

purpose GIS packages that may not suit every application. Developing Web-based GISs

and simulation models from scratch can be a practical alternative to commercial GISs as

they can reduce the cost of a project and allow for a more problem-specific solution.

Page 19: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 9 -

To expand hydrological modelling on the Internet, modelling techniques need to

allow for more and better data retrieval and on-line analysis using Web-based spatio-

temporal models. Thus, providing public access to integrated environmental databases

and spatio-temporal models via GIS integration with the Web could help in reducing the

threat to life and property by forecasting an event before it occurs. The Web can provide

access in real-time to tools and information appropriate to a variety of interested parties.

The Internet is the most effective delivery system used with watershed models

(Vehviläinen, 1999). According to Vehviläinen, reliable hydrological forecasts on the

Internet are available for nearly all possible users.

Many Internet-based languages, such as HTML and Java, are designed to be

platform independent. Integrating GISs with the Web will give users access to GIS

benefits without platform limitations. Interaction between the public and spatial

decision makers can be achieved through a Web-based approach. The benefits include

more opportunities for public feedback and the widening and involvement of potential

audiences in the decision-making process (Carver et al., 1997). Government mandates

also support the use of GISs on the Web. The U.S. government and others are required

to make certain types of information available to everyone (Dai et al., 1997). This

principle is embodied in the U.S. Constitution that states that all information produced

by the federal government, except that impinging on personal privacy or national

security, is in the public domain (Freedom of Information Act, 1965). Therefore, the

Web can be used to great advantage for the enhancement of participatory democracy in

local environmental decision making (Kingston et al., 2000). As Graham (1996) argues,

the Web will “generate a new public sphere supporting interaction, debate, new forms

of democracy and ‘cyber cultures’ which feed back to support a renaissance in social

and cultural life of cities.”

To summarize, the specific research problems identified above and addressed in

the research reported here are:

• The current difficulty of coupling GISs to environmental simulation models. • The limited accessibility of data, analysis tools, and results. • The current difficulty of interacting with hydrological models. • The need for real-time hydrological hazard assessment and warning.

Page 20: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 10 -

1.4 Research Objectives

Advantages of the Web include openness, user-friendly interfaces, interactivity,

flexibility, and fast communication. It is relatively cheap and therefore gives the general

public access to a variety of both GIS systems and data of varying degrees of

sophistication. This direct access, as a means of allowing wider involvement and

participation in environmental decision making, is an important prerequisite of

watershed management. Interface familiarity, portability across many computer

platforms and capability to display different multimedia and hypermedia formats are all

possible outcomes of improved accessibility.

The objectives of the research are:

• To investigate effective spatio-temporal hydrological analysis tools to

perform on-line watershed simulation and analysis that can support

understanding and decision making.

• To investigate effective ways to allow geographically distributed users and

stakeholders to share GIS data and software for coordinating their activities.

• To investigate the design of effective user-friendly Web-based GIS

interfaces.

• To investigate effective platform-independent Web-based ways to provide

real-time data accessibility and analysis.

In all cases, effective implies cost effectiveness and a requirement for only

inexpensive equipment.

1.5 Methods and Goals

The requirement is to investigate approaches and concepts for a real-time GIS

model fully integrated with the Web and applied to the visualisation, modelling, and

analysis of watershed management for flood forecasting and warning. A range of

innovative technologies are investigated and used to develop a prototype GIS that uses

the most recent technologies. These technologies offer different approaches to

Page 21: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 11 -

performing computer modelling on the Internet. The capabilities of different

technologies, and how they can be applied in hydrology, are reviewed.

The prototype must support the integration of multiple geographical data

structures into a single conceptual framework capable of dealing with different data

models. It must provide a sufficiently low turnover time for field monitoring data and

the real-time integration of this data with the GIS. It must provide rapid post-dictive

validation of environmental simulation models and enhanced prediction through real-

time processing of hydrological fluxes and events. Finally, it must support validation of

the concepts and capabilities investigated, in terms of realism and interactivity available

to the end user.

Specifically, the prototype should include the following components:

• A data transmission system to investigate techniques for real-time data

acquisition by a GIS server from remote data stations.

• A model interface to integrate a test model (for flood hydrology) with the

data transmission system and Web-based GIS technologies.

• A Web-enabled DBMS to establish a suitable hydrological database and data

processing facilities using a range of technologies.

• A transparent and flexible user interface to develop a user-friendly interface

that facilitates rapid and smooth operation.

The client- and server-side technologies, as well as the leading commercial

Web-based GIS products that exist today, are investigated to determine the means

currently available to facilitate data sharing and analyses through the Internet. Two

Web-based applications are developed to demonstrate the capabilities of low-cost Web

GIS.

The first application is a Common Gateway Interface (CGI) approach to the

implementation of a Web-based GIS. This approach uses CGI technology which links a

Page 22: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 12 -

Web-server program to commercial GIS software (Idrisi)7 to perform spatial analysis at

the server computer.

The second application is a Java approach to the implementation of a Web-

based GIS. The Java programming language has been a promising step in the

development of Web-based GISs (Arnold and Gosling, 1996). Java provides tools for

creating graphic, networked, and database applications that are essential for building

watershed management. Java features, like object-orientation, a graphical user interface,

platform neutrality, security, image processing, and multi-threading, are useful for

building such applications (Al-Sabhan et al., 1999). Programs for this application can

be executed at either the server or the client computer. This methodology does not

require any GIS software; therefore all GIS modules must be implemented using Java.

1.6 Thesis Contributions

Eight important conclusions are drawn from the review of current hydrological

modelling:

• Interfacing with non-experts is difficult. It requires tedious and complex

development and typically presents the user with difficult-to-use and limited

visualisation of complex information.

• Modelling requires knowledge of GISs. GISs and simulation systems are

complex, difficult to use and expensive computer programs, which limit the

number of users.

• Platform dependency is an issue. Conventional hydrological modelling systems

are platform dependent, limiting the number of users.

• Modelling requires computer and programming knowledge. Technical expertise

in multiple languages and subsystems is required.

• Customisation of models is very difficult. The customisation required to

implement a GIS can run to many times the cost of the hardware and software.

7 Idrisi software is a raster-based GIS system, a product of Clark Lab., Clark University, and available at http://www.clarklabs.org.

Page 23: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 13 -

With each upgrade, the custom software must be updated, recompiled and

sometimes re-written.

• Limited accessibility for data and analysis must be rectified. Models are still

mostly confined to water and academic institutions, and are not widely used in

the public domain.

• Limited collaboration. There is a growing need for consortium-based projects

encompassing teams of collaborating modellers from different geographical

locations.

• Real-time data acquisition and communication are costly. Both methods and

equipment are costly.

The major original result of the research is the discovery of a method to provide

interaction in real-time with a hydrological model. The prototype developed is the first

GIS to be coupled with real-time dynamic hydrological modelling.

Second, the research provides a valuable comparison between two different Web

techniques, showing their advantages and disadvantages.

1.7 Thesis Organisation

Chapter 2 describes the history of GISs and gives a literature review of

hydrological modelling with respect to user accessibility, real-time application, and user

interfacing.

Chapter 3 contains reviews of Web-based GIS literature and commercial Web-

based GISs, such as Intergraph’s GeoMedia and AutoDesk’s Mapserver, as well as

detailing some of the important academic Web-based GIS solutions.

Chapter 4 describes the evolution and history of the Web and the Internet. This

chapter introduces and discusses Internet methodologies and describes the server-side

Page 24: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 14 -

approach with particular emphasis on client-side processing and benefits. An evaluation

of existing Web-based GISs and technologies using this methodology is presented and

discussed.

Chapter 5 introduces a detailed description of the server-side approaches to GIS

applications and their use in Web-based GISs. Database integration with the Internet

using this methodology is explained in detail. Examples of Web-based GISs are

presented and described.

Chapter 6 provides a detailed description of the client-side approaches (Java)

and their use in Web-based GISs. Examples of Web-based GISs are presented and

described.

Chapter 7 describes, using the Unified Modeling Language, the prototype real-

time GIS applied specifically to flooding. The implementation of the ideas and concepts

is discussed in detail, including a dynamic model equipped with data acquisition and

transmission systems to allow real-time watershed analysis for a flood forecasting

system.

Chapter 8 summarizes and evaluates the research results.

Chapter 9 presents final conclusions and discusses future work.

Page 25: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 15 -

2. Hydrological Modelling Tools

2.1 Overview

This chapter provides a history of GISs, plus reviews of hydrological modelling

and forecasting. The review of modelling programs attempts to evaluate programs’ real-

time capabilities, interfacing functionality, and public accessibility requirements.

The review provides the rationale for the development of an integrated

watershed simulation model with a Web-based interface that benefits users by easing

access to information and by offering technological transparency, platform

independence, visual interaction with data, a multimedia environment, and cost

efficiency. Implementing Web-based GISs would provide the relevant communities

with Web access to environmental databases and help them participate in the

environmental decisions that directly affect them.

Initially, a brief background description is provided of the context of the

research, showing the links between hydrology forecasting, GISs, and the Internet.

2.2 Hydrology, GISs, and the Internet

Floods are major contributors to personal injury and property damage, and can

strike with little warning. Problems related to flooding have greatly increased over

recent decades because of population growth and the subsequent development of

extensive infrastructures in close proximity to rivers. Increased frequency of extreme

rainfall events, a characteristic of a changing climate, can also potentially contribute to

Page 26: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 16 -

this problem. An effective real-time flood modelling and prediction system could help

mitigate the worst effects of flood disasters through the rapid dissemination of

information, including simple animated maps of potential flood water distribution. The

development of such a system would be particularly important outside of urban areas

where conventional hazard management systems do not operate ─ for example, the

large expanses of agricultural land and pasture which occupy flood plains. There are a

number of legal and institutional difficulties associated with the provision of real-time

flood hazard data directly to potential impactees on the ground. However, these issues

fall outside the scope of this thesis, which concentrates entirely on the enabling

technologies rather than their institutional uptake.

While many watershed-modelling software packages are currently available, few

are well integrated within spatial-modelling environments (GISs) and are capable of

non-expert implementation. The models require considerable expertise in hydrological

data and model application and are unsuitable for real-time application because of the

types of data required and the interactive nature of their application. Here we discuss

models that are sufficiently simple and robust to allow automatic application and

interactive interrogation by end users with little hydrological expertise.

The application of watershed models requires the efficient management of large

spatial and temporal datasets, which involves data acquisition, storage, and processing

of modelling inputs, as well as the manipulation, reporting, and display of results. These

management requirements are usually met by integrating watershed simulation models

and GISs, thereby generating the capacity to manage large volumes of data in a

common spatial structure. The integrated systems are then further developed by

combining numerous software packages and mathematical programming systems, and

by incorporating a database management system (DBMS) whenever necessary. An

example of such a system is the EGIS project by Deckers (1993).

Interaction between the user and the system relies on a graphical user interface

(GUI), which may be developed by a third party such as a university, environmental

agency, or commercial vendor. However, GUIs vary in quality and can contain

Page 27: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 17 -

exclusive features not found in other similar programs. Another problem is the use of

temporally dynamic processes, which are considered a major obstacle when coupling a

GIS with environmental modelling (Albercht et al., 1997). Some of these systems are

complex and sophisticated, are designed for general purposes, and cannot be customised

by users for applications in specific circumstances (Bundock and Raper, 1991a).

Several researchers (Maidment, 1993; Wilson, 1996; Bennett, 1997)

acknowledge the lack of sophisticated analytical and hydrological modelling

capabilities in existing systems. The systems also need to be adaptable for specific

application and user requirements. Furthermore, existing systems, including simulation

models, also lack some of the essential analysis tools such as dynamic modelling

needed by watershed applications (Van Deursen, 1995), with the exception of

PCRaster8 (Wesseling et al., 1996b). Hydrological analysis itself is often hampered by

limited data of adequate quality (Goonetilleke and Jenkins, 1999) and a lack of real-time

data, both of which are fundamental to the success of any flood forecasting system. The

goal of flood forecasting is to provide a reliable prevention mechanism to eliminate

disasters and reduce the negative consequences of a hazard. However, this requirement

is not often met by GIS and hydrological models (Karimi and Blais, 1997; Karimi and

Chapman, 1997; Al-Sabhan et al., in press).

The widespread and routine use of conventional GISs in important

environmental applications has been hampered by numerous key obstacles (Albercht et

al., 1997) such as user interfacing, data integration, presentation of dynamic processes

in GISs, and the cartographic modelling language (Map Algebra9). GISs are built to

cover a wide range of applications and are designed to integrate a variety of

environmental data, allowing them to work together in a readily accessible manner. As a

result, even basic GIS functionality for modelling requires relatively complex software

and hardware, resulting in substantial operating costs. Another factor to be considered is

the integration of simulation models, also important tools in environmental applications

of computer technology, which are capable of significantly advancing the potential of 8 PCRaster was developed at the Department of Physical Geography at Utrecht University, the Netherlands (http://www.geog.uu.nl/pcraster/). 9 Map Algebra is a language developed by Tomlin for the manipulation of map data. It includes a large number of functions for performing common operations on a single map layer or on multiple map layers.

Page 28: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 18 -

GISs for environmental simulation and understanding. However, this complex

integration requires significant programming effort and data management (Burrough,

1997).

Many model reviews examine the mathematical implementation of models and

their applications (Clarke, 1973; Beven et al., 1984). Unfortunately, these reviews often

do not acknowledge the seemingly trivial problems that are of significant concern to

users and stakeholders. As noted by Haklay (2001), “As any research in a library

catalogue or scientific journal index will reveal, a very limited amount of literature deals

with EIS10 directly. Most of it focuses on implementation issues and extensive body of

research on environmental modeling and analysis techniques.” One such problem lies in

the difficulties arising from interfacing the models and the data. Another obstacle is the

accessibility of the simulation model to interested groups such as the general public.

2.3 History of GISs

This section presents a brief outline of some important milestones in the

development of GISs. The evolution of GISs has taken a long period of time (Martin,

1996), yet a variety of information indicates that the field has expanded rapidly in recent

years (Maguire, 1991). Coppock and Rhind (1991) show that computer-based GIS have

been used since at least the late 1960s and their manual predecessors were in use

perhaps 100 years earlier. There are a number of important areas of geographic data

handling by computer, namely computer assisted cartography (CAC), remote sensing,

and image processing. Each has made considerable contributions to the field. It is

beyond the scope of this section to give a history of the overlap of these fields, or even

to provide an introduction to these broad subjects.

Several stages of GIS evolution can be identified (Coppock and Rhind, 1991):

• The pioneering age, from the early 1960s to about 1975.

• The second phase, approximately from 1973 until the early 1980s. 10 Environmental Information Systems.

Page 29: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 19 -

• The third phase, from about 1982 until the late 1990s.

• The last and current phase.

2.3.1 The Pioneering Age

Rhind (1977) introduced the term “computer-assisted cartography” (CAC) in the

late 1950s, and thus secured the roots of GISs. CAC covers all aspects of map making

that rely on computer assistance. These systems have greatly impacted the development

of vector GISs, in which precise spatial coordinate storage and high-resolution graphics

have played an important role (Martin, 1996).

By the early 1960s, the increasing availability of computers in universities was

undoubtedly influential in the development of the quantitative revolution in academic

geography (Hudson, 1979). Computers, however, were very expensive, had no

graphical facilities, and usually operated in batch mode. In spite of that, computer-

assisted map production became widespread (Coppock and Rhind, 1991). For example,

the Canadian Hydrographic Survey had automated display facilities in operation, and

Surveys and Mapping had applied similar facilities to the 1:50,000 series in Canada.

Most of the significant early developments and applications of GISs and related

technologies took place in North America (Tomlinson, 1985). In 1965, Harvard

University established the laboratory for Computer Graphics and spatial analysis.

Subsequently, the team of programmers at this laboratory created a mapping package,

SYMAP11 (SYnagraphic MAPping system), which used the line printer as a mapping

device and was capable of producing isoline12, choropleth13, and proximal maps. Soon

after, the Harvard Computer Laboratory introduced another program, CALFORM14,

which produced higher quality choropleth maps by pen plotter.

11 A general-purpose line-printer-mapping program. 12 Isoline is a line that connects points with an equal value, equal height about sea level, equal amount of precipitation, or an equal population density. 13 A choropleth map is one in which which the colour or shading of areas varies according to the density, concentration, or magnitude of a geographic variable (e.g., precipitation, or elevation). 14 A conformal mapping program for use with a pen plotter.

Page 30: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 20 -

2.4 The Second Phase

One of the early large systems was the Canada Geographic Information System

(CGIS), led by Roger Tomlinson, It was designed in the 1960s to analyze the

information gathered by the Canada Land Inventory (CLI) (Tomlinson et al., 1976).

CGIS, being one of the earliest pure GISs, pioneered many aspects of GISs (Coppock

and Rhind, 1991). Its development provided many conceptual and technical

contributions. CGIS became fully operational in 1970 and is one of the large-scale GISs

still operating today.

Another of the early major systems was the Image Based Information System

(IBIS), developed at the California Institute of Technology in the mid-1970s (Bryant

and Zobrist, 1982; Marble and Peuquet, 1983). Early on, IBIS was used for processing

images obtained from the LANDSAT satellite, and the integration of land-use data from

RS images with administrative boundaries captured with a raster scanner. Many

subsequent systems have been developed along the broad lines of these two major

examples, often trying to integrate data for land management over large-scale areas

(Martin, 1996).

Outside North America, significant developments occurred at the Experimental

Cartography Unit in the United Kingdom, whose history has been documented by Rhind

(1998). A variety of other historical developments has influenced GIS in the U.K. For

example, the mapping system developed by the research staff in the Department of

Environment (DoE), dates back to 1969 (Coppock and Rhind, 1991). Various

international organizations have also emerged on European and global scales such as the

European GIS foundation (EGIS) (Harts et al., 1990).

Page 31: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 21 -

2.4.1 The Third Phase

During the third phase of GIS development, work primarily focused on the use

of networked workstations running variants of the UNIX operating system, including

Sun SPARCstations, Silicon Graphics Indys, and Digital DECstations.

The Environmental Systems Research Institute (ESRI) was founded in 1969 by

J. Dangermond. It began as a non-profit organization engaged in the field of

environment consulting (Coppock and Rhind, 1991). ESRI developed the cell-based

package GRID as its main application until the launch of ARC/INFO in 1982. Of all

GIS vendors, ESRI was probably the most successful in the 1980s as much of its

success can be attributed to ARC/INFO. Another program was developed at Yale

School of Forestry and Environmental Studies by Dana Tomlin. The program, called

MAP, was a raster-based GIS that was eventually installed at several thousand locations

around the world.

By the late 1980s, GISs became widely accepted in North America (Coppock

and Rhind, 1991). This can be observed in the increases in the number of systems,

courses, conferences, projects, and facilities in different places in the United States and

Canada. In 1986, MapInfo Corporation, the creator of the well-known GIS package,

was founded. The Idrisi Project, started by Ronald Eastman of Massachusetts’ Clark

University in 1987, resulted in a raster analytical program, which combined general-

purpose raster GIS abilities with a range of functions for image interpretation and

manipulation.

In the U.S., the National Center for Geographic Information and Analysis

(NCGIA) was established in December 1988 as a cooperative venture between the

Universities of California, Maine, and New York (Morrison, 1991) to focus on GIS

research (Martin, 1996). Much of NCGIA’s research concerns technical issues such as

GIS theory, spatial analysis, spatial statistics, and database structures, which are

Page 32: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 22 -

relevant to all application areas, according to the published literature from the initiative

(NCGIA, 1992).

In the U.K., the Chorley Report (Department of the Environment, 1987) advised

the government that there should be some central body for geographic information. The

report stresses the benefits to be obtained from digital data integration that involves

more work in data standards and the need for education in the use and application of

GIS (Rhind, 1988). Following this, various organizations involved in the field

established the Association for Geographic Information (AGI) as an effort to meet these

needs. AGI is an active body in organizing major conferences and a lobbying group

representing the interest of geographic data and software users and suppliers (Martin,

1996).

This period also saw the emergence of the GIS community. In 1987, the

International Journal of Geographic Information Systems was founded, the first

academic journal concerned solely with GIS developments (Coppock and Anderson,

1987), and in the early 1990s, a number of existing academic journals made shifts in

emphasis to explicitly incorporate aspects of GIS. Commercially oriented journals such

as Geo World, GIS Europe, and Mapping Awareness have seen considerable growth,

filling an important role in communication research and developments to GIS users. By

the end of the 1980s, more than 2,000 GIS software systems for personal computers

were sold annually (Coppock and Rhind, 1991). During this period, enormous advances

were made in computer hardware and software capabilities, which have facilitated far

more sophisticated geographic databases and manipulation possibilities.

2.4.2 The Fourth Phase

In the 1990s there were major events in the development of GISs. One of the

most important was the emergence of powerful PC systems, networks of which

provided desktop GISs for a large number of users (Maguire and Dangermond, 1994).

Page 33: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 23 -

Undoubtedly, Esri has been the world leader in GIS over recent years, but other vendors

offer generally comparable systems, including Intergraph and Genasys II.

New international organizations and conferences have emerged for which GIS is

the primary focus, such as the European Conferences on Geographic Information

Systems (EGIS). In 1993, the GISRUK conference series was founded as the U.K.'s

national GIS research conference, aimed primarily at the academic community. These

conferences attract delegates from all parts of the U.K., together with the European

Union and North America, and from disciplines including Geography, Computer

Science, Planning, Archaeology, Geology, Geomatics, and Engineering.

In 1994, the Open GIS Consortium (OGC) was established to manage consensus

processes that result in interoperability among diverse geoprocessing systems. In OGC,

geoprocessing technology users work with GIS software vendors, earth imaging

vendors, database software vendors, integrators, computer vendors, and other

technology providers to reach agreements on the technical details of open interfaces that

allow these systems to work together (OGC, 1994).

The WWW Consortium was formed in 1994 to develop interoperable

technologies ─ specifications, guidelines, software, and tools ─ to lead the Web to its

full potential as a forum for information, commerce, communication, and collective

understanding (WWW, 1994).

In 1994, Mosaic Communications Corporation was renamed Netscape

Communications and introduced the first public beta of its browser, Mosaic Netscape. It

was founded by Jim Clark, the founder of Silicon Graphics, and Marc Andreessen, the

creator of NCSA Mosaic. Netscape Communications Corporation is the maker of the

most popular Web browser in use today, Netscape.

In 1990, Sun Microsystems began a project called Green to develop software for

use in consumer electronics. James Gosling began writing software with C++ to embed

Page 34: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 24 -

into such things as toasters, VCRs, and Personal Digital Assistants (PDAs). The

embedded software is used to make appliances more intelligent, typically by adding

digital displays or by using artificial intelligence to better control the mechanisms.

However, it soon became apparent that C++ was the wrong tool for this task. Gosling’s

solution was to develop a new language called Oak. In 1995, Oak was renamed Java

and introduced at SunWorld 95. Before the first release of the Java compiler in January

of 1996, Java was already considered an industry standard for Internet development and

has since remained popular (Vanhelsuwe et al., 1996).

After the official release of Java and Netscape, many commercial GIS

companies such as Esri and Intergraph began implementing Web-based GISs. In 1997,

Esri launched its first Web-based application, MapObjects, while Intergraph also

released another Web-based application called GeoMedia.

Enormous advances in computer hardware and software have facilitated far

more sophisticated geographic database and manipulation possibilities, opening up the

applied fields that are so widely used today.

Table 2.1 summarizes the development of GISs.

Date Event

1959

Waldo Tobler outlines a simple model called MIMO (map in-map out) for

applying a computer to cartography. The principles of the MIMO system

were the origins for geocoding, data capture, data analysis and display.

The MIMO system contained all of the standard elements found in GIS

software.

1963 Development of Canada Geographic Information (CGIS) commences, led

by Roger Tomlinson. The system was needed to analyse Canada's national

land inventory and pioneered many aspects of GISs.

The Urban and Regional Information Systems Association (URISA) was

formed. URISA is non-profit association of professionals using

Page 35: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 25 -

information technology to solve problems in planning, public works, the

environment, emergency services, and utilities throughout state and local

governments. URISA is also the premier organization for the use and

integration of spatial-information technology to improve the quality of life

in urban and regional environments.

1964 The Harvard Lab for Computer Graphics was established by Howard

Fisher. The Lab serves as an important research centre, creating pioneering

software for spatial-data handling. Many of the key individuals in the GIS

industry studied there. These include David Sinton (Intergraph), Jack

Dangermond (ESRI), Lawrie Jordan and Bruce Rado (ERDAS), Hans

Koeppel, and Nicos Polydorides.

1965 SYMAP (Synagraphic Mapping System), a pioneering automated

computer-mapping application was developed by Howard Fisher at the

Northwestern Technology Institute and completed in the Harvard Lab.

1967 The U.S. Bureau of Census DIME (Dual Independent Map Encoding) data

format was christened by George Farnsworth.

The Experimental Cartography Unit (ECU) was established at the Royal

College of Art in London by David P. Bickmore.

AUTOMAP, the Automatic Mapping System developed by the U.S.

Central Intelligence Agency (CIA) became operational in 1967. It could

produce castlines and any form of line or point data. It was a map

compilation program at the global scale.

1968 The Transportation Information System, developed by Robert Tweedie of

the N.Y, State Department of Transportation at Albany, was based on grid

manipulation. It incorporated, among other things, geocoded land use and

travel characteristics. The output of this system was line-printer dot maps.

1969 The Environmental Systems Research Institute (ESRI) was founded by

Jack and Laura Dangermond.

Intergraph Corporation was founded by Jim Meadlock (originally called

M&S Computing, Inc.).

Page 36: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 26 -

1970 The Canada Geographic Information System (CGIS) becomes fully

operational.

MIADS/2, the Map Information and Display System, was developed by

E.L. Amidon of the U.S. Department of Agriculture at Berkeley. It serves

as a grid manipulation system employing line-printer output with

tabulation capabilities for single or overlaid maps.

GEOMAP, the Geographic Mapping Program based on a grid

manipulation system similar to SYMAP, was producing shaded maps

(Choropleth or isorismic ) on a line printer. The information system was

developed for Switzerland by Dieter Steiner.

The first symposium on Geographical Information Systems was held in

Ottawa, Canada by Roger Tomlinson and Duane Marble.

1972 The first Landsat satellite was launched (originally known as ERTS-1).

IBM starts the development of its Geographic Information System (GFIS).

The General Information System for Planning (GISP) was developed by

the U.K. Department of the Environment.

1973 The USGS begins development of the Geographical Information Retrieval

and Analysis System (GIRAS) to manage and analyse large land resources

databases.

1978 ERDAS was founded by Lawrie Jordan and Bruce Rado.

The Global Positioning System (GPS) project moves into Phase II with the

launch of the first four NAVSTAR satellites.

1979 The ODYSSEY GIS, developed at the Harvard Lab, was the first vector

GIS.

1980 During his Doctoral studies at Yale School of Forestry and Environmental

Studies, Dana Tomlin develops the Map Analysis Package (MAP). MAP is

a raster-based GIS that was eventually installed at several thousand

locations around the world.

1981 ESRI launches ARC/INFO.

The Global Positioning System (GPS) project becomes operational with

the contract for qualification satellites (GPS12).

Page 37: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 27 -

1982 The SPOT Image Company was founded as the first commercial company

established to distribute geographic information derived from Earth

Observation Satellites on a worldwide basis.

1984 The first International Spatial Data Handling Symposia was held.

1985 Marble, Calkins and Peuquet publish "Basic Readings in Geographic

Information Systems".

1986 MapInfo was founded.

Peter Borrough publishes Principles of Geographic Information Systems

for Land Resources Assessment.

The first SPOT satellite was launched.

1987 The International Journal of Geographical Information Systems begins.

Idrisi Project was started by Ron Eastman at Clark University.

1988 U.K.'s Regional Research Laboratory (RRL) initiative began.

The First GIS/LIS Conference was held.

The first public release of the U.S. Bureau of Census TIGER

(Topologically Integrated Geographic Encoding and Referencing) digital

data product occurred.

Smallworld was founded.

The National Centre for Geographic Information and Analysis NCGIA

was established in the U.S.

1989 The Association of Geographic Information (AGI) was formed in the U.K.

Stan Aronoff publishes Geographic Information Systems: a Management

Perspective.

Intergraph launches MGE.

1991 Maguire, Goodchild, and Rhind publish Geographical Information

Systems: Principles and Applications (The GIS "Big Book").

1993 The GISRUK conference series begins.

1995 MapInfo Professional is launched for Windows.

Page 38: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 28 -

1996 The Centre for Advanced Spatial Analysis was established in UCL.

1999 Longley, Goodchild, Maguire, and Rhind publish Geographical

Information Systems: Principles, Techniques, Applications and

Management (The second edition of the GIS "Big Book").

Table 2.1 The Development of GISs

Source: Dodge et al., 1999

2.5 The Character of GISs

The important difference between the definition of a GIS and the definitions of

other information systems used for cartography ─ computer-aided design (CAD)

systems, remote sensing systems, and DBMSs ─ is the ability of a GIS to manipulate

and analyse spatial information. The manipulation and analysis of geographic data can

be used to mimic certain aspects of the real world. It can be used to answer questions

about what exists now or what existed at some point in the past. Most importantly, it

can be used to predict what will happen or has happened in another location or at

another point in time. The ability to analyse and then to model what may occur provides

an opportunity to consider alternatives leading to more informed choices and decisions.

The types of questions to be answered can be categorized as:

Location: What is at…?

The simplest of these questions seeks to find out what exists at a particular

location. For example, a user might wish to find a place name, latitude, longitude, or

elevation data.

Condition: Where is it?

This query requires answers that meet certain conditions or are the intersection

of multiple conditions. For example, a user may wish to find the value of an area’s

rainfall that is greater than a specific value and between two different periods.

Page 39: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 29 -

Trends: What has changed since…?

This question seeks to find the difference within an area over a period of time.

For example, MacEachren and Dibiase (1991) depicted the spread of HIV through the

use of animated mapping techniques. A series of maps from the same area but different

periods of time were ordered chronologically. When displayed in sequence as a

computer animation the movement of HIV virus across the study area was quite evident

and provided a more complete conceptual model of this temporal geographic data.

Patterns: What spatial patterns exist?

This type of question ascertains whether or not events exhibit a systematic

pattern ─ some form of regularity or clustering that can be used to estimate the intensity

of events over a study region for which data are not available. Such patterns are relevant

to the study of disease occurrences, commissions of types of crimes, distribution of

precipitation, and many similar situations.

Modelling: What if…?

This question is posed to determine what happens, for example, if a toxic

substance seeps into the local groundwater supply or if the sea level rises as a result of

global atmospheric warming. The model may, for example, estimate future sea levels

and determine which areas would be flooded.

2.6 Hydrological Modelling

For our purposes, hydrological modelling can be regarded as a subset of

analysing and manipulating geographic data. Worboys (1995) suggests that modelling is

one of the most important stages in the establishment of an information system. The

hydrological and related dynamic processes of rivers and rainfall are simulated using

mathematical models that estimate the present state of a river and forecast future levels

and flows. Models range from simple empirical equations to sets of complex differential

equations derived from fundamental physics. Models have been developed to simulate

Page 40: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 30 -

groundwater movement, watershed hydrological processes, water-quality dynamics,

atmospheric processes, the behaviour of rivers and reservoirs, or combinations of sub-

component models. Models of operational control are used for flood forecasting and

water supply management. Short-term predictions (nowcasts), used as the basis for

decision making or hazard assessment and disaster prevention, can be made using real-

time data inputs.

A modelling system is likely to include two main components: a modelling tool

that performs the numerical analyses and an interface that allows the user to interact

with the modelling tool. The interface allows the user to input parameters, execute

functions, and display the results of data analysis. Simulation models can be used to

assess the impact of an increase in rainfall and river discharge as a result of climate

changes (Kwadijk, 1993) or model uncertainty in natural resources (Davis and Keller,

1997) and provide answers or insights for decision makers.

The advantages of using models, listed below, are adapted from DeCoursey

(1991):

• Hypotheses expressed in mathematical terms can provide a quantified

description and a clearer understanding of chemical, biological, and

hydrological processes.

• Complete mathematical models can provide a conceptual framework that

pinpoints areas where knowledge is lacking. The identification of such areas

could stimulate new ideas and experimental approaches.

• Mathematical models can provide a recipe that makes knowledge available

in an easy-to-use format.

• The economic benefits of methods suggested by research can often be

investigated and highlighted by a model, thus stimulating the adoption of

improved methods.

• Modelling can lead to less ad hoc experimentation since models can make it

easier to design more focused experiments.

Page 41: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 31 -

• In a system with several components, a model provides a way to bring

together knowledge about the parts, thereby giving a coherent view of the

behaviour of the whole system.

• Modelling can help provide strategic and tactical support to a research

program, motivating scientists and encouraging collaboration.

• A model may provide a powerful means of summarizing and integrating data

as well as a method for interpolation and cautious extrapolation.

• A model can make more complete use of data, thus reducing costs of

obtaining precise data.

• The predictive power of a successful model may be used in many ways when

playing “what if” in the process of assigning priorities in research and

development, management, and planning.

• Models validated by data from experimental watersheds provide a

mechanism to transfer data from study areas where fewer data may be

available.

2.7 Spatial Flood-forecasting Tools

A hydrological model is a mathematical representation of water flow and its

constituents on some parts of the land surface or subsurface environment (Maidment,

1993). Environmental modelling of the kind discussed here provides numerous benefits:

(a) it explains the physical world; (b) it provides decision support to resources and

hazard management (Grayson et al., 1992; Moore et al., 1993); and (c) it guides

experimentation and research for presenting complex ideas in an accessible manner

(Burrough, 1997). Hydrological models can be considered as stand-alone programs with

data loaded via the import and export facilities within the model itself without the help

of any GIS package, or as coupled to a GIS system through an interface solely designed

for that purpose.

Page 42: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 32 -

2.7.1 Stand-alone Models

A stand-alone program depends on a particular computing platform or hardware

configuration such as the Windows-based WMS (WMS reference, 1999) and GIBSI15

(Mailhot et al., 1997), the UNIX-based workstations MMS (MMS manual, 1998), or the

DOS and UNIX-based PCRaster16 (Wesseling et al., 1996b). They all run on an

individual computer, or on several computers on a local area network that is not

necessarily connected to a global network, and are then made accessible to the public or

to managers in geographically separate locations.

One of the best known and widely used models is HEC-1, from the Hydrological

Engineering Center of the U.S. Army Corps of Engineers, which provides a variety of

options for simulating precipitation-runoff processes. A new interactive version, which

replaces the command-line-oriented program HEC-1 (flood hydrograph model), is

HEC-HMS (Hydrological Modelling System). This stand-alone rainfall-runoff

modelling program has been implemented on both UNIX (Sun Solaris) and Windows

NT/95/98. It has a GUI, integrated hydrological analysis components, data storage and

management capabilities, and graphics and reporting facilities. Furthermore, a

significant amount of data must be gathered to perform hydrological analysis using

HEC-1 (Nelson et al., 1994). HMS17 is designed to be independent of any commercial

GIS, so it has no explicit ties to any of them.

Another program that is well known and can be used stand-alone is the

Watershed Modelling System (WMS) (Nelson et al., 1995). It is a graphically based,

comprehensive hydrological modelling environment that addresses the requirements of

rainfall-runoff computer simulations (DeBarry et al., 1999). If it is used as a stand-alone

application, data can be imported or exported to or from a GIS package through a

15A software system that allows water resource management decision makers to explore different options for modelling watersheds. Developed at INRS-Eau, Quebec, Canada. 16A raster-based GIS from the University of Utrecht, The Netherlands (http://www.geog.uu.nl/pcraster/). 17The HEC-HMS (Hydrologic Engineering Center-Hydrologic Modeling System) program supercedes HEC-1 and provides a similar variety of options for simulating precipitation-runoff processes.

Page 43: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 33 -

number of popular file formats. For example, a DEM can be imported from ARC/INFO,

or GRASS and then used in WMS for further analysis.

The last example is the TOPMODEL18, which is classified as a distributed to

semi-distributed model, and a number of papers and applications of this model have

been presented (Beven, 1997; Obled et al., 1994). It is not intended to be a modelling

package, but rather a set of conceptual tools that can simulate the hydrological

behaviour of a watershed (Beven et al., 1995). Because it has been adapted and applied

to suit many modellers’ needs, a standard version has not been developed. Data

requirements for TOPMODEL are dependent upon the version and the application used.

The primary drawbacks of using this model are the lack of a standard version and the

likelihood of a long and demanding period of data preparation for each application

(TOPMODEL, 2001; Romanowicz et al., 1993).

2.7.2 GIS-based Flood-forecasting Tools

An alternative to using models stand-alone, is to couple the model with a GIS

package. The approaches for integration of environmental models with GISs have been

extensively discussed and analysed by many researchers (Goodchild et al., 1993;

Burrough, 1996; Maidment, 1996; Peuquet et al., 1993; Karimi and Houston, 1997).

Similarly, the integration of GISs and hydrological models is well documented in the

literature (DeVantier and Feldman, 1993; Maidment, 1993; Romanowicz et al., 1993;

Correia et al., 1997; Correia et al., 1998; Sui and Maggio, 1999); thus it is not our

intention to discuss these in great detail. However, we will briefly discuss the two

methods available for coupling GISs and hydrological models: loosely coupled and

tightly coupled (Stuart and Stocks, 1993; Batty and Xie, 1994).

In loose coupling, a GIS is linked to an external model where operations are

performed in a language such as C or Fortran. To use the external model from the GIS,

a call to the model is placed to calculate certain parameter values and then store the 18 A rainfall-runoff model developed at the University of Lancaster (http://www.es.lancs.ac.uk/hfdg/topmodel.html)

Page 44: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 34 -

values back in the GIS database. This method usually involves a standard GIS package

(e.g., Arc/Info) and a hydrological model such as HEC-1, HEC-219 (Djokic et al., 1994)

or a statistical package (e.g., SAS20 or SPSS21). It is stressed by Frust et al. (1993),

Albrecht et al. (1997), and Burrough (1997) that these couplings provide access to

incompatible analytical tools and “the differences in the data models and in the way

relationships between variables are handled in the GIS and the hydrological model”

(Maidment, 1993) soon becomes apparent. This mismatch also affects the quality, cost,

and benefits of the modelling results (Burrough, 1997) because modellers and GIS

engineers have very different conceptual views of the real world and approaches to their

disciplines. This type of integration requires a number of programs that exchange data

from one application to another and possibly a DBMS. A disadvantage of this approach

is that this integration strategy fails to provide a consistent user interface (Bennett,

1997; Correia et al., 1998) and the data exchange and conversion between the GIS and

the hydrological model can be very cumbersome (Karimi and Houston, 1997). Loose

coupling may also involve considerable work in changing data formats and data

structure, particularly if the model has been obtained from another source (Burrough,

1997).

In tight coupling, the model is developed entirely within a GIS environment

through the use of a macro language such as AML22 (ESRI Arc Macro Language).

However, this type of programming is often not able to implement sophisticated

applications and does not support the same capabilities of procedural programming

languages. Unlike loose coupling, tight coupling does not require file conversion or

editing; however, it is a complex process and requires a great deal of programming and

data management (Burrough, 1997) plus a customised menu-driven user interface for

display (Karimi and Houston, 1997). Thus, tightly coupled models require the

construction of an appropriate interface that can interact with the data structures of the

GIS system, and there are many fewer GIS macro-enabled programmers than there are

19 Water Surface Profiles, was released by the Hydrologic Engineering Centre (HEC), US Army Corps of Engineers in 1966. 20 SAS is an advanced statistical software system for data analysis, statistical computation, and report writing (http://www.sas.com). 21 SPSS (Statistical Package for the Social Sciences) is one of the most widely available and powerful statistical software packages (http://www.spss.com) 22 Arc Macro Language is a procedural scripting language used with ArcInfo.

Page 45: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 35 -

standard computer programmers. Karimi and Houston (1997) stress that both the

loosely and tightly coupled methods have inherent limitations for modelling.

While GISs provide powerful tools for spatial analysis, their capabilities for

spatio-temporal analysis are limited (Worboys, 1995). Traditional simulation models are

effective in complex and dynamic situations, but they often lack the intuitive

visualisation and spatial analysis functions that a GIS offers. The increasing and

ongoing literature on the integration of GISs with hydrological models confirms the

recognition of these reciprocal benefits (Maidment, 1993; Moore, 1996). However, the

limitations of current GIS applications for environmental modelling become apparent

because of incompatibility between the types of models and GISs and the type of data

that are associated with them, as discussed by Burrough (1996) and Goodchild et al.

(1993). When integrating the WMS with a GIS package through the use of scripts (e.g.,

AML and Avenue23), developers are restricted to the architecture of the GIS and users,

including hydrologists and engineers, must learn the GIS operating environment in

order to create hydrological models. Thus GIS specialists often perform the job of

hydrological engineers (DeBarry et al., 1999). Also, when integrating models like

MODFLOW24 (McDonald and Harbaugh, 1988) and the Modular Modelling System

(MMS) with a GIS, the outcome is the development of two different processes

(DeBarry et al., 1999; Karimi and Houston, 1997): pre-processors and post-processors,

which are developed in order to facilitate software integration. The pre-processors are

tools that prepare, analyse, and input spatial and time-series data for use in a model. The

post-processors are tools that perform the analyses of the model results such as used by

De Roo et al. (1989), De Roo (1996), and Kite et al. (1996). These include a variety of

statistical and graphical tools, which can be used to assist in decision making, and a

user-developed interface to display and analyse results. However, these processors are

also designed to create the often complex and cumbersome input file requirements and

to format model output (Karimi and Houston, 1997), including the preparation of spatial

and time-series analysis, for display in a particular graphic environment. Finally, many

hydrological processes are time-dependent, and hydrological models generally require

23 Avenue is ArcView's object-oriented application development environment enabling users to customize the ArcView interface and to create custom applications. 24 A Three-Dimensional Finite-Difference Ground-water Flow Model , developed by the U.S. Geological Survey.

Page 46: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 36 -

time-series input data and generate time-series output. Current GISs are not equipped to

store or manipulate time-series data; therefore, the ability to store, retrieve, and perform

operations on time-series data is crucial for implementing serious hydrological

modelling within a GIS (Maidment, 1993).

One of the first attempts to couple a GIS with hydrological models was by the

Hydrological Engineering Center (HEC), initiated in 1975. The outcome of this

integration was the HEC-SAM model in which the GIS served simply as a database to

feed the hydrological model (Males and Grayman, 1992).

2.8 Real-time Requirements of Flood-forecasting Tools

Real-time data is data which is available for analysis close to the time at which it

was measured. It refers to spatial and non-spatial data that becomes available to the real-

time GIS either at fixed time intervals or after the completion of certain events, such as

the arrival of data at a desired destination. Current technologies for data modelling, data

management, and software design and engineering do not allow current GIS systems to

meet the requirements of real-time applications effectively (Karimi and Chapman,

1997). The key requirement of real-time flood forecasting, however, is based on

continuous remotely sensed measurements of rainfall to improve the accuracy of model

forecasts. While there have been significant advances in the accuracy of quantitative

measurements, the forecasting of rainfall using weather radar and the development of

more prolific and sophisticated rain-gauge networks, extensive research efforts are still

required to develop systems which enable real-time data to be obtained with sufficient

timeliness for rapid nowcasts to be produced. Karimi and Blais (1997) provide a

comparison between current and future GIS systems, arguing that interfacing GISs with

external systems for real-time processing is currently very difficult. GISs and

hydrological models, however, lack a direct connection with external sensors and

devices, resulting in limited access to real-time data. These deficiencies can lead to

hard-coding of data directly into the system, making updating of existing data

particularly difficult. Karimi and Chapman (1997) suggest that real-time GISs must

contain algorithms that allow fast responses within time constraints for real-time

Page 47: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 37 -

applications. Current GIS algorithms do not take these constraints into consideration;

they therefore cannot be used for real-time applications.

Despite advances in computing power and programming languages, Fortran

remains the language of modellers (TOPMODEL, HSPF25, HEC). Fortran and other

traditional programming technologies are not suitable for the representation of dynamic

geographical systems because (adapted from Unland and Schlageter, 1989; Herring

1992; Bennett, 1997): (1) Early or static binding26 inhibits the representation of

processes that change through time (i.e., where one process is replaced by another

different process); (2) Data representation and management mechanisms are not

provided for the development of complex objects; (3) User-defined spatial relations are

difficult to capture (e.g., queries such as ‘retrieve all upstream channel segments’ are

not well supported); and (4) Models are difficult to extend or modify. Object-oriented

programming techniques provide one means to overcome these limitations. Raper and

Livingstone (1995) demonstrate the use of object-oriented concepts in the representation

of spatial data. Many of the hydrological models involving simulations and optimisation

require significant computer resources and run for several hours (Walker, 1991), which

is unacceptable in real-time applications.

Currently, there are three basic systems for providing precipitation

measurements that can be used for real-time flood forecasting. The first is conventional

telemetry-based rainfall gauges. The most common and widely used are typically

connected to a base station by telephone lines, VHF/UHF radio, metro-burst telemetry

or satellite (Latkovich and Leavesley, 1993). The second is weather radar, which

provides data on spatial patterns of rainfall as opposed to point measurements indicated

by rain gauges. Meteorological radar is not used as often because it is expensive and

requires sophisticated technical and engineering support. A review of radar-based

precipitation measurement for hydrological application can be found in James et al.

(1993) and Mimikou and Baltas (1996). The third measurement system is satellite

monitoring, which estimates rainfall by observing cloud-radiative temperature. Real-

time estimates are possible and, once the satellite is in orbit, the process is relatively

25 Hydrological Simulation Program—Fortran, developed by the Research Lab of EPA in the late 1970's. 26 Static (or early) binding is the concept of resolving a function/method call at compile time as opposed to dynamic (or late) binding where a function/method call is resolved at run time.

Page 48: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 38 -

inexpensive. This method provides large area coverage, but also requires calibration

with ground-measured data.

Most data acquisition systems are interfaced to a data transmission system such

as telemetry or wireless radio using standard interface connections such as RS-232

ports. Data can be transmitted from a remote site to a central base station through

several available communication systems. The choice of one communication system

over another depends on a variety of matters: the size of the watershed, the time of data

transmission, and the costs. The existing types of real-time flood forecasting systems,

which generate the most reliable forecasts, are sophisticated, use very complex data

input and are expensive (Feldman, 1994). For a GIS to be effectively applied to

management decision making requires that reliable and up-to-date data sources be

utilised in building and maintaining the system. Although flood forecasting systems

exist in many countries and are deployed in many projects, real-time flood forecasting

systems are still under significant research and development (Todini, 1998).

2.9 Public Access to Hydrological Information

Despite the progress in flood-forecasting systems, some researchers in the U.K.

(Parker et al., 1995) have been critical of the Environment Agency, and the U.K. Flood

Warning System, for not giving more attention to flood warning and dissemination

processes. More work is needed on increasing community involvement in establishing

local flood-warning schemes (Parke, et al., 1995; Haggett, 1998).

Data analysis is not only useful for professionals and decision makers but also

for a public that demands openness. This is reflected in legislation such as the Council

of European Communities Directive (1990), and the U.S. National Environment Policy

Act-NEPA (1969). The latter includes the following statement:

All agencies of federal government shall make available to States, counties,

municipalities, institutions, and individuals, advice and information useful in

Page 49: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 39 -

restoring, maintaining, and enhancing the quality of the environment (Haklay, in

press).

The principle of access to environmental information is directly connected to the

goal of improved public awareness of environmental issues and improved participation

in environmental decision making. Conventions that promulgate public access to

environmental information have been developed and signed, including the Freedom of

Access to Information on the Environment (Hallo, 1997) and the Arahus convention

(UN/ECE, 1998). The Arahus convention states:

Improved access to information and public participation in decision-making

enhance the quality and implementation of decisions, contribute to public

awareness of environmental issues, give the public opportunity to express

its concerns, and enable public authorities to take due account of such concerns.

The U.K. government also reacted to the public debate on environmental

awareness during the late 1960s (Haklay, in press). In response to public pressures,

U.K. policymakers created the Royal Commission on Environmental Pollution (1969)

and the Department of the Environment (1970) (McCormick, 1995).

As discussed in Chapter 1, the output of models is more significant to users than

the access to raw or unprocessed data. Researchers and professionals, therefore, have an

additional obligation, on top of scientific and academic ones, to provide results in a

form that is adequate for use by lay users (Haklay, in press).

Kingston (1998) examined the potential of the Web as a means of increasing

public participation in environmental decision making. He discussed traditional

methods of public participation and argued that new Internet-based technologies have

the potential to widen participation in the planning system. Recently, several GISs have

appeared on the Web (Carver et al., 1997; Al-Kodmany, 1998; Carver, 1999; Kingston

Page 50: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 40 -

et al., 2000). These systems vary in complexity and functionality, but they provide the

general public, or those with a connection to the Web, access to a variety of both GIS

data and GIS systems.

Data accessibility and participation need to be considered in the development of

successful flood-forecasting systems. More consideration needs to be paid to providing

a better simulation and warning system, not only for flood forecasting, but for all the

various environmental management systems.

2.10 The U.K. Flood Warning System

Before 1996, the predecessors to the Environmental Agency (EA) had the

responsibility of monitoring river levels telemetrically. At that time, the responsibility

of warning the public lay with the local council and police, although the EA’s

predecessors did provide informal advice as to when evacuation may be necessary. A

1996 parliamentary decision gave responsibility for both flood monitoring and warning

to the EA (Environment Agency, 1999).

Today, the EA warns the public through an Automatic Voice Messaging (AVM)

system. Using a database that contains contact details of members of the public, the

AVM system sends fax, pager or telephone messages to people residing within the

concerned area. Once the decision is made by the EA to warn the public, a pre-recorded

message is broadcast via the telephone network. Members of the public respond to the

pre-recorded warning by pressing a button on their telephone, thus allowing the

computer to register successful contact. Another message is sent at the same time to the

EA’s Professional Partners, including the emergency services and communications

media (Environment Agency, 1999).

Each year, the EA undergoes a mapping programme, which determines the areas

of Britain that are at the highest risk for flooding. The mapping programme combines

modelling, photographical contouring, and other geographical data with an analysis of

Page 51: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 41 -

possible worst-case scenarios. The EA sends letters to owners of property within these

high-risk areas to make them fully aware of their situation.

The priority for the EA is to improve their system’s real-time capabilities. In

terms of weather monitoring, the EA relies on information supplied by the

Meteorological Office. Using the Hyrad satellite, radar-data capture occurs every 15

minutes and is made available for viewing. These data are then analysed within the Met

Office by the Nimrod forecasting and modelling system. The EA has direct access to the

Met Office systems, but its access is limited to only certain domains and it does not

have access to all of the Met Office data. Furthermore, Nimrod fails to detect

thunderstorms well, thus limiting the EA’s use of its information.

Once the rain has fallen, the EA utilises its own Regional Telemetry System

(RTS) to monitor water levels across Britain. Gauges and recorders are connected to a

data logger at each site, which are then linked to EA regional offices, of which there are

eight, by telephone lines. All the rain gauges and flow and level recorders of waterways

are scanned and updated automatically every morning, and those of interest may also be

updated manually for monitoring every 15 minutes. EA regional offices can then

graphically analyse all captured data.

Scanning data loggers uses the limited energy resources of their on-site batteries.

This can be a problem during major incidents when continual scanning of the data

loggers is required. Battery failure, therefore, poses a large operational risk to RTS.

Each data logger has been programmed to send an alarm message to regional

offices when their gauge or recorder surpasses certain levels. Reliable warnings are set

only when telemetry information is considered along with Hyrad radar images by EA

regional officers. The stages of warning set by the EA are ‘Flood Watch’, followed by

‘Flood Warning’, ‘Severe Flood Warning’, and ‘All Clear.’

Page 52: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 42 -

At present, the EA warning system, with its reliance on RTS monitoring, does

not utilise GIS modelling, although it is planned for a GIS to be introduced when the

warning system is next updated. The disadvantages of the present warning system, is its

lack of flexibility to allow for the consideration of other factors, like rainfall intensity.

EA officers need the ability to input into its systems conditions which it feels are

important, in order to effectively model and predict. A GIS would be able to incorporate

any additional factors and produce three-dimensional models. This would greatly help

in modelling flood areas and deciding who needs to be warned, especially those areas

that are densely populated. In these areas, there is a risk of inefficiently warning a large

number of people who may not actually be in danger.

Recently (September, 2001) the EA made available an Internet Web site which

allows the public, and local government and emergency services, to see exactly where

warnings are in force. By providing their post code, public users have access to static

images, in the form of maps of their locality.

Concerns for data protection, however, have limited the accuracy of the maps

made available on the Internet. The EA has stressed that its information is designed only

for the use of flood warning, and not as a resource for home buyers in determining

which properties are within flood plains. Internet resources may also be misinterpreted

or poorly understood by an inexperienced public. This also limits the amount of

information the EA can post on the Internet.

Page 53: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 43 -

3. Web-based GISs

3.1 Introduction

Although the high initial and operational costs of a stand-alone GIS could be

shared among a large number of users through a Web interface, there are a number of

obstacles to such shared use by users with specialized needs (Al-Sabhan et al., 1999). A

general-purpose GIS can be difficult to learn but suitable training is often not available.

Furthermore, some applications require features not common in a general-purpose GIS.

For example, hydrological modelling needs dynamic processes and horizontal flux

calculation along drainage networks. Real-time data collection, analysis, and delivery

are typically not available. Current GISs do not have graphical user interfaces and are

not easily integrated with desktop applications (Dai et al., 1997; Newton et al., 1997;

Feary, 1999; Dunham et al., 1999; Karimi and Blais, 1997).

Accumulating and maintaining geo-spatial data is expensive and time-

consuming (Baptista and Kemp, 1999); most remain accessible only to those who

collected the information. Although sharing data among users could reduce costs, such

integration remains a goal to be achieved (Baptista and Kemp, 1999). One difficulty is

that data are often maintained in incompatible forms, such as hard-copy maps,

electronic forms, and survey plans, leading to an interoperability problem (Kahkonen et

al., 1999). Also, since data management in current GISs is quite different from that in

relational DBMSs, different maintenance skills are needed (Feary, 1999).

Despite these obstacles, much attention has focused recently on Web-based GISs

(Qin, 1997; Burk, 1997; Yue-Hong, 1997; Plew, 1997; Kim and Lee, 1999; Kahkonen

et al., 1999; Guan et al., 2000).

Page 54: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 44 -

3.2 Recent Developments

A large number of recent GIS projects have taken advantage of the Internet, the

Web, and related technologies to replace geographic information dissemination via

paper, photographic, magnetic, and optical media (Goodchild, 1998). In such

approaches, four functions ─ information search, discovery, assessment, and retrieval

─ can be supported from three basic viewpoints: technological, software engineering,

and the user (Tao, 2000).

Technologically, GIS architecture has evolved through mainframe, desktop,

network-based client-server, and distributed systems. The next phase will likely see

heterogeneous networks based on inexpensive ubiquitous computing devices, wireless,

mobile, or nomadic, with autonomous and intelligent software proxy agents.

From the software engineering viewpoint, GIS systems have typically provided

a wide range of functionality which is not selectable by a user. Future systems will need

to allow a user to customize, and pay for, only those functions needed for a particular

application.

Given that a user can customize a GIS's functions, further customization is

available through a Web-based application interface. Software tools are easily obtained,

a customized system can be easily assembled, and e-commerce arrangements such as

access registration and metering are available. But current GISs primarily serve research

needs and do not provide appropriate access for the expected class of end users. Future

systems will need to be designed with the user in mind. Hawthorn and Engen (1997)

conclude that the Internet provides a way of deploying such systems through a

combination of equal access and cost effectiveness. Abel et al. (1998) stress the

importance of the Web for spatial information systems.

3.3 Hydrological Web-based GISs

Coupling the Web and GIS functionalities produces a new and interesting tool

which not only provides easy access to data but an easily used spatial data manipulation

Page 55: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 45 -

tool (Dragicevic et al., 2000). The Web offers new application areas, such as urban

planning and watershed analysis, for communication and interaction between planners,

concerned citizens, and clients. And it simplifies access to and distribution of

geographic data among many users (Coors and Flick, 1998). Web-based technologies

can support the forecasting of patterns of urban growth (Bell et al., 2000). The Web

provides cheaper, faster, and more frequently updated data distribution (Kraak, 1999).

Web-based GISs can provide easy access for local or international users via standard,

low-cost equipment (Dunham et al., 1999) and opportunities for public feedback,

participation, and collaboration in decision-making processes (Carver et al., 1997;

Densham, 1991; Densham and Armstrong, 1994; Carver et al., 1996; Bhargava and

Tettelbach, 1997; Carver et al., 1998; Fisher and Wilson, 1997). Such meetings are not

geographically restricted and can be relatively anonymous and non-confrontational

(Kingston et al., 2000).

In summary, the Web, with its properties of openness, interactivity, speed,

spatial distribution, hierarchical structure providing protected domains, and flexibility,

can be an exceptionally important tool for watershed management as well as general

regional management (Voinov and Costanza, 1999).

But problems of accessibility and usability of spatial data remain significant

bottlenecks to increasing the number of GIS users and applications (Li et al., 1995).

There is a lack of a broad range of users with access to integrated spatial data. Local

communities and casual users do not have the necessary hardware, software, and

training to assimilate and analyse such data. Consequently, a usable Web-based GIS is

needed (Dai et al., 1997).

Recent Web-based GIS developments include HYDRA5, an information system

for catchment management, designed for novice as well as expert users for planning and

water quality (Taylor et al., 1998). It provides a catalogue for search and retrieval of

arbitrary data sets, a series of hypermaps with some GIS functionality and links to

spatially referenced data, and an analysis and graphing tool for time-series data. The

KINDS (Knowledge-based Interface to National Data Sets) system increases awareness

of, accessibility to, and usability of spatial data sets held at MIDAS (Manchester

Information Datasets and Associated Services). It is concerned with large, spatially

Page 56: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 46 -

referenced data sets available to the academic community (Calder, 1998). Most

comprehensive data are currently stored in relational databases, and it is difficult for

interested users and local communities to fully access and analyse them (Li et al., 1996).

Lin and Zhang (1997) describe a Web-based GIS catalogue browser for distributed

spatial data retrieval, which facilitates access to and sharing of spatial information

around the globe.

3.3.1 Interfaces

The Web interface designed for KINDS improved the accessibility and usability

of large and complex spatial data sets (Li et al., 1996). Lin and Zhang (1997) report on

the technical feasibility of building Internet-based interfaces using Java to enhance

accessibility and usability of spatial data. Alper and Stein (1996) report that using Java

provides a significant improvement over HTML for implementing interfaces in geo-

spatial applications. Richard (2000) developed a Web-based atlas of Switzerland with

immediate updating and interactivity. Its GUI is based on concepts similar to a

multimedia atlas.

3.3.2 Java Support

Using a Web-based client-server architecture, storage is at the server but data

can be processed at either the server or the client. Since the client needs only a Web

browser, there are no onerous demands for hardware, software, or training. The browser

can be extended with plug-ins, Java applets, or common software components. Java

applets and HTML are often used to implement a GUI because they are freely available,

almost platform independent, and require little maintenance. JavaScript can also be used

for screening and coordinating model parameters before processing data.

Users often experience difficulty transferring knowledge to a spatial data system

(Davis and Medycki-Scott, 1994). Java provides an excellent tool for creating Web sites

designed for ease of interaction with geographic data. Its Abstract Window Toolkit

supports buttons, menus, dialog boxes, and GUI applications that are platform-

independent (Geary and McClellan, 1997). It provides the capability to build distributed

queries in a graphical environment so that a user need not know the schema of each

Page 57: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 47 -

connected database, allowing multiple heterogeneous databases to be organised as if

they were one (Burton and Marek, 1998). Languages such as Java provide powerful

new tools to build spatial systems and are expected to be the next step toward universal

dynamic spatial applications on the Web (Hawthorn and Engen, 1997). Java is an

attractive choice for developing custom network-based mapping applications (Dai et al.,

1997). Java provides a rich environment for efficiently and effectively distributing

spatial data and can be used to develop customized subsets of GIS functionalities which

sometimes allow for more appropriate solutions than can be found with stand-alone

GISs (Burk and Lime, 1997).

Monnier (1998a) summarizes the advantages of Java with six major points. It

overcomes high customisation costs in geo-engineering, provides universal connectivity

across an enterprise, supports multiple client-server architectures (see the following

chapter), preserves legacy data through its independence of databases and its

object/relational mapping capabilities, integrates geo-engineering into corporate IT

through its ability to build on standard components, and simplifies the development of

geo-engineering applications.

Perhaps most important, Java's platform independence addresses the problem

that any successful spatial analysis technology must be "GIS-invariant” in the sense that

data from any GIS could be sent to it, analysed, and results exported to another GIS

(Openshaw et al., 1999).

3.3.3 Data and Databases on the Web

Flat-file databases are still in use in many applications developed in the 1960s.

Although adequate for a small simple database, a flat-file system becomes unwieldy for

a large or more complex database. Generally, any structural change in such a database

requires a change in all associated application programs. More recent databases use a

DBMS, a collection of inter-related programs that access data (Elmasri and Navathe,

1994). The Web-based client-server paradigm offers further improvements for database

access. The deployment of such databases on the Web has been rapidly evolving

(Newton et al., 1997; Kramer, 1997; Burton and Marek, 1998; Bouguettaya et al., 1999;

Page 58: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 48 -

Zhu and Lu, 2000; Papastavrou et al., 2000). Efforts to improve connectivity between

databases have also been made (Vetter, 1999).

The major Relational DBMS (RDBMS) vendors provide databases accessible

from the Web (Jepson and Hughe, 1998; Oracle, 1999; and Microsoft, 1999). Web sites

with such databases can provide excellent online information (Zhu and Lu, 2000). The

hypermedia interface capabilities of the Web provide an improved environment for

database applications over previous client-server systems (Dai et al., 1997). Java and its

associated technologies provide all the necessary platform- and database-independent

interfaces for such Web-based systems, making it possible to connect distributed

databases (Burton and Marek, 1998). The Web has made it possible to now use a single

interface to access all Internet databases (Bouguettaya et al., 1999).

Users can interact with a Web-based database using their preferred browser

without concern for compatibility, configuration, or additional cost. Table 3.1

summarizes the main differences between traditional and Web-based database

applications (Ju, 1997). Tools for accessing databases via the Web (Kramer, 1997) fall

into three groups: Java, CGI, and ActiveX. The latter two are discussed in later chapters.

Traditional Web-based

Platform dependent. Platform independent.

Client compiles and therefore executes faster.

Client is an interpreter and is therefore slower.

Installation necessary. No installation required.

Fat client; maintenance needs incurred. Thin client; maintenance is minimized.

New, unfamiliar interface. One common, familiar interface across applications.

Rich, custom GUI constructs possible. Limited set of GUI constructs.

Difficult to integrate with existing applications. Easy to integrate with existing applications.

Difficult to add multimedia. Easy to add multimedia.

Persistent connection to database. Nonpersistent connection to database.

Table 3.1: Differences between Traditional and Web-based Database Applications

Source: Ju, 1997

Page 59: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 49 -

Real-time interoperability is supported by network-centric processing of

information based on the principles of distributed computing, thin-client technology,

and platform independence (Kahkonen et al., 1999). Spatial data sets can be provided in

a natural and accessible format, such as Arc/Info (Li et al., 1996), to significantly

improve understanding. Powerful browsers making large amounts of information

available have in turn made producers of spatial data eager to publish them on the Web

(Alper and Stein, 1996). The Web allows existing datasets to be reused but to remain

within the organisation that can best maintain them (Hawthorn and Engen, 1997).

3.4 Analysis

A Web-based approach allows a user to assimilate and analyse environmental

data according to specific needs. The Web provides the capability to develop

customized subsets of GIS functionality which can provide more appropriate solutions

for information generators than dedicated GISs (Burk and Lime, 1997).

Display options differ in terms of the skills needed by users and providers

(Kraak and Driel, 1997). Static bitmaps can be viewed simply. Indirect interaction with

a map image can occur via a menu. Direct interaction with a map image can occur via

mouse clicks on “hotspots” ─ predefined areas in the map ─ that are linked to additional

information or another image. Direct interaction allows accessing and querying the data

behind the map.

Advanced analytical GIS functions, such as querying, overlaying, networking,

reclassifying, and site searching, can also be provided via the Web (Dragicevic et al.,

2000). Tao (2000) presents a number of examples of complex Web-based GIS analyses:

geo-spatial display services provide zoom, pan, select, identify, layer control, and

colour-style control; geo-data access services provide data downloading, uploading,

and overlaying; data transformation services provide common transformation functions

such as those between geographic coordinates and projected UTM coordinates; map

annotation and symbolization services provide useful computations such as determining

the centroid of a polygon so that its attributes can be annotated; terrain analysis

services provide interpolation algorithms along with shading and profile analysis; and

three-dimensional visualisation provides both terrain and city models.

Page 60: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 50 -

Earth observation is a major application of integrated GISs. Although

governments and researchers have been the major users of satellite imagery, and other

forms of geo-spatial data, businesses and individuals are increasingly more interested.

The Canadian Earth Observation Network (CEONet) is a Web-based infrastructure for

accessing Earth observation archives and other complementary geo-spatial databases

(Fraser, 1998). Garnesson (1998) used the Web for online image delivery of the French

Riviera's coastal zone. Guan et al. (2000) developed a prototype application that aids

drivers in finding optimal routes in cities.

Multimedia visualization is an active research area. Applications of the Virtual

Reality Modelling Language (VRML) for interactive exploration of geo-spatial data are

being studied (Rhyne and Fowler, 1996; Neves et al., 1997). Since the mid-1990s,

virtual three-dimensional GISs on the Web have shown promise (Rhyne, 1997). Doyle

et al. (1998), who used interactive mapping and virtual reality techniques on the Web to

provide visualisation, modelling, and analysis of urban environments, concluded that

there is a potential for combinations of digital data, GISs, virtual reality, and the Web in

urban decision-making.

Rhyne (1999) described GeoVRML, a tool for three-dimensional representation

of geo-referenced data on the Web, incorporating geo-referenced coordinate systems

into VRML models. The integration of GeoVRML with emerging technologies such as

MPEG-4, Java, Three-Dimensional, and Chrome has the potential to provide functional

and transparent communication between geographical information and three-

dimensional visualisation tools (Rhyne, 1997).

Coors and Flick (1998) developed a three-dimensional GIS with a Web-based

interface based on Java and VRML. Their data model supports full three-dimensional

query space. Multimedia data such as voice and image are linked to three-dimensional

features (Kraak and Driel, 1997).

Providing layers for accessing GIS map information is an essential feature.

Thomas (1998) introduced GeoNet, which simplifies access to geographical information

and correlated multimedia resources. It extends conventional GISs by allowing map

features to be linked to Web documents such as images, HTML pages, or CGI scripts.

Page 61: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 51 -

In this way, a map layer can be linked to related information such as audio and video

clips.

A number of initiatives have been established to foster sharing of geo-referenced

data. The Alexandria Digital Library (ADL, 1998) is a distributed digital library for data

such as maps, texts, photographs, and other geo-documents. It answers questions such

as “What data are available on this phenomenon at a particular location?” The National

Spatial Data Infrastructures (NSDI) is a global spatial-data infrastructure. NSDI

provides a consistent means to share geographic data and facilitate cooperation and

interaction among various levels of government, the private sector, and academia. Its

major components are: a basic framework of digital geo-spatial data to act as a

foundation for numerous data collection activities; known-quality thematic data sets of

critical national importance; standards to facilitate data collection, documentation,

access and transfer; and the means to search, query, find, access, and use geo-spatial

data. It also incorporates a national geo-spatial data clearinghouse acting as a metadata

search engine for geographically dispersed databases.

GRASSLinks, a Web interface to the Geographic Resources Analysis Support

System (GRASS) public domain software, provides the ability to calculate the extent of

mapped categories or the overlay of categories between maps, to re-aggregate categories

of data to form a new map, to place buffering around objects within specific map

categories creating a new map showing proximity to features, to combine maps

producing a new map from the overlap between categories in different maps, and to

zoom, pan, navigate, and download images for local processing (Huse, 1995; Plewe,

1997). Even greater control in data selection and formatting of custom maps can be

found in the Guild-on-the-Web online GIS (Guild, 2001).

The goal of the Digimap project (Digimap Documentation Project, 2000) is to

identify, explore, and assess online methods for delivering Ordnance Survey map data

to the Institutes of Higher Education in the U.K. It addresses changes to the traditional

use of large-scale (1:1250 and 1:2500) maps; the problems presented by digital map

data are offset by the opportunities to escape limitations of the printed map, such as

specificity of scales, discontinuities of the paper sheet, and decay of current

information. Digimap provides zooming and panning, viewing maps at one of 3 pre-

Page 62: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 52 -

defined scales, printing maps at A4 size at the same predefined scales, downloading of a

map's image file, as well as other advanced tasks.

Kutschera et al. (1996) designed a Web gateway for the Austrian Ozone

Monitoring Network and demonstrated that a usable prototype is an easy, cheap, and

practical way to provide environmental information on the Web. Simple front-end

visualisation applications were developed.

3.5 Online GIS Applications

Six different types of GIS applications are in use or have been used on the

Internet (Plew, 1997). The following sections describe each type, from the least difficult

to create and use, to the most difficult.

3.5.1 Raw-data Download

Raw data requires very little processing by either the server or the client. A user

typically downloads files from a specific directory for use in local GIS software. An

example is the United States Geological Service Web site (USGSb, 1999). See

Appendix A.

3.5.2 Static-map Display

In the static-map approach, requiring the least amount of browser and user

capability, maps are typically created using GISs or graphics software, saved in a format

such as GIF, JPEG raster, or CGM and DXF vector formats, placed in a specific

directory, organized by city or country, and viewed through the user’s browser either

alone or as part of an HTML document. Although the maps are static images, they can

be made interactive using Web tools such as ImageMap. An example is the

Environmental Protection Agency Web site (EPA, 2003). See Appendix A.

Page 63: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 53 -

3.5.3 Metadata Search

Metadata are used to organize and maintain data, to provide information to data

catalogues and clearinghouses, and to aid data transfers. A metadata database,

containing structured descriptions of geographic information, is stored separately from

its associated data, but might include a URL for it. A service of this kind performs very

simple spatial and thematic queries against GIS databases, but does not perform GIS

analysis. An example is the National Geographic Data Clearinghouse from NSDI

(NGDC, 2003). See Appendix A.

3.5.4 Dynamic-map Display

A dynamic map, drawn on demand according to parameters such as location,

scale, or theme, is delivered by standard GIS software or a map generator. The

architecture for this type of display, using the CGI protocol described in Section 4.4.4,

is shown in Figure 3.1.

Figure 3.1: Dynamic-map Display Architecture

Unfortunately, this approach has high bandwidth requirements, puts a heavy

load on the server to manage dynamic processes, and requires help from other programs

Page 64: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 54 -

for database connection and image conversion. However, information can reach a wide

range of users. Sites using dynamic maps include Emapper (Emapper, 2003). See

Appendix A.

3.5.5 Web-based GIS Query and Analysis

Web-based GIS query and analysis, offering a wide range of functionality, can

use tools such as HTML, scripting, image formats, and Java as well as newer methods

such as Java. Figure 2.6 shows the creation of a CGI-based interface. The architecture

of Web-based GIS query and analysis is shown in Figure 3.2.

Figure 3.2: Web-based GIS Query and Analysis Architecture

Although Web-based GIS query and analysis, like dynamic map display, does

processing on the server side, it employs a wider range of analysis techniques such as

display, buffer, classification, overlay, and area calculations. It does, however, suffer

from slow speed and high programming costs. An example is GRASSLinks

(GRASSLinks, 2003). See Appendix A.

Page 65: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 55 -

3.5.6 Net-savvy GIS Software

Net-savvy GIS software, based on the client-side model, is standard GIS software with

added abilities to perform simple queries and analysis from the network. Its essential

advantages are easy incorporation of data across the Intranet because data are stored

locally, understanding many GIS formats, an ability to change projection and to

coordinate systems in real time, and support for vector-based maps containing

hyperlinks. Its main disadvantage is a requirement for local GIS software. Examples

include Intergraph’s GeoMedia (GeoMedia, 2003) and ESRI’s MapObject (MapObject,

2003). See Appendix A.

3.6 Commercial Web Geographic Information Systems

Autodesk's MapGuide, ESRI's MapObjects, Intergraph's GeoMedia Web Map,

and MapInfo's MapXtreme provide commercial examples of integrating GISs into the

Internet (Kraak, 1999; Limp, 1997). Smaller vendors and academic researchers have

largely concentrated on developing Windows-based GISs. In these, Visual Basic or

Delphi is typically required for customized mapping or GIS applications.

MapGuide comprises three components: MapGuide Author, MapGuide Client,

and MapGuide Server. Author pre-compiles maps in a proprietary format, Server

handles map requests over the Internet, and Client enables browsers to read MWF files.

MapObjects, a collection of ActiveX object controls, supports map composition,

address matching, spatial queries, and database linking. At the server, programming is

required to create customized maps or to use GIS applications. A Java or ActiveX

applet is downloaded to the client for spatial querying. Significant programming is

required to build a customized application.

GeoMedia Web Map, a CGI application, reads a wide variety of file formats,

converts them to a vector-based image-file standard, and uploads to a Web server.

Page 66: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 56 -

MapXtreme, a mapping-application server, provides mapping functions for

spatial-data manipulation and display. Online maps can be created and delivered

directly from a standard database. Vector-data output is encrypted and compressed,

protecting the data provider and reducing network traffic (Rieks, 1999). Significant

programming is required to build a customized application.

Smaller vendors and academic researchers have largely concentrated on

developing Windows-based GISs. Visual Basic or Delphi is typically required for

customized mapping or GIS applications.

3.7 Conclusions

Deficiencies of current Web-based GIS products include a lack of standards

(Kahkonen et al., 1999; Yun and Kim, 1999), a user requirement for technical expertise

and a detailed knowledge of the underlying architecture, a difficulty in interfacing to

back-end external systems or real-time devices, a lack of sophisticated analytical

capabilities ─ including hydrological modelling, a difficulty in presenting dynamic

applications and using cartographic modelling languages, and a lack of some essential

and common analysis tools.

Little research done to date has directly addressed interfacing the Web with full

GIS capabilities (Ferris, 1999). Although topological analysis of networks, polygon

overlay, and spatial modelling are important tasks, some current systems simply deliver

static maps or provide data distribution capabilities.

A good GIS should be an integrated whole providing the capabilities of a

database system, mapping software, and a CAD system, primarily supporting spatial

analysis. Only by employing the proper technology with the appropriate computer

software and hardware can real GIS functionality can be accomplished on the Web

Ferris (1999). Finally, Web-based GISs should emerge with standards and quality

assured by institutional sponsors (Goodchild, 1998).

Page 67: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 57 -

4. Current Web Technologies

4.1 Overview

The Internet began as a U.S. Department of Defense project in the late 1960s,

responding to concerns that the communications infrastructure could be destroyed by a

nuclear attack. During the 1980s, it was opened to government agencies and education

and research institutions, and in the early 1990s to the public and commercial

organisations. Today, with as many as 160 million Internet users worldwide (Morgan,

2000), it is expanding at a rate of 80-100% a year. Although no committee or federal

agency manages the Internet, some organisations do direct aspects of its design,

including the Internet Society (ISOC), the Internet Engineering Task Force (IETF), and

the Internet Architecture Board (IAB).

The World Wide Web, created in 1991 by Tim Berners-Lee at the European

Particle Physics Laboratory (CERN) in Geneva, is an application that operates on the

Internet. It is based on a client-server model in which a client, using a Web browser,

retrieves documents from a Web server.

4.2 Client-Server Computing

The Web comprises four types of components, the browser, the server, the

hypermedia document, and the Uniform Resource Locator (URL). Its underlying

network protocol is the Hypertext Transfer Protocol (HTTP). A hypermedia document

is a file, often called a Web page, written in the Hypertext Markup Language (HTML).

A browser displays such a file by interpreting its HTML commands. A URL, often

called a hypertext link, is a reference within a hypermedia document to a location in the

Page 68: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 58 -

same or another hypermedia document. A Web server stores hypermedia documents.

HTTP, a simple protocol performing one task at a time, is simple but inefficient in that

it establishes a TCP27 connection for every request. Moreover, HTTP does not permit a

client to issue parallel multiple requests in the same work session. A URL has two basic

parts, the address and the protocol name. The address can be an IP28 address (e.g.,

195.147.147.140) or a domain name (e.g., www.kcl.ac.uk), an IP address that has been

resolved by a Domain Name Server (DNS). The protocol name specifies one of the

Internet protocols such as the File Transfer Protocol (FTP) or HTTP. For a local file,

the protocol name is “file.”

Lynx, the first Web browser, developed by Lou Montulli in 1992 at the

University of Kansas, displayed text-based HTML only. Mosaic, developed in 1993 by

the National Center for Super-Computing Applications (NCSA) at the University of

Illinois, allowed platform-independent data presentation and was itself multi-platform.

The current major browsers, Netscape Communicator and Microsoft Internet Explorer,

display a limited number of document formats regulated by the WWW Consortium

(W3C).

Before the Web, client-server data access was not in general use and often was built

using a limited set of component types: clients, networks, servers, and databases. The

Web changed client-server data access by providing a universal infrastructure, millions

of users, a global scope of access, and thousands of potential developers (Chang and

Harkey, 1998).

4.3 Client-Server Network Architecture

Client-server systems are characterized by a clean separation of function

between the customer and the provider of service, concurrently access to shared

27Transmission Control Protocol (TCP) is a network protocol that controls host-to-host transmissions over packet-switched communication networks. 28 Internet protocol (IP) is a Department of Defense standard protocol designed for use in interconnected systems of packet-switched computer communication networks. In data communication, a packet is a sequence of binary digits, including data and control signals, which is transmitted and switched as a composite whole.

Page 69: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 59 -

resources, client initiation of dialog, server-location masking, platform independence,

communication by message passing, implementation-independent server interface

design, scaling of client or server numbers or computing power, and central control of

server implementation (Orfali et al., 1996).

The Internet's TCP/IP protocol is not a single protocol, but a suite of protocols.

Its specifications are publicly available as Requests For Comments (RFCs) which

document Internet standards and are maintained by the Internet Architecture Board

(IAB, 2003). TCP/IP fits loosely within the Open Systems Interconnection (OSI)

Reference Model. Following the OSI model, a framework for protocol design, helps to

identify the functionality of a protocol and encourages standardization. Microsoft’s

TCP/IP, for example, is compliant with RFC-published TCP/IP standards. However, the

Microsoft implementation includes a number of features not found in other versions of

TCP/IP.

4.3.1 System Architectures

Network systems have evolved through monolithic, two-tier client-server, and

three-tier client-server architectures. The first-generation monolithic architecture, based

on a host-terminal model (see Figure G.1) centralized an organization's applications on

one mainframe. The monolithic architecture has been largely supplanted by the two-tier

client-server architecture, consisting of fat clients and a data-repository server. A fat

client stores all or a portion of the application logic along with the user interface (see

Figure A.1). Since a client and the server are tightly coupled, modification of one

requires modification of the other (Fingar et al., 1996), leading to problems of

scalability and maintenance (Brodie and Stonebraker, 1995). To overcome these

problems, the three-tier client-server architecture evolved in which a thin client contains

only the user interface, such as a Web browser. Three-tier systems can be easier to

maintain and less expensive than their two-tier counterparts (Harnedy, 1998). The major

difference between the two is that the application server provides an abstract interface

for both the client and the database, creating a more loosely coupled interface and

allowing unrelated clients to utilize the same server (Fingar et al., 1996).

Page 70: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 60 -

4.3.2 Web Servers

A Web server comprises three major software components: the HTTP interface,

the HTML page generator, and the server interface. Additional functions include

Common Gateway Interface script handling, database access for search engine requests,

and administration features. The major Web servers currently available include:

Apache, a Unix platform (Ricart, 1996); Microsoft Internet Information Server, a

Windows platform; and Netscape Enterprise Server, a Unix and Windows platform.

Other servers include FreeBSD (FreeBSD, 2003), Web Commander, Lotus Domino

(Domino, 2003), and Servertec Internet Server (SIS, 2003).

4.4 Web Software Development

Although HTML document retrieval and presentation is the major function of a

server and browser combination, other functions can be provided by special

components. For example, a helper application is a program that assists a browser to

display certain files. GIS developers often provide scaled-down GIS applications as

helpers to display their preparatory files. A plug-in is a platform- and browser-

dependent application that performs some additional function within a browser. They

were originally developed to display preparatory graphic, sound, film, and animation

files. Some GIS developers use plug-ins to display their preparatory data files.

4.4.1 Markup Languages

HTML, now about 10 years old, is one of a class of languages that can be

defined using the Standard Generalized Markup Language (SGML), developed in the

mid-1980s and standardized by the International Standards Organization (ISO) in 1986.

Table 4.1 shows the HTML chronology (Harnedy, 1998).

Page 71: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 61 -

Date Event

1989 A subset of SGML is used to distribute documents among various CERN labs.

1991 Tim Berners-Lee creates the original HTML document.

1993 T. Berners-Lee and D. Connolly create the HTML Version 1.0 specification. An

HTML+ discussion document is created, which provides the basis for HTML

Version 2.0.

1994 An HTML 2.0 standardization effort is underway.

1995 The HTML 3.0 working draft is abandoned.

1996 The proposed ISO/IEC International Standard for HTML Version 2.0 is

completed. HTML 3.2 merges the Netscape and Microsoft extensions.

Table 4.1: HTML Chronology

Source: Harnedy, 1998

HTML commands in a document, also called marks or tags, define the structure

and the presentation of the data in the document. HTML documents can also incorporate

active objects like ActiveX controls and Java applets. And a displayed HTML page can

contain interfaces to a wide variety of helper and plug-in applications. Using active

objects, HTML tags can specify text, graphics, interactive buttons, forms, and other

objects on-screen which interact with a user.

Certain limitations of HTML are problematic in providing full GIS functionality.

Although HTML handles the GIF, JPEG and BMP formats with good graphic quality,

so that raster data such as scanned maps, satellite images, and shaded relief images are

presented well, HTML does not handle vector graphics. However, a simple vector file

format, which could be added to the range of file formats understood by HTML, could

address this limitation. Another drawback of standard HTML interactive graphic

methods is that only one click is allowed. Thus, screen coordinates are sent

Page 72: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 62 -

immediately, not waiting for another click that might be required for defining a

rectangle, line, or polygon.

While SGML separates content from presentation, HTML mixes the two,

reducing its flexibility considerably. The Extensible Markup Language (XML) is a

compromise. Like SGML, it is a language for specifying markup languages. However,

it is not as complex as SGML but does extend HTML with some of SGML's

functionality. XML allows a Web page author to create specialized tags allowing XML

pages to provide functionality not possible with HTML.

4.4.2 Common Gateway Interface

The Common Gateway Interface (CGI) is a specification standard that allows a

Web server to exchange data with other applications. For example, a Web server could

link to a GIS model to perform spatial analysis. A CGI program, commonly called a

script, is simply a program that invokes the CGI interface and is interpreted in real time.

Figure G.2 shows typical stages in a conversation between client and server. A user at

the client begins by opening the Web site and navigating among its pages. For example,

the user might request a flood prediction map by completing a form that causes the

server to invoke the flood-map script, which in turn invokes the mapping software.

Once the mapping program has completed, the script converts the results to HTML and

returns them to the server for transmission to the user’s browser.

Although a CGI script can be written in almost any language, Perl has become

the popular choice (Hunter, 1998). For this reason, it is used for the project described in

following chapters.

Most criticisms of CGI concern its performance. As shown in Figure 4.1, each

client request creates a process at the server, requiring significant processing overhead.

Another problem is that a CGI script cannot interact with a Web server (Orfali et al.,

1997).

Page 73: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 63 -

CGI Web Server

Request 1

Request 2

Request 3

Figure 4.1: CGI Life Cycle

Source: Chi, 1999

Perl (Practical Extraction and Report Language) is an easy-to-learn and rich

language producing compact programs (Srinivasan, 1997). It is useful not only for CGI

programming but also for more general applications (Wall et al., 2000; Schwartz et al.,

1997; Harnedy, 1998; Schwartz et al., 1997; Srinivasan, 1997).

4.4.3 Java

Web programming languages, used to create active content in both servers and

clients, include Java, C, and C++, although Java is probably the most common. It is an

object-oriented (OO) language that is somewhat smaller and simpler than C or C++

(Hardy, 1999b; Bertino and Martino, 1993; Abnous and Khoshafian, 1990). But its

main attributes are platform independence (Lemay and Perkins, 1997) and improved

security (Eckel, 1998; Traister, 1993; Grand and Knudsen, 1997). Java's primary role is

to create applets, mini-applications that execute within a Java-enabled browser but with

the ability to communicate with a server.

Process

Process

Process

Page 74: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 64 -

A Java platform has two basic parts (Kramer, 1996), a virtual machine and a

Java Application Programming Interface (Java API). The virtual machine provides the

interface for system calls, while the Java API provides the interface for user programs

written in Java (Gosling et al., 1996). Figure 4.2 shows the basic components of a Java

platform.

WWW Browser

BytecodeProg.class

SourceProg.java

Java API

JVM

Adapter

The Java Platform

Figure 4.2: Java Platform

Java objects that share the same set of attributes and methods ─ the data and the

operations ─ are often grouped together into an object class. An object instance

contains the object’s graphical characteristics, its location, and its associated attribute

values. A composite object is one that is composed of other objects and whose

operations propagate to its constituent objects. Very often, the terms “composite object”

and “object class” are used interchangeably (Davis, 1994; Milne et al., 1993). A method

is a rule that specifies an object’s behaviour. The process of associating an operation

with a method is known as binding (Milne et al., 1993). Each object class can have

several methods and specific behaviours defined and can also inherit methods from its

parent class. When a method operating on an object is invoked by sending a message to

the object, the behaviour bound to it is executed (Hardy, 1999b).

Page 75: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 65 -

Java allows functionality to be transmitted with data. Thus a system can receive

data and the ability to manipulate the data at the same time. For example, on the server

an application could create an object, ask the object to populate itself from a local

database, and then send this object to a client Web browser. The client could then ask

the object to create an HTML representation of itself for display, or open up an interface

for editing itself. After editing, the object can be sent to another client across the

network. It could then be connected to a local database and asked to save itself.

Applications such as managing image and graphic databases, scientific

databases, geographic information systems, and multimedia databases require relatively

complex structures for objects, data types, and application-specific operations (Elmasri

and Navathe, 1994). OO languages like Java are intended to address these requirements

(Budd, 1991; Booch, 1994; Gamma et al., 1995). For information about object-oriented

programming in GIS applications, see (Kjerne and Dueker, 1986; Herring, 1991;

Yourdon, 1994; Worboys, 1995; Chance et al., 1999; Davis and Maidment, 2000). For

object-oriented applications in hydrology, see (Morten and Vefsnmo, 1997; Alfredsen,

1999; Alfredsen, 2000; Alfredsen and Sæther, 2000).

Java platform-independence is achieved through the Java Virtual Machine

(JVM) which reads and interprets Java programs and invokes any required platform

commands (Gosling and McGilton, 1996). Since each platform has its own JVM, a Java

class can inter-operate across machines with different architectures (Daconta, 1996;

Venners, 1999; Zhou et al., 2001). See Figure 4.3. Unfortunately, this layered

structure comes with a loss in speed (Chappell, 1996) compared to compiled languages.

Page 76: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 66 -

Figure 4.3: Computer System Layering with Java

Java facilitates the construction of image-processing applications (Baxes, 1994)

including restoration, compression, segmentation, and representation (Lyon, 1999).

Animation, extremely important when implementing time-series analyses over spatial

models, is easily performed in Java. For example, Java can display a computer

animation of a sequence of maps from the same area in different time periods. In such a

case, the movement of water across the study area (runoff routing) could be made quite

evident.

Java has many built-in facilities for developing rich networking applications. It

includes classes for socket programming for different types of protocols. For example,

the Java URL class, an abstraction of a URL, allows a Java application to open a remote

file as if it were local. It also supports network connections with the socket class, which

provides a client-side socket interface similar to the standard Unix socket, for the

creation of distributed clients and servers (Gosling and McGilton, 1996).

Operating System Kernel

Disk Driver

Sound Card Driver

Input/Output API

Multimedia API

Java Virtual Machine

Hardware

Disk DriveDevice

Sound Card Device

Application

Page 77: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 67 -

Finally, Java classes may contain some geoprocessing services such as display,

zoom in, zoom out, and map production. With a Java-based browser, a user can connect

to an HTTP server, download an applet and retrieve the required spatial data.

4.4.4 Applets and Servlets

A Java application program has no security restrictions within its name space. A

Java applet, on the other hand, is a small Java program that typically provides active

content, such as animation, of part of an HTML page. Such a page is configured to give

the applet only space on the screen to draw and links to the applet's code on its server.

Figure A.3 shows a Web client-server interaction scenario that includes a Java applet.

Specific client security restrictions on applets include the inability to access files

─ unless the applet comes from a digitally signed archive and the signature is verified as

coming from a trusted source, make a network connection ─ except to the server from

which it came, start any programs on the client, or read certain system properties such

as the user home directory.

A Java servlet is a special kind of Java application that runs on a Web server

within a process with some security, error checking, and garbage collection (Hunter and

Crawford, 1998). A servlet is usually implemented as a Java class that can be loaded

dynamically to expand the functionality of a server (Hunter, 1998). Servlets provide a

Java-based solution for server-side programming problems such as inextensible

scripting capabilities, platform-specific APIs, and incompatible interfaces. Like applets,

the major benefit of servlets is that the Web browser can provide a universal client

environment.

A servlet can be used to generate dynamic HTML content. As shown in Figure

A.4, a dynamic HTML page is usually written by a servlet and returned to the caller on

the client side. The servlet offers improvements over CGI, being faster and more secure

Page 78: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 68 -

(Chang and Harkey, 1998). It also reduces the development effort in server-side Web

applications (Chi, 1999).

4.4.5 ActiveX

Component reuse is a central goal in software design. An ActiveX control is a

reusable software component intended for use in Web sites, desktop applications, and

development tools. ActiveX is the commercial name for what originally was called

Object Linking and Embedding (OLE) and OLE Control Extensions (OCX). A

Windows application can access an ActiveX OCX control over a computer network by

adhering to the Distributed Component Object Model (DCOM) specification. ActiveX

is strongly tied to Windows at present because of its reliance on the Visual Basic

environment (Lee, 2001).

Like Java applets, ActiveX controls execute within a constrained environment,

like a Web browser. Unlike Java applets, however, ActiveX controls can be written in

various languages and are delivered in machine code, normally for a Windows

environment. While Java applets are supported primarily only by Web browsers,

ActiveX controls are supported by many types of containers. Also, ActiveX controls,

downloaded when a Web page is visited, are saved in the client, whereas Java requires

downloading of Java applets each time a page is visited. Finally, since ActiveX controls

have greater freedom in the client, they present a security risk. This is addressed by a

practice whereby developers of ActiveX controls sign their work digitally.

Security is a major issue in comparing Java and ActiveX (Blundon, 1996;

Coffee, 1996; Seminerio, 1997; Strom, 1999). Java supports two methods: server trust

and component constraints, commonly called sandboxing. However, one disadvantage

of sandboxing is to prohibit certain useful tasks. ActiveX controls support only the

server-trust method. Consequently, ActiveX security relies on the user making correct

decisions in accepting programs.

Page 79: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 69 -

A major concern with ActiveX controls is the possibility of a virus in the

machine code. Another problem is that they tend to be large compared to applets. Table

4.2 shows a comparison between Java and ActiveX. Table 4.3 gives a summary of the

technical characteristics of Java, ActiveX, plug-ins, and helper applications for a Web-

based GIS. Some acronyms appearing in the table are defined in later chapters.

Java ActiveX

Development Language Java Visual Basic, C++, Java

Execution Environment Virtual Machine Internet Explorer,

Windows

User Interface Virtual Machine Internet Explorer,

Windows

Component API Java Beans ActiveX

Computer Platform Any Wintel, Macintosh

Database API JDBC ODBC

Security Sandbox, Signed Code Signed Code

Distribution API IIOP (Internet Inter-ORB) DCOM (Distributed COM)

Table 4.2: A Comparison between Java and ActiveX

Source: Blundon, 1996

4.4.6 Client-side Java versus Server-side CGI

Java is a client-side capability, while CGI is server-side. CGI provides no

protection against invasion of the host computer’s resources, while Java isolates the

client from the server to protect against invasion of the server's resources. Java has

limitations in interfacing with other types of software since it is a single language

facility, while CGI programs can be written in standard languages to easily interface

Page 80: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 70 -

with existing databases and other software (Schwartz et al., 1997). CGI programs can be

easily integrated with HTML, while Java tends to be standalone with only limited

connectivity to HTML. For example, a Java image cannot act as an HTML anchor,

while a CGI image can. While graphics operations in CGI are usually difficult for the

user, Java has built-in classes that allow graphic manipulation such as zooming, display,

and other operations.

Web-GIS

Technologies

Helper

Applications

Plug-in and

ActiveX Java

At Server No Yes Yes

At Client Yes Yes Yes

Language Compiled Compiled Compiled

Environment Visual C++

Visual Basic

Visual C++

Visual Basic Visual J++

Object-Oriented Yes Yes Yes

MS Office Use Yes Yes Yes

Execution Fast Fast Medium

Download Slow Slow Slow

Client Software Required Required No

User Interface Customisable Customisable Customisable

Difficulty High High High

Cost High High High

Table 4.3: Characteristics of Web-based GIS Systems

Source: Feng, 1999

Page 81: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 71 -

CGI is slow and resource intensive, requiring a software process for each

invocation. On the other hand, a Java applet is kept in memory and run as a thread, a

much less expensive operation. The biggest advantage of Java is the machine

independence of applets. A Java program is translated into an intermediate language

that can interpreted by any system supporting applets. CGI programs, on the other hand,

must be recompiled for each server. Although CGI programs produce HTML or

standard images, they are client independent; however, they must be recompiled if

moved to a different server. Table G.1 gives some of the critical distinctions between

CGI and Java.

4.5 Conclusions

Java’s cross-platform capability, remote database connection, and built-in

2D/3D graphic support make it the best candidate for future Web-based GISs (Feng,

1999). Although a major drawback of Java is its slow performance compared to C++, its

speed has improved recently (Eckel, 1998).

ActiveX technology is an alternative if cost is not a concern. But implementation

cost can be high, Windows-based languages such as Visual Basic or Visual C are

required, and platform dependency may be limiting.

The capabilities of server-side CGI applications are accessed through the

standard HTML interface. Therefore, some GIS requirements, such as drawing a box for

zooming a selected area, cannot be performed using this approach since HTML does not

allow more than one click. Such operations require different tools such as Java applets.

The survey of Web technologies shows that the Web possesses many

opportunities for GIS development (Harnedy, 1998):

• Ease of use with common and easily mastered Web technologies. • Ubiquitous client locations through the use of the browser. • A high degree of interoperability and platform independence.

Page 82: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 72 -

• Low-cost solutions with inexpensive and easily obtained tools and technologies. • Broader enterprise management data modelling and accessibility. • Possible cheaper replacement of current enterprise management solutions. • An expanded charter of what enterprise management is and what it can do.

Following chapters describe the use of these technologies in a GIS system.

Chapter five introduces server-side CGI methodology, while Chapter six introduces the

client-side approach using Java.

Page 83: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 73 -

5. Methodology and Results for a Server-side Approach

5.1 Overview

GIS operations, comprising data collection, storage, manipulation, analysis, and

presentation (Maguire and Dangermond, 1991), are available through Web-based

graphical user interfaces and can provide a range of geographical data in different

forms. The uniqueness of GISs offers users specific and powerful tools for spatial

analysis. The starting point for such an analysis is simply a collection of various maps

and images, but the analysis of the spatial information can be made available over the

Web via a number of different methods. It is necessary, therefore, to determine the most

ideal method of delivering GISs over the Web. This ideal method must ensure wide

accessibility to end users, as well as the ability for the user to represent, manipulate and

process the images with relative ease and speed. The accompanying data for the images

and maps must also be made readily available, thus requiring flexibility and

convertibility of many types and formats of digital information. The processing and

analytical capabilities of conventional GISs are considerable, and any Web-based GIS

needs to be able to provide at least the lower and middle ranges of such capabilities

within the environment of the Internet.

By first regarding the general requirements of Web-based GIS and then by

presenting a Web-based flood-modelling GIS as an original example, this and the

following chapters are dedicated to two important dimensions of Web-based GIS: the

server and the client. This chapter concentrates primarily on the server-side approach

and is organized into five sections. Section 5.1 continues the discussion on the

important concepts that underlie Web-based GIS. Section 5.2 briefly introduces the

components of the flood-modelling system in order to provide the reader with some

familiarity of its details throughout this and the following chapters. Section 5.3 provides

a basic investigation of the server-side approach and Web-based GIS functionality.

Section 5.4 extends the description of the server-side approach by illustrating how

Page 84: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 74 -

advanced GIS functionality can be implemented into a Web-based GIS. The relationship

between functionality and the Web is further examined using specific examples. Finally,

in Section 5.5 conclusions are drawn concerning the advantages and disadvantages of

employing the server-side approach to deliver the functionality of Web-based GISs.

GISs differ from other databases in that GISs are spatial analysis engines. Data

can be collected from a wide variety of digital sources, including scanned images,

photographs, geology surveys, satellite images, converted data, and even Web-surfing.

For example, Grande Prairie is a commercial centre in Alberta, Canada that has

collected data over the past decade. Its only real cost is the capture and management of

the data. Grande Prairie’s collection has grown so large that different data sets are

required to support the range of GISs (Lauritsen, 2000).

The initial requirement for a GIS is a base map with standard reference points:

towns or city parcels, monuments, etc. The base map forms the foundation upon which

subsequent map layers are added (Lauritsen, 2000). The map layers provide information

used for different purposes, including building footprints, land use, aerial photography,

the piping of utilities, and location of facilities. Other information can include

residential and industrial areas, topography, fire hydrants, curb details, street details,

waterways, and transport depots (Lauritsen, 2000).

When accessed over the Web, a graphic version of these maps can be produced

by several different methods including the prevalent Common Gateway Interface (CGI),

C++, or Java. 3-D virtual representations are popular, but are not entirely practical on

the Web. They are comprised of polygons assembled using digital-elevation data with

colouring or texturing to represent terrain. Although the number of polygons can be

reduced, reducing detail to allow real-time viewing, and additional layers can simulate

conditions such as clouds, snow, or buildings, it is difficult to reproduce the 3-D

approach over the Web because of the large amount of data needed (GIS.com, 2001).

Other representations, however, are well supported by the Web. For example,

many different usable layers can be created through CAD-style programs. Such layers

can be accessed individually, with notes added to each, and can incorporate hot links

sending an observer to other sources such as a video file, bookmark list, or another Web

Page 85: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 75 -

site. This allows for querying locations, buildings, or general information in a mapped

and logical manner simply by adding or removing layers and clicking on the hot link.

Adding a hot link is a relatively straightforward process; for each layer, there is an

attribute table with an additional URL29 column containing the link. Hot links can be

added to the central server when maps are generated, or they can be added manually at

local levels (Fjell and Gausland, 1999).

Data can be compiled through the search engine capability of a GIS. Here, ad

hoc retrieval and standardized queries add flexibility (Fjell and Gausland, 1999). Text

reports can be included, keyed in or scanned with text recognition software, with hot

links point to them (Davis, 1996). When a query is completed, the data is retrieved and

converted into a presentable form by either converting it into maps or into another

presentable format. Examples of such format conversion include ARC/INFO to

MapInfo and Digital Line Graph (DLG) to ARC/INFO, as well as a change in the

projection of the map. Retrieved data can be manipulated to meet a user's requirements.

This may mean including angles or adding information to view the results in a 3-D

display that non-Web versions of GISs provide (Davis, 1996).

The needs of organizations that use GISs range from complex to simple. The

capabilities of Web-based GISs meet the lower and middle segments of these needs

(GIS.com, 2001) and may be applied to many industries. For example, oil companies

can form pictures of terrain by combining their own geographic data, survey results, and

satellite data (Fjell and Gausland, 1999; Lais, 2000). And timber growers can monitor

growth in remote areas (Foote and Kirvan, 1997; Jacobs, 1996).

To look at the accessibility of this information, consider an example that uses

CGI. MapServer creates individual graphics utilizing ESRI shape files on the fly. Users

may zoom in or out, pan around, and identify features using standardized HTML image

map interface. At the core of this application is a shp2gif converter that lets a user

request and push back map layers. There is also an option for a Java extension, in which

the interface is an applet rather than the converter (Open GIS Consortium, 2001).

29 Universal Resource Locator. The addressing format for the Web. (e.g., http://www.kcl.ac.uk.)

Page 86: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 76 -

5.2 Components of a Flood-Modelling System

This section provides an introduction to the components of flood-modelling

system so as to help the reader to understand the component of this proposed system. A

flood-forecasting system is an automated flood-plain-mapping system designed as a

planning and warning tool. The main functions of such a system are: monitoring and

collecting data related to rainfall, snow depth/water equivalent, ice conditions, and

moisture condition; meteorological forecasting including flows of rivers and streams;

warning preparation; warning dissemination such as the issuance of flood advisories;

interpretation and response; and promotion and participation in the development of

emergency plans. Figure 5.1 shows the interaction among these components.

5.2.1 Data Collection

Non-spatial data can be collected automatically from sensors, instruments, and

devices, whether in a factory, laboratory, or in the field. Non-spatial data (also called

attribute or characteristic data) is information that is independent of all geometric

considerations. Rainfall or river height data are examples. Precipitation in general is

measured as the vertical depth of water (or water equivalent in the case of snow) that

would accumulate on a flat level surface if all precipitation had remained where it fell.

The units for reporting vertical depth are inches and hundredths of an inch in the

customary U.S. units, and millimetres and tenths of a millimetre in the SI system.

Three methods are used to measure precipitation: rainfall gages30, networks of

rainfall gauges31, and radar measurement. Radar can detect any type of hydrometeors in

the atmosphere. Reflected radar energy, when displayed on a screen, is called an echo.

30 There are at least three types of gauges commonly in use to record depth: tipping bucket, weighing, and float 31 Networks of rainfall gauges are designed for data collection from areas ranging from 1000-100,000 Km².

Page 87: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 77 -

Figure 5.1: Flood Components

In general, the intensity (brightness) of an echo is a measure of precipitation.

Rainfall estimation from radar measurement has been a frequent topic in

meteorological, hydrological, and remote sensing literature in recent years (Krajewski

and Georgakakos, 1989; Mimikou and Baltas, 1996). Another method of data

acquisition is the joint use of radar and rain-gage data (Doviak and Zrnic, 1984). This

method combines the high point accuracy of rain-gages and the wide area coverage of

radar.

Data is also required for the basic spatial-data, so that modelling can be extended

by the use of maps. Spatial-data includes, for example, land use, vegetation cover, and

hydrography routing elements such as streams, rivers, and lake definition. These maps

can be obtained in digital form from a variety of public and commercial sources, but are

also often digitised by the user.

Page 88: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 78 -

5.2.2 Data Transmission

Rainfall and river height data are transmitted via radio and telephone telemetry

from automatic stations and via telephone-computer links. Wireless modems are used in

a variety of applications for traffic monitoring and management, and environmental

monitoring.

Satellites can be used as repeaters for the transmission of data from remote data

collection sites. Data collected from remote sites can be transmitted to a communication

satellite, which then retransmits the data to a ground station for processing and

dissemination to users. The use of communication satellites expands the scale of data

transmission from local to regional and global.

5.2.3 Meteorological Forecasting

Meteorological forecasting is provided by weather service agencies that monitor

and dynamically forecast weather and rainfall conditions. They provide solutions and

services that meet the needs of many interested communities such as the general public,

government, and schools. Information is dispersed through broadcasters and online

media. They provide an early notice of hazardous conditions to government agencies so

that emergency responses can be taken.

5.2.4 Flood Forecasting

A flood warning system usually consists of at least three modules:

1. A database management module.

2. A map-oriented data editing and presentation module.

3. A module for model preparation, simulation, and post-processing of results.

A range of analytical techniques is available for the investigation of water

resource systems. Many of these are called modelling or systems analysis techniques;

they can be generalized, site-specific, or problem-specific in approach. A generalized

model is often costly and time consuming to develop initially, but is often easier and

Page 89: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 79 -

cheaper to apply to new problems in the future. In contrast, a site-specific or problem-

specific model may be cheaper to develop for a first application, but require a greater

investment of effort to develop further models for each subsequent application.

Most models produce a set of default or standard outputs. A flexible plotting

utility is provided to aid in the analysis of the input data and the presentation of results.

Examples are plots of time series, auto-correlation, regression, and error analysis. The

utility may also include simulation tools that enable sampling from probability

distributions. Such simulation tools allow a quantitative investigation of the ability of

the identification and parameter estimation procedures to predict desired properties or

derived quantities of probability distributions.

5.2.5 Warning Dissemination

Warnings are communicated to radio stations for broadcast, and to the local

councils, emergency services, and a large number of other agencies involved in flood

response activities. Warnings are also communicated via telephone, fax, and the Web to

people located in hazardous areas.

5.3 Web-based GIS Functionality: A Basic Investigation

The analytical work of this project began with the investigation and design of

some simple HTML and CGI scripts that perform address location, animation, map

navigation, and other functions. One objective was to evaluate the CGI and Java-based

approaches and to choose one for implementation. This section presents the findings of

the investigation into the CGI approach. The section includes a brief demonstration of

the obstacles in using CGI to implement simple GIS functions on the Web. In Section

5.4, the server-side-approach investigation is presented in more detail, by describing

how a GIS package can be linked to the Web through CGI scripts written in Perl. In the

next chapter, the client-side Java approach investigation is presented. Consequently, this

chapter describes the first stage of server-side GIS operations.

Page 90: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 80 -

5.3.1 The Address Locator Problem

Denver Tourist, a Web-based program, is an example of an address locator. It

extracts information about shopping malls in the city of Denver, Colorado, U.S. The

Denver Tourist program displays an image of the city of Denver and waits for the user

to click on a hot link (squared numbers) on the image (Figure 5.2). When the user clicks

on a hotspot area, a record number (in squares) is sent to the server as a parameter of a

CGI script, which then opens a database file on the server.

Figure 5.2: Address Locator Example

Subsequently, the record is extracted from the database and sent back to the user

as an HTML form. Every time a hot-link area is clicked, the same interaction takes

place. Below is an extract of the Tourist Centre HTML file (Table 5.1), the database file

mall.db (Table 5.2), and the CGI program malls.cgi (Table 5.3).

1 <HTML>

2 <HEAD><TITLE> Tourist Centre for City of Denver, CO. </TITLE>

</HEAD>

3 <BODY><center>

4 <h2> Tourist Info Centre for City of Denver, Co. </h2>

5 <h3> Please click on a shopping center square to retrieve its

address.</h3>

6 <img src=’’denver.gif usemap=’’#denver’’border=’’0’’ <br> 7 </center>

8 <map name = ‘’denver’’>

Page 91: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 81 -

9 <area shape=’’rect’’ coords=’’202,81,222,103’’ href=’’/cgi-

bin/malls.cgi?mall=7’’>

10 <area shape=’’rect’’ coords=’’296,81,317,103’’href=’’

/cgibin/malls.cgi?mall=10’’>Top of

Table 5.1: Tourist Centre HTML File

The HTML file of Table 5.1 displays the Denver map on the screen (line 6) and

defines the coordinates of the hot-link areas. These areas are defined as rectangles (lines

9, 10), with the upper-left corner and lower-right corner coordinates, i.e., [202, 81],

[222, 103]. If the user clicks in this area, a CGI program called malls.cgi is invoked and

supplied with the parameter 7 (line 9). In the malls.cgi program, the variable mall (lines

10, 11) is substituted with the parameter supplied by the HTML form. Simple text files

(malls.db) are stored in the Web-enabled database. Table 5.2 shows two records of the

malls.db file. Each record in the database is preceded with a record number that is

linked to the hot-link areas in Figure 5.1.

1 Southglenn Mall S. University Blvd. Littleton, CO 80122 (303) 795 0856 = = = = = = = = = = = 2 Cherry Creek Mall 3000 E First Ave. Denver, CO 80110 (303) 388 3900 = = = = = = = = = = =

Table 5.2: Database File (malls.db)

1 chomp ($pwd = ‘pwd’);

2 use lib ‘$pwd’;

3 use CGI qw (:standard);

4 $small_db= ‘’/malls.db’’;

5 my $mall_param = param(‘mall’);

#open the database

6 open(MALL_DB, ‘’<$small_db’’) || die ‘’unable to open MALL_DB for

reading.\n’’;

7 @db_records = <MALL_DB>; #assign it to array

Page 92: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 82 -

8 close MALL_DB;

9 foreach $line (@db_records)

10 {

11 if($line !~ /^===/)

12 {

13 chomp $line;

14 $record_line .= $line . ‘’:’’;

15 }

16 else

17 {

18 ($id, $mall, $addr,$city,$phone) =split(/:/,$record_line);

19 $mall =~ s/^\s+//g;

20 if ($mall_param == $id)

21 {

22 last; #Terminate execution

23 }

24 $record_line = ‘’ ‘’;

25 }

26 }

Table 5.3: CGI Database Program

The CGI program shown in Table 5.3 is written in Perl. The program opens the

database file malls.db (line 6) and assigns its records to an array (line 7). The foreach

statement (line 9) loops and extracts the records from the array and assigns them to

variables (line 18).

Next, the program checks to see whether id = mall (line 20), the number of the

parameter that was sent from the HTML to the server. It then terminates the program,

creates an HTML form within the program, and displays the record to the user as an

HTML form. If the parameter number does not correspond to the record, the program

continues looping until the parameter mall equals the record number id.

5.3.2 Animation Programs

An animated GIF is a file in the Graphics Interchange Format, specified as

GIF89a, which contains within a single file a set of images presented in a specified

order. An animated GIF can either loop endlessly or present a single sequence. The

Page 93: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 83 -

creation of animated GIF files requires a GIF animation program. A number of GIF

animation programs are available, including Animagic32, Unlead GIF Animator33 and

Alchemy Mindworks34. To create an animated GIF in the GIF Construction Set requires

the construction of individual frames, either by hand or by using a computer-drawing

program. Java and other tools can be used to build applets that achieve the same effects

as an animated GIF. These tools are investigated in Chapters 6 and 7. An animated GIF

can be handled by most browsers and are easy to build. Table 5.4 presents an HTML

file for an animated GIF.

1 <html>

2 <head><title>/animation</title></head>

3 <center>

4 <br>

5 <font face=’’arial’’ size=’’5’’> <b> Animation</b></font><br>

6 <img src=’’vegetation.gif’’ border=3>

7 </center>

8 </body>

9 </html>

Table 5.4: Animation HTML

5.3.3 Navigating Maps: Zoom in/Zoom out/Pan Programs

Map navigation involves two functions — pan and zoom. If a user decides to

zoom in a bitmapped image, the server must create a new bitmap and transmit it to the

user. A program called splitImage is used in this project to split a GIF file into

100×100-pixel pieces. SplitImage allows the user to divide images into multiple parts

for Web pages. Images can be divided by any number of rows and columns. Row and

column sizes can be edited numerically, or processed automatically by specifying the

number or size of rows and columns. SplitImage creates the maps beforehand. It

generates filenames with the format mapName_x_y.gif.

32 Animagic GIF Animator http://www.rtlsoft.com/animagic/ 33 Ulead GIF Animator http://www.ulead.com/ga/runme.htm 34 GIF Construction Set Professional http://www.mindworkshop.com/alchemy/alchemy.html

Page 94: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 84 -

An HTML file is generated on the Web-based server to invoke a program called

imageViewer (discussed below). An important piece of this file is shown below. In

order to zoom in, a special technique is needed to detect the coordinates of the pointer

when the user clicks on the map. The [X,Y] coordinates and zoom factor are

immediately transmitted back to the Web-based server. The Web-based server uses

these variables to retrieve a map and return it to the user.

<a href=

’’/cgi-bin/imageViewer.pl?x=0&y=0&zoom=1&dir=/mapDir&image=map’’</a>

The parameters sent to the imageViewer program are highlighted in red in the

above program (X, Y, zoom, dir, and image) where

• [X,Y] is the starting location

• Zoom is the zoom-in level (0,1,2)

• Dir is the directory where the generated GIF files are located

• Image is the base-image file name

ImageViewer is a Perl program that displays images created by splitImage

according to the parameters sent from the HTML form. ImageViewer will display

images row-by-row. For example, if the user sends the parameters, 0, 0, 1, mydir, rain,

to ImageViewer, the program will display the rain_0_0.gif. If the user wants to pan the

image in the easterly direction, he or she clicks the pan-east button, thus requesting

from the server the image rain_1_0.gif. If the user wants to pan the image in the

southerly direction, he or she clicks the pan-south button, thus requesting the image

rain_0_1.gif. The amount of time needed to complete these steps is a major hindrance to

usability.

The complete program is included in the accompanying CD. Figure 5.3 shows

the map navigation interface of an image. When one of the bitmapped triangles is

selected, the program pans the image according to the triangle direction.

Zoom-in and zoom-out are created and manipulated by imageViewer in the

same manner as pan. A magnifying glass icon allows the user to zoom in to a specific

area based on the current image-zooming factor (0, 1, or 2).

Page 95: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 85 -

Figure 5.3: Map Navigation

5.3.4 A Flood Prediction Service

This section explores a simple GIS-based hydrological system. The system

allows for data display according to parameters such as city name, latitude, and

longitude; data insertion for rainfall data and river flow; and slope calculation. The main

problem with this simple implementation is that it uses pre-designed images generated

by a GIS package and it uses the Web simply to display the information. The data

insertion for rainfall and river flow uses simple text files, as opposed to a DBMS.

The Web page shown in Figure 5.4 enables Web users to select one of three

different activities: request a flood prediction map, add rainfall data, or add river flow

data. The user fills the text boxes (city, latitude, and longitude) and clicks one of the

radio buttons (North, South, East, or West). Finally, the user chooses one of the Service

buttons to complete the query and transmit the parameters to the Web-based server.

Suppose that a user clicks the Flood map button. The result is a static image

generated by the GIS model beforehand. Figure 5.5 shows the result of the flood map

program.

Page 96: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 86 -

Figure 5.4: Flood Prediction Service

Figure 5.5: Flood Map Result

Most simulation models require several important hydrological parameters

derived from a Digital Elevation Model (DEM). These parameters include slope,

aspect, drainage network, and variables such as soil moisture and rainfall data.

Topographic parameters are used as input data for actions and for other analysis. Slope

is one of the most important and widely used criteria. Aspect is also the starting point

Page 97: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 87 -

for many derived parameters using flow paths such as drainage networks, contributive

areas, etc.

Therefore, some important hydrological parameters derived from a DEM were

implemented into this system. A program was written in C language to calculate

hydrological parameters such as slope. In this example, a DEM is based on application

data from the Velez Rubio region in Southeast Spain. From this DEM, two important

and useful surfaces of information can be derived. The first is a slope analysis, which

computes the steepness of the surface, in percent or degrees; the second is an aspect, or

orientation map, which computes the direction the surface is facing.

Different methods are used for estimating the local surface within the window,

such as the maximum drop, linear regression model (Travis et al., 1975; Evans 1980),

full quadratic surface (Evans, 1980), partial quadratic (Zevenbergen and Thorne, 1987),

and the third-order finite difference method for calculating gradient and aspect (Horn,

1981). Most of the methods for calculating slope and aspect use a three-by-three

moving window that is successively moved over the grid. To calculate slope from a

regularly-gridded DEM, an assumption must be made about the way the grid points

represent the land surface. It is common to use a three-by-three cell window around a

particular grid point to approximate this surface, since the local slope represents the

difference compared to the neighbouring pixels. Different assumptions of the shape

within the window will result in different results (Skidmore, 1989; Johnes, 1996).

The slope calculation program uses the maximum-drop algorithm and generates

the slope of a DEM in percentage. In this method, the slope is defined as the direction of

the maximum drop from a central pixel to its eight neighbouring cells. From this

definition, we can define the maximum drop in the three-by-three window as the

maximum ratio of the change in Z to the change in X.

Page 98: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 88 -

The equation below demonstrates this method. The aspect is defined by

(Burrogh, 1986):

( )( ) ππ ><−−= Adxdz

dydzAtan

The complete code for this function is included in the accompanying CD.

Figure 5.6 shows an example input DEM to the slope program. Figure 5.7 shows

the slope result generated, and displayed by IDRISI (see below).

Figure 5.6: DEM of the Velez Rubio Region

][ 8)1,1,(,

..............2),1,(,

1)1,1,(

XZ jiZ ji

XZ jiZ ji

XZ jiZ jiMax

S

∆++−

∆−−

∆−−−

=

Page 99: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 89 -

Figure 5.7: Slope Result

The examples above demonstrate the basis for the server-side approach. This

general-purpose programming tool lacks many capabilities. It can be used only for non-

real-time applications. For example, it is very difficult to draw a box or a line, zoom in,

or drag an image using this approach, because each of these operations must be

recreated using the program in the server. The hot-link areas or the rectangle

coordinates such as [202, 81, 222, 103] (see Figure 5.1) are pre-designed and pre-

configured in the HTML files. Therefore, a great deal of work must be performed in

both the image manipulation (drawing the rectangles) and in the HTML file (defining

the image coordinates and linking them to database records in the text files [see line 10

in Table 5.1]).

The animation GIF program is also an external package, which must be executed

from the server-side. The problem with this approach is that the interaction of the user is

required to set the number of frames and the speed of the animation in order to perform

animated sequence of maps. Therefore, the use of this method cannot be used in real-

time applications where the user intervention should be minimal.

Another major problem of the server-side approach is the use of text files instead

of a DBMS. Although the flat-file database approach is now largely obsolete in design

terms, it remains integral to many applications that were developed in the 1960s and

still in use today. As long as the database is relatively small, the file system serves its

role well as a data repository. However, if the organization grows and data becomes

Page 100: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 90 -

more complex, keeping track of data in the file system becomes more difficult. While

the file system is available for most platforms, it is not constant and requires a separate

version for each operating system. Adding to this complexity are the needs for data

dependency, indexing, transactions, concurrency, speed, and query support. The lack of

ad-hoc query capability also puts heavy pressure on programmers to develop code even

for the simplest reports. Any structural change in the database requires that all

application programs accessing the database must be modified, even for the smallest

alteration such as a change of data type (Al-Sabhan, et al., 2000). These modifications

are required, because the file system exhibits structural dependence, and this

dependence renders the file system unsuitable for all but the simplest of applications.

Thus, adequate database support is not only fundamental to all GISs but also to the

applications of GISs (Worboys, 1995).

This basic investigation has demonstrated that it is very difficult to build a real-

time hydrological model using the server-side approach. The data input, image

manipulation, and data conversion must be performed beforehand and the intervention

of the developer is usually required.

In the next section, a more advanced technique is presented to determine if it is

suitable for building a real-time hydrological modelling tool. An evaluation is given at

the end of the section.

5.4 Advanced Investigation

This section presents a more detailed investigation into the server-side approach

to linking a GIS package to the Web. The implementation uses IDRISI35, a grid-based

GIS package developed by Clark University, Worchester, Massachusetts, U.S. Unlike

the method presented in the previous section, in which some GIS functions were

implemented without a GIS package, here a selection of IDRISI’s GIS functionality is

executed over the Web. The required parameters, IDRISI command, input filename,

output filename, etc., are sent from an HTML page to a Perl script, which in turn

35 Idrisi software from Clark Lab available at: http://www.clarklabs.org/

Page 101: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 91 -

launches the IDRISI command and supplies it with the parameters. IDRISI then invokes

the command supplied by the user and transmits the result to the server. The same Perl

script executes another program within IDRISI to convert the result into a TIFF36 format

that can be converted by any graphic program. The Perl program then supplies the

graphic program with parameters, such as the input file name and the output graphic

format, like JPEG or GIF, which are understood by the browser. Finally, the script

creates an HTML file and displays the result back to the user in the browser. Figure 5.8

shows a system diagram.

Figure 5.8: Web-based GIS System Diagram

The effectiveness of an information system depends on how accessible the

information is to the user (Blades, 1993). The majority of users are not interested in the

hardware or software of the system, but are simply interested in obtaining a particular

result with as little difficulty and confusion as possible. Blades (1993) suggests that

navigational aids are very important in enabling the user to learn and successfully

navigate a digital environment. Browsing, searching, querying, and retrieving metadata

are commonly used on the Web. To provide such facilities, and to show that one can

36TIFF is a tag-based image file format that is designed to promote the interchange of digital image data. The TIFF format originated in 1986 when Aldus Corporation and leading scanner vendors worked together to create a standard file format for images used in desktop publishing.

Page 102: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 92 -

integrate heterogeneous systems and provide access to data from multiple sources, a

uniform interface was designed and implemented. This interface, providing access to

IDRISI via CGI, comprises two main components: HTML pages and Perl scripts. See

Figure 5.9a.

Figure 5.9a: HTML Interface

When a user clicks the link access, the Web page of Figure 5.9b is opened via

CGI. This page shows the main menu of some of IDRISI’s modules, which are related

to hydrological modelling. The user can execute some of these modules through this

Web page.

The structure of the menu system is shown in Figure 5.10. Note that it was not a

goal to run all IDRISI commands from the Web, which can easily be done, but rather to

exhibit some of its functionality via the Web, in particular that relating to hydrological

applications. All remaining commands could be provided in the same way.

Page 103: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 93 -

Figure 5.9b: Main Menu

Figure 5.10: System Structure

Figure 5.11 shows two sub-menus. The first is Image Description, which

displays the contents of an image: file title, data type (real/byte/integer), file type

(binary/packed binary), number of columns, number of rows, reference system

(plane/lat-long), reference unit (m/ft/deg), minimum and maximum x and y, resolution,

Page 104: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 94 -

minimum and maximum values of the image, and so on. Figure 5.12 shows the interface

by which the user needs only to select the name of the image and press a button in order

for the program to run on the selected image. Because this function is so simple and

straightforward, the program is written in Perl and does not use any external programs

such as IDRISI. Figure 5.13 shows the result displayed on a browser. The complete

programs are included in the accompanying CD.

Figure 5.11: File Sub-Menus

Figure 5.12: Image Description Request

Page 105: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 95 -

Figure 5.13: Image Description Result

The second sub-menu of Figure 5.11 is the File Listing, shown in Figure 5.14,

by which the user can dynamically create a directory of contents. Perl provides a rich set

of file and directory manipulation routines such as removing files, renaming files,

making and removing directories, modifying permissions, and modifying timestamps.

When the user clicks the ‘Get Directory’ button of Figure 5.14, the Perl program reads

the content of the directory where the data resides and displays the files for the user to

review.

In Figure 5.15, the directory is inserted into a pull down box to display the image

files (.IMG, IDRISI’s file format) and document files (.DOC, description files for IMG

files) that the directory contains. If a user chooses to view an image, the program

converts the IMG file to the GIF format through an image management package. The

program then displays the result in the user’s browser.

Page 106: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 96 -

Figure 5.14: Create Directory

Figure 5.15: Directory Output

The complete program for this procedure is included in the accompanying CD

along with the HTML code that generates the output page.

Page 107: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 97 -

The following hardware and software packages were used to build this system:

• Pentium II

• Windows NT 4.0 Operating System

• Microsoft Internet Server 3.0

• ActiveState Perl version 5.6.1

• Mini SQL Version 2.0.4.1 - Forge Alpha Build #9

• GD (Graphic Engine) version 1.33.

The following subsections present IDRISI functions used in this system.

5.4.1 Slope

Slope is an important parameter, because it is a prime factor in infiltration

capacity. Combined with elevation, slope can produce orographic37 effects. Combined

with aspect, slope helps determine the insolation considerations that play a role in

evapotranspiration38 and snowmelt. In this section we present the code used to call the

slope calculation routines of IDRISI.

Like a command shell, a Perl program can launch new processes. It can do this

in more than one way (system, fork, exec, backticks, and pipes). The simplest of these

methods is the system function. The function is a single string to a new command shell

to be executed as a command. When the command is finished, the system function

returns the exit value of the command (i.e., 0 if everything went OK).

Figure 5.16 shows an example result of the slope function. The complete

programs that perform the slope and the conversion process are included in the

accompanying CD.

37 Orograhy: is the study of elevation relief between highlands (mountains) to other land and water features. 38 Evapotranspiratation: is the sum total of water returned to the atmosphere from surface and ground (soil) water, ice, snow, and vegitation.

Page 108: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 98 -

Figure 5.16: Slope Function Result

5.4.2 Watershed

The IDRISI routine watershed can either determine all watersheds of a

maximum size using the area threshold option, or find the watershed area above a pour

point using the seed-image option. The seed image should be a point or points at the

mouth of a watershed in a raster file. To determine if a cell belongs to the watershed, the

direction of flow is evaluated from the aspect image to determine whether it flows into a

known watershed cell. Through multiple sweeps down and up the image, the watershed

is built until no further growth is possible. Flat areas are assumed capable of

flow in all directions. The watershed command requires the name of the aspect

image as well as the name of the target image that contains points from which the

watershed is determined. The name of the output image and title must be entered.

Finally, an angular region (in degrees) is required. The angular region is that region

over which water will flow into a neighbouring cell, or from the viewpoint of the

receiving cell. The angular region determines the range of directions from which water

will be accepted into a cell. The default is 90 degrees, centred on the most direct route

from cell centre to cell centre. For example, a cell accepts flow from the immediate cell

to the northwest, if the aspect of that northwest cell is between 90° (east) and 180°

(south) degrees azimuth. The width of the angle thus influences the calculation of the

size of the watershed. The output image consists of ones in all cells belonging to the

Page 109: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 99 -

watershed and zeros everywhere else. The interface of this function is displayed in

Figure 5.17. The complete program of watershed is included in the accompanying CD.

Figure 5.17: Watershed Function Interface

5.4.3 DEM Display

The display function is a simple operation. The user selects the file that he or she

wants to view and clicks on the display button. This action sends the filename as a

parameter to a Perl program running on a Web-based server. At this point, the Perl

program executes some commands and returns control to the Web-based server. The

Web-based server retrieves the file (JPEG image) from storage and sends it to the user.

The complete code needed to complete the display request is included in the

accompanying CD. Figure 5.18 shows the DEM generated by the Web-based server

using display.pl.

Page 110: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 100 -

Figure 5.18: DEM Display

Display.pl can convert and display any data-file format that is not recognized by

browsers. This straightforward implementation is highly essential in hydrological

applications. For example, this method allows for the displaying of digital elevation

data, slope result or any other flood model results of any format in a browser.

5.4.4 Overlay

Overlay produces a new image from the data of two input images. The new

values result from applying one of nine possible operations listed below to the two input

images. Overlay requires that the user input the names of the first and second images as

well as a name for the output image. An overlay option must then be selected from the

following list:

Add: pixels from the two images are added.

Sub: pixels from the second image are subtracted from those of the first.

Mul: pixels from the two images are multiplied.

Ratio: pixels from the first image are divided from those of the second image.

Exp: pixels from first image are raised to the power of those of the second image. Min: output pixels represent the minimum of those in corresponding positions on the first and second image. Max: output pixels represent the maximum of those in corresponding positions on the first and second image.

Page 111: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 101 -

Figure 5.19 shows the Overlay Page. The complete code of the overlay

operation is included in the accompanying CD.

Figure 5.19: Overlay Page

5.4.5 Histogram

Histogram produces a frequency histogram of cell values in an image. It creates

the histogram by dividing the data range into classes of a user-specified width. The

frequency within each class is tabulated in numeric output. Histogram also outputs basic

statistics about the file; the class width, number of columns, number of rows, maximum

value, minimum value, mean value, range, and standard deviation. The Histogram Page

is shown in Figure 5.20 and the result is shown in Figure 5.21. The complete histogram

code is included in the accompanying CD.

Page 112: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 102 -

Figure 5.20: Histogram Page

Figure 5.21: Histogram Result

GIS packages usually include tools to prepare graphics. In a raster-based GIS,

the most frequently found graphics tool is the histogram. A histogram of frequencies

displays the distribution of values presented in pixels. The histogram provides two

benefits. The first is exploratory analysis, which reveals the nature of the datasets (e.g.

distribution) and numerical measures such as proportion, percentage, mean (average),

range, and standard deviation. It is vital that new data should be examined in simple

ways before they are subjected too more sophisticated statistical analysis. Preliminary

examination of data may, for example, lead to one of the following conclusions.

• The data includes wrong or misleading values.

Page 113: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 103 -

• The nature of the variation is made readily apparent. For example, we

may find that the distribution is skewed39 whether there is a need to

transform it to normality. For data that cannot be transformed easily,

non-parametric geostatistics is available which is distributed free

(Journal, 1983). Or that the data comes from two or more different

sources, which differ in some important respect.

• The sophisticated analysis is not be required; geographically interesting

effects are blatantly obvious.

The second advantage of the histogram is that it produces a frequency

distribution of data sets. For example, in some applications that can define the

uncertainty associated with a DEM derived from digitised contour data, it is possible to

obtain clues as to the origins of the derived datasets. In Figure 5.22, regular peaks occur

when we examine the frequency distribution of such a DEM. These peaks are not a

feature of reality; rather they are evidence of very systematic errors in the database. One

can conclude that the interpolation procedures used to calculate a regular grid of height

from a set of digitised contours has a tendency to interpolate values that are identical to

those of nearby contours.

Figure 5.22: Example of Histogram Use

39 Skewness is defined as asymmetry in the distribution of the sample data values. Values on one side of the distribution tend to be further from the 'middle' than values on the other side.

Page 114: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 104 -

Statistics plays an important role in both describing the sample data, as well as

making inferences about the data. However there may be erroneous values, or the data

may be a mixture from more than one source. Such characteristics are often detected

easily by graphical means. Haslett et al., (1990) and Unwin et al., (1990) described how

data can be explored using dynamic graphics. Having inspected the data and displayed

them simply as graphs and dot or area maps, analysis then can be proceeded to another

stage.

5.4.6 User Input

The user can also directly enter commands in the user command field. The

following set is available:

• Slope {InputFileName}=OutputFileName. PalletName

• Aspect { InputFileName }=OutputFileName. PalletName

• Describe { InputFileName }

• Display { InputFileName }. PalletName

• Watershed { InputFileName + target}=Output FileName. PalletName

• Overlay { InputFileName1 Operator InputFileName2}

= OutputFileName. PalletName

• Histo {InputFileName}

Figure 5.23: User Input

Page 115: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 105 -

Command syntax rules are conventional; i.e., the first word in a command field

must be a command such as slope, aspect, histo, etc. Argument ordering must be

followed. Parentheses and equal signs are optional. Where a colour palette name is

required in a command, a dot must precede it. Finally, one space must separate each

word in a command line. However, multiple spaces are treated as one. General help that

describes these rules, as well as the description of each command, is available through

the User Interface Page (see Figure 5.22).

5.4.7 Graphing

Probability analysis is a graphical method used to determine the probability or

frequency of an event. It can be used for hydrological nowcasting to determine the

occurrence of yearly or seasonal rainfall. For rainfall data visualisation, this method is

as valid as any analytical method. The first step is to obtain annual rainfall totals from

the area of concern. In locations where rainfall records do not exist, figures from

stations nearby may be used with caution. It is advantageous to obtain long-term

records.

Although there are many methods that can be used to generate Web graphics,

Perl is well suited for Web graphics programs for several reasons (Wallace, 1999):

• Perl is ubiquitous on the Web;

• Perl has many free, reusable modules for generating Web graphics such

as the GD and GIFgraph40 modules;

• Perl has interfaces to more powerful image manipulation tools such as

ImageMagick41 and Gimp42;

• Perl has a bevy of well-developed modules for various Web applications

that support the programming of Web-based graphics. The popular CGI

module allows the user to easily create CGI scripts, for instance;

40 GIFgraph is a Perl module that expands on the capabilities of GD by offering a number of methods for creating graphs and charts. 41 ImageMagick is a collection of functions and a transparent for reading and writing over forty different graphics file formats. It has an object-oriented Perl interface called PerlMagick. 42 Gimp or the GNU Image Manipulation Program is an image manipulation system. It allow the user to write plug-in scripts in Perl. Gimp has its own scripting language, Script-Fu that allows you to access internal procedures and plug-ins and create high-level scripts.

Page 116: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 106 -

• Perl is easily integrated with high performance Web-based servers. The

mod_Perl extension to the Apache Web server, for example, offers a

significant performance improvement over other implementations;

• Perl is a fast, well-documented and popular scripting language.

GD is a graphic library written in C for manipulating GIF file formats. It is

designed as a fast, compact group of functions that may be used for creating graphics

for the Web (Wallace, 1999). In addition to the ability to read GIF files, GD has some

drawing and painting capability, but it is, nevertheless, fairly limited. It provides

routines for drawing lines, arcs and polygons, cutting and pasting between images,

filling contiguous areas with colour, and superimposing text on images. A script that use

the GD module to create graphics generally has five functions: creating the image,

allocating colours in the image colormap, drawing on or manipulating the image, and

writing the image to a file or browser.

Because GD has become the de facto graphics manipulation module for Perl

(Wallace, 1999), this library was used for the present research. The graph interface in

Figure 5.24 has been designed to show changes in rainfall, temperature, snowfall, etc.,

over daily, monthly, and yearly periods. The program provides the user with the options

to view any of these changes, as either line graphs or bar graphs.

Figure 5.24: Graph Interface

Page 117: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 107 -

In order to use the GD module, it must be imported into the script that calls it.

The command ‘use GD’ will give the developer access to the following classes:

GD::Image (provides the means for reading, storing, and writing image data), GD::Font

(stores and provides information about fonts used for rendering text on images), and

GD::Polygon (implements a number of methods for managing and manipulating

polygons). The complete code of the GD module is included in the accompanying CD.

In line 1 the program uses the GD module. To create a new image, it first creates

a new, empty image object of a given width and height. In line 3 an empty image has

been created using the new method of the image class. To draw or manipulate the

image, information about the colours available in the image, is needed. A GD image

supports a maximum of 256 colours, which are stored in the image’s colour table. To

add new colours to an image’s colour table or to get colour indices of existing colours,

the ColorAllocate() method is used with a list of decimal red, green and blue values to

add a new colour table. Lines 5-8 show how this method is used to allocate white, black,

red, and blue colours in the newly created image (graph). The Transparent() and

Interlace() functions make any pixel of the colour palette in an image transparent and

interlaced. Line 10 sets the background colour to transparent and Line 11 makes them

interlaced. The Rectangle() function draws a rectangle with its upper left corner at [x1,

y1] and its lower right corner at [x2, y2] with a third argument specifying the colour. In

Line 13 the Rectangle function draws a frame around the picture. The String() function

in line 15 writes the string onto the image with the upper left corner of the text-box

starting at the coordinate [x, y]. The font must be one of the six GD fonts: gdTinyFont,

gdSmallFont, gdMediumBoldFont, gdLargeFont, or gdGiantFont .The function Line()

on Line 19 draws a single, pixel-wide line from [x1, y1] to [x2, y2]. Finally, Line 25

uses the function Gif() to convert the image into the GIF format and send it to the

browser. Once again, the graph interface is shown in Figure 5.24.

Figure 5.25 shows the result of a monthly graph generated by the above

program. The bar graph represents a twelve-month period of the variable rainfall for the

year 1997 by calculating the mean value of twelve months of actual rainfall data. The

graph result shows the highest rainfall value (2.8mm) in the month of January and

lowest value in the months of September, November, and December (0.0).

Page 118: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 108 -

Figure 5.25: Bar Graph Result

Figure 5.26 shows the same result using a line graph. The graph codes are

included in the accompanying CD.

Figure 5.26: Line Graph Result

5.4.8 Database Interaction

This section investigates the use of CGI in the creation of Web-based database

applications. CGI, as already mentioned, is a protocol for allowing browsers to send

Page 119: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 109 -

data to Web-based servers. The Web-based server then provides the data to a specified

external program via environment variables or standard input.

To overcome the need to add DBMS support to an existing language, such as

Perl or Tcl, database vendors include their own scripting languages pre-configured with

support for database API43. If one is familiar with Oracle Pro*C, Informix,ESQL/C or

other packages that involve embedding SQL into C programs, one will find it easy to

grasp the concept of SQL embedded HTML templates. The vendors shown in

Table 5.5 (Ju, 1997) provide template packages for Web-publishing.

Table 5.5: Database Vendors

Source: Ju, 1997

The main concern with a Web application that takes advantage of SQL-

embedded HTML packages is that they are strongly tied to the vendor and database of

origin (Ju, 1997). It is not easy to port SQL-embedded HTML pages from one DBMS to

another. Therefore, in the present research, these packages were not used, and Perl with

mSQL (mini SQL) was applied. mSQL is a lightweight database engine. One of the

major applications of mSQL is as a back-end database for Web sites (Jepson and

Hughes, 1998). People wishing to access mSQL from standalone scripts or via the Web

now must learn an SQL embedded HTML package (W3-mSQL). However, mSQL can

43 Application Program Interface: An API can be contrasted with a graphical user interface as interfaces to an operating system or a program. API is the specific method prescribed by a computer operating system or by an application program by which a programmer writing an application program can make requests of the operating system or another application.

Vendor Database Name HTML and SQL Template Package

IBM DB2 Net.data

Illustra Illustra Web DataBlade

Informix Universal Server Web DataBlade

Hughes Technologies MSQL W3-mSQL

Sybase Sybase Web.sql

Page 120: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 110 -

still be integrated with many popular scripting languages. Therefore, many options exist

for those who have a preference toward a particular language.

The diversity of APIs presents a problem. The total number of different database

engines (Oracle, Informix, mSQL, etc.) gives rise to complicated circumstances. For

example, if a user wants to develop Perl applications with a given database, they must

become skilled in that database’s API. The user who wants to develop applications that

interface with Oracle must become a Perl-Oracle expert. The user who wants to develop

applications that interface Informix must become an expert in Perl-Informix, and so on.

The problem can be overcome by using the Perl Database Interface (DBI), because it

provides a certain level of independence for Perl scripts. The methods used for

connecting to and interacting with the database-server are the same, regardless of what

database-server is used.

The DBI module serves the same purpose as ODBC’s driver manager44. It is

responsible for loading a database-driver (DBD). From that point on, it directs any

database interaction to the appropriate driver for execution. In order to use the DBI, the

DBI module must be installed. For each type of database engine, a corresponding

database driver or DBD module such as DBD:mSQL, needs to be installed. Using

DBD:mSQL requires a database name, hostname and port number. A valid data source

string for the time-series database would be dbi:mSQL:database name:hostname:port.

The code for connecting to and disconnecting from a database is included in the

accompanying CD.

In mSQL, a database called ‘timeseries’ was created for the time-series data. The

database contains several tables for each variable such as rainfall, recharge, etc. The

database also contains other tables, which store the filenames of every variable and

identify every period of time from which the user may select. Table 5.6 shows a sample

rainfall table taken from the rainfall database. This table is used for Figure 5.28 and 5.29

in the database interface.

44 A dynamic-link library (ODBC32 DLL) that loads ODBC database drivers on behalf of an application. This DLL is transparent to the application.

Page 121: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 111 -

Year_month_day_hour Rain value (mm)

1999_02_1 0.8

1999_02_17_21 0.5

1999_02_17_22 1.0

1999_02_17_23 1.5

1999_02_17_24 1.5

Table 5.6: Rainfall Table

Table 5.16 shows the variable table (rainfall, recharge, etc.). Each table has two

columns (date_hour and rain values in mm). The date_hour format stores the dates in

YYYY_MM_DD_hour. The second column stores the rain values as real numbers. This

table is to be used for the Get File Name option in the database interface of Figure 5.27.

Table 5.7 shows the filename table. The table has three columns (date_hour,

filename and variable). The filename column stores the file name of the timeseries. The

variable column stores the variable name that belongs to this file.

Year_month_day_hour Filename Variable

1999_01_01_02 Rainfall_99.tss Rainfall

1999_01_01_03 Rainfall_99.tss Rainfall

1999_01_01_02 Rainfall_99.tss Rainfall

…………. …………. ………….

Table 5.7: Filename Table

In this research project, two database interfaces were developed. The first

interface is for the user to retrieve data from the database. The second interface is used

by the administrator to insert, delete, and update data. The user-interface allows the user

to specify the particular columns he or she wishes to retrieve as well as a parameter that

identifies the records or rows that are of interest. The user interface performs the

following procedure:

1. get a filename - Search the filename table to find the name of the filename.

2. list data - Query the timeseries data according to some parameters that

identify records.

3. select a single record - Retrieve a single value.

Page 122: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 112 -

The purpose of the first operation ‘get a filename’ is to allow the user to search

the filename table. The user might need to locate some data according to some specific

variable (rainfall, recharge, etc.) and date (year, month, day, and time). The file that

stores the desired data contains this information in its filename. The following SQL

statement performs this operation:

SELECT filename FROM FilenamesTable WHERE datum =’$datum’ AND variable = ‘$FORM {category}’

Figure 5.27 shows the interface for this operation.

VARIABLE:

Year:

Month:

Day:

Time [hour]:

SUBMIT

Figure 5.27: User Interface of ‘get a filename’ Option

The complete code for this operation is included in the accompanying CD.

Figure 5.28 shows the interface for this operation.

The last option is select a single value. The user specifies the variable. The SQL

statement that performs this operation is:

SELECT * FROM $Form{category} WHERE datum =’$datum’

Figure 5.29 shows the interface for this operation. Figure 5.30 shows the main user

interface that provides access to the above options.

Page 123: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 113 -

VARIABLE:

FROM:

Year:

Month:

Day:

Time [hour]:

TO:

Year:

Month:

Day:

Time [hour]:

FUNCTIONS:

Min

Max

Avg

SUBMIT

Figure 5.28: Interface for ‘List Data’ Option

Page 124: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 114 -

VARIABLE:

Year:

Month:

Day:

Time [hour]:

SUBMIT

Figure 5.29: Interface of ‘Select a Single Value’ Option

Figure 5.30: Database Main User Interface

The second interface is designed for the administrator. The administrator can

insert, modify or delete records into the database. Access to this interface is restricted.

A username and password is required. The administrator can perform the following

functions through the interface:

• Insert a new file: Upload new data (i.e., rainfall file). - not available in the

user interface.

• Get a filename: Search the filename table to find the name of the filename.

Page 125: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 115 -

• Delete category: Delete category or variable such as rainfall, recharge, etc. -

not available in the user interface.

• Insert category: Add a new category or variable to the database - not

available in the user interface.

• List Data: Query the timeseries data according to some conditions that

identifies records.

• Select a single value: Retrieve a single value.

The first, third and forth options are only available in the administrator interface.

The insert new file option allows the database administrator to upload new files to the

database or insert data into an existing variable. For example, if the rainfall database

contains data for 1990 to 2001 and the new data for year 2002 arrived, the administrator

uses “insert a new file” to insert data to the rainfall variable in the database. Figure 5.31

shows the interface for this operation.

VARIABLE:

Year:

File:

SUBMIT

Figure 5.31: Interface of ‘Insert a New File’ Option

The delete category option allows the database administrator to delete a variable.

This includes deleting the tables from the database and deleting the variable from the

program that creates the user-interface. Figure 5.32 shows the interface for this

operation.

Page 126: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 116 -

VARIABLE:

SUBMIT

Figure 5.32: Interface of ‘Delete Variable’ Option

The insert category option is used to add a variable. This includes creating a

table in the database and adding the variable to the program that creates the user-

interface. Figure 5.33 shows the interface for this operation.

VARIABLE:

SUBMIT

Figure 5.33: Interface of ‘Add Variable’ Option

Figure 5.34 shows the Administrator Interface. The accompanying CD presents

the complete interface and results.

Page 127: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 117 -

Figure 5.34: Database Administrator Interface

In the above examples, only non-spatial data was used. This is because spatial-

data files are large and need complex calculations to search, retrieve, and perform

spatial analysis (such as aspect or water flow which usually uses a three-by-three

moving window that successively moves over the grid). An extended waiting time is

necessary for the server to perform and then return the result back to the user.

Therefore, after experimenting with spatial-data, it is recommended that server-side

applications should not perform complex spatial-data analysis.

5.5 Conclusion

This chapter has presented some generic functionality of Web-based GISs, but it

neither presented exclusive views, nor is the chapter sufficient in itself. Rather, the

chapter focuses on server-side technology. A series of simple GIS functions have been

implemented using Perl and HTML. Examples of CGI applications developed using

Perl were presented. The execution of some GIS modules from the Web by use of a GIS

package (IDRISI) and other programs (graphic programs) has also been presented.

Reliability and performance are of concern when using this low-cost option to

implement a large-scale Web-based GIS. The Microsoft Internet Server and Perl are

free software products used by numerous system administrators and users. It is difficult

to estimate how well this software can perform in general because of all the possible

Page 128: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 118 -

combinations of different hardware components, such as CPU, main memory, hard disk

space, display, etc.

A Web-based GIS application may work well using free software and a basic PC

when few users have access to this application. As the number of users increases, the

performance of this low-cost server may decrease dramatically, to a level, which may

not be acceptable to the end-users. The two most crucial questions when implementing

a server-side application (and thus this project) are (Green and Bossomaier, 2002):

• Is the processing demand going to place too large a load on the server? Any

busy Web-based server will be accessing and transmitting several files per

minute. The processing needed to draw a map takes only a few seconds, but

if requests for this operation are being received constantly, then the load on

the system can grow quickly.

• Is the volume of data (multiple large image files like those used for 3-D

graphics or spatial-data) sent to the client too great a load on the network?

During the implementation phase of this project, a number of shortcomings were

identified. The most significant was the slow performance caused by the need for

frequent re-connection and data re-transmittal for even the simplest operation such as

zoom or display. This is a result of the need of the server-side executable CGI scripts to

set up links between the HTTP server, IDRISI, data, and other external packages. Users

submit HTML forms to activate IDRISI after generating a Perl script via a CGI-bin

residing in the HTTP server. The Perl script requests spatial-data and a map is then

generated in IMG format by a stored program reflecting the user’s request. The IMG

file is then translated into the GIF format using an external image-processing package.

The GIF format map is then sent to the user’s browser. If the user wants to interactively

process the map, the above procedures will be executed again, which may need a long

waiting period and cause heavy network traffic.

Another major drawback of the CGI technique is the overall inefficiency in

handling concurrent client requests (Williamson, 1999). This limits CGI’s usage in

many Web-based applications. As an alternative, Java can be used. The use of Java

modules improves performance by adding multithreading and persistent database

Page 129: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 119 -

connection features. On the other hand, the Java Servlet approach has become a popular

solution for e-commerce applications. Servlets have rich features that provide well the

ability to tune the performance of Web-based applications. The ability to keep database

connections persistent and the ability to multithread are important features of the Java

Servlet solution. In Chapter 6, this alternative way of implementing Web-based GISs,

using the client-side approach and Java, is presented.

Page 130: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 120 -

6. Methodology and Results for a Client-side Approach

6.1 Overview

Client-side data-analysis tools for GISs are available and provide advantages

and disadvantages when compared to server-side tools. Such data-analysis tools initially

reside on a Web-based server; a user requests the tools from the server, which sends

them and the corresponding data files to the client machine for local processing. Figure

4.5 in Chapter 4 shows the general architecture of client-side Internet GISs.

In Chapter 5, the capabilities of server-side applications were discussed. GIS

functionality through server-side applications was also demonstrated. This chapter

presents real-time GIS tools for hydrological nowcasting using the client-side Java

approach. The following functions are implemented using this approach: slope

calculation, image manipulation, graphing, point pattern analysis (places of interest),

area data analysis (choropleth maps), network analysis (shortest path), window

operations (window average, window maximum, window minimum, pixel colour), map

information (map average, map minimum, map maximum, pixel colour), zoom in/out,

rubber banding, and drag operations.

6.2 Image-processing Analysis

Image data are a special form of area data, formed on a fine regular grid or

lattice. This section presents Java image-processing and analysis tools. For more

detailed information refer to Lyon, 1999; Knudsen, 1999; Hardy, 1999a; Efford, 2000;

and Rodrigues, 2001.

An advantage of server-side architecture is the ability to provide access to

significant GIS functionality and large databases residing on the server (see Chapter 5).

Page 131: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 121 -

However, as noted in Andrienko and Andrienko (1999) and Stynes et al., (1996), such

server-side solutions place severe restrictions on map interactivity. Zaslavsky (2000)

notes additional technical limitations: (1) Changes to a currently displayed map requires

a round-trip to the map server, resulting in lower update speed and increased network

load; (2) Scalability in terms of the number of simultaneous users becomes an important

issue because each map picture is generated by the map server. Efficient scalability

solutions exist but they tend to be expensive; (3) Cumbersome object identification on a

raster image and loss of visual quality during zoom are common. According to

Andrienko and Andrienko (2000), Java provides a better solution. Java supports

viewing of maps with dynamic interactivity, including basic map manipulation

(layering, zooming, panning, etc.) and specific controls for the manipulation of

visualisations (choropleth maps with and without classification, cross-classification

maps, dominant attribute maps, bar charts, pie charts, segmented bars, geometric signs,

combined presentations, etc.).

Carr, et al., (1996) designed the Graphics Production Library (GPL), a tool that

allows for easy creation and modification of statistical graphics on the Web. GPL, a set

of Java class libraries for interactive statistical graphics, was initially intended to add

interactivity, such as drag and drop comparisons, panel reordering and rescaling, pan,

and zoom to the row-labelled plots45 (Carr, 1994). It follows the recommendations on

statistical graphics given in Cleveland (1993, 1994). The main goal of GPL project was

to provide Web-based access to these hazardous air pollutants (HAP) data. It focused on

providing a concise display that offered easy access to the data and to make the model

results easily understandable to an audience not familiar with statistics.

According to Pandey et al. (2000), Java provides a good solution to visualise

information through the Web by using tabular and graphical representations of the

model outputs. The use of Java in Pandey’s research allows a user to select sites by

location and to be provided with land-use and hydrologic soil group combination for

those sites. Similarly, the hydrology workbench NCSA, created by NCSA researchers,

uses a Java-based visualisation tool termed VisAD (SSECU). It allows a user to view 45Row-labelled plots represent attribute summaries and corresponding spatial coordinates. Elementary row-labeled plots have familiar forms such as dot plots, bar plots, and boxplots. More advanced templates include multiple panel displays and address a variety of extensions including representation of numerous attributes, confidence bounds, and missing data.

Page 132: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 122 -

data produced by the running model or from previously generated model files. Other

examples include the Weather Visualiser Java prototypes (Plutchak, et al., 1998), which

allows user interaction with meteorological image data, and the University of

Washington's buoy data display applets (Denbo et al., 1997).

Unwin and Wills (1998) demonstrate that interactive graphics could greatly

facilitate the analysis of time-series data. They list several analytical operations

supported by software for a time-series analysis tool called Diamond Fast, which

allows:

• Scaling of graphics in attribute and time dimensions (vertical and horizontal

components of a time plot).

• Overlaying time series.

• Simultaneous consideration of multiple time series with

common scaling and dynamic linking.

Maps should be dynamic and interactive (Andrienko and Andrienko, 2000).

Dynamic maps can act as a key element in spatial-decision support systems (Jankowski,

et al., 2001). Therefore, the Web offers the promise of broad enough public

participation to sustain more competent decision making (Klein, 1999). Java has the

ability to perform true cartographic and spatial-data analysis. Java features, such as

interactive data communications and multi-threading, allow synchronized control over

dynamic variables online (Sadagopan, 2000).

Loading an image in standard file formats such as GIF46 or JPEG47 is an

uncomplicated task for an applet. It is accomplished by a call to the applet’s

getImage(Url, String) and drawImage(Image, x, y, ImageProducer) methods. This is the

minimum necessary, and results in flicker48 as the image is loaded. The loading of the

image takes place when the drawImage() method is called. MediaTracker can be used to

ensure that the image is fully loaded before the display takes place. Table 6.1 gives the

code for loading an image.

46 Graphics Interchange Format 47 Joint Photographic Experts Group 48 Flicker is caused by the way Java paints and repaints each frame of an applet when the method paint() is called. One of the major ways to avoid flickering is to override the update method.

Page 133: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 123 -

import java.awt.*;

import java.applet.*;

import java.awt.image.*;

import java.awt.MediaTracker;

public class mediatracker extends Applet

{

Image myImage;

public void init()

{

MediaTracker tracker=new MediaTracker(this);

//Load the image

myImage=getImage(getCodeBase(),"../images/image.jpg");

//Tell the mediatracker about the image

tracker.addImage(myImage,0);

//Wait for the images to load

try {

tracker.waitForAll();

} catch (InterruptedException e) {

showStatus("The loading process was interrupted.");

}

}

public void paint(Graphics g)

{

//Display image

g.drawImage(myImage,0,0,this);

}

}

Table 6.1: Standard Image Loading

The GIF and JPEG graphic-file formats are the most commonly used for Web

graphics. PNG (Portable Network Graphics) is not yet widely supported by most Web

browsers. Netscape Communicator requires a plug-in (Roelofs, 1999) and Microsoft

Internet Explorer is able to display the PNG file format but does not support the major

advances PNG offers, such as transparency.

Data in a graphic-file format that is not supported by Web browsers, such as

BMP, TIFF, IMG, TGA etc., are considered non-standard data. In Table 6.1, an image

is loaded using the getImage method, which loads a .JPG file format. To read non-

Page 134: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 124 -

standard data (for example, a DEM49 saved in the BMP format dem.bmp) the

InputStream method can be used to access the file, as follows:

URL myURL = new URL(get CodeBase ( ).toString( ) + “dem.bmp”

This code opens an input stream and reads the data in bytes. It is the user’s

responsibility to format the data stream.

In the following example Table 6.2, a DEM of BMP data type is read into an

applet and displayed. A 24-bit Windows BMP file is used. The header information (the

first 54 bytes), which is used for other BMP graphic applications, is ignored. After

reading and storing the data into an array, an image from the pixel array (pix) can be

created using: myImage = createImage (new MemorySource (x,y,pix,0,x)

Finally the image can be displayed or painted onto the screen using the normal

paint method. Table 6.2 illustrates this procedure.

import java.awt.*;

import java.applet.*;

import java.awt.image.*;

import java.net.*;

import java.io.*;

public class loadDEM extends Applet

{

Image myImage;

int x = 100;

int y = 100;

int[] pix = new int[x * y];

InputStream is;

long header=54;

byte[] bt = new byte[pix.length * 3];

public void init()

{

//open an input stream and read the data

try {

URL myURL = new URL(getCodeBase().toString() + "dem.bmp");

try {

49 Digital Elevation Model

Page 135: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 125 -

is = myURL.openStream();

long numberActuallySkipped = is.skip(header);

is.read(bt);

} catch (IOException i) {}

} catch (MalformedURLException e) {}

// load the byte array into the pixel array

// the encoding assumes a scheme where every 3 bytes

// specifies 24bit int for pixel colour. This represents a custom encoding.

int pixelCount = 0;

int byte1,byte2,byte3;

for (int c=0; c<bt.length; c+=3) {

if (bt[c] < 0) byte1 = ((bt[c] + 256)); else byte1 = bt[c];

if (bt[c+1] < 0) byte2 = ((bt[c+1] + 256)); else byte2 = bt[c+1];

if (bt[c+2] < 0) byte3 = ((bt[c+2] + 256)); else byte3 = bt[c+2];

pix[pixelCount++] = 255 << 24 | byte1 << 16 | byte2 << 8 | byte3;

}

//create an image from the pixel array

myImage = createImage(new MemoryImageSource(x,y,pix,0,x));

}

public void paint(Graphics g)

{

//Display image

g.drawImage(myImage,0,0,this);

}

} Table 6.2: Non-standard Image Loading

Table 6.2 contains code that most developers rarely work with. Table 6.3

presents some lines of code from Table 6.2 that need to be carefully explained.

1 for (int c=0; c<bt.length; c+=3) {

2 if (bt[c] < 0) byte1 = ((bt[c] + 256)); else byte1 = bt[c]; 3 if (bt[c+1] < 0) byte2 = ((bt[c+1] + 256)); else byte2 = bt[c+1];

4 if (bt[c+2] < 0) byte3 = ((bt[c+2] + 256)); else byte3 = bt[c+2];

5 pix[pixelCount++] = 255 << 24 | byte1 << 16 | byte2 << 8 | byte3;

6 }

Table 6.3: Custom Encoding

Page 136: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 126 -

The for loop in line 1 traverses the byte array 3 bytes at a time (3 bytes make up

one 24-bit number that holds the RGB50 value for the pixel). Lines 2, 3, and 4 are a

patch for the way Java treats its Integral data types. Integral data types in Java (byte, int,

long, and short) use the sign-magnitude format. This means that a byte in Java holds

numbers from –127 to 127 (two possible zero values), with the most significant bit

storing the sign. For example:

10000001 = –1

00000001 = +1

The format of the input data is two’s complement51. As an example, consider the

value –1 (11111111 in two’s complement). Java interprets this as the sign-magnitude

value of –127. When we add 256 to –127 we get 129 (10000001 in sign magnitude).

Thus the value is converted from two’s complement format to sign-magnitude format.

Line 5 translates the 24-bit raw input into a 32-bit integer-per-pixel

MemoryImageSource. The three RGB bytes are shifted (<<) to their proper locations in

the 32-bit value saved in the pixel array. The following examples show how the shift

function works:

00000001 << 2 = 00000100

10000001 << 2 = 10000100 (Java preserves the sign)

01000000 << 1 = 00000000 (Java preserves the sign)

The | symbol of line 5 is a bitwise OR operation. Once the RGB bytes have been

shifted, they are ORed together. The following is an example:

50 Red Green Blue 51 Two complement: A binary digital coding scheme that includes the representation of negative numbers. The two's complement may be obtained by subtracting the number (in binary form) from zero, or by adding one to the one's complement .In this scheme, the number "-2" is represented by 11111110 and "2" is represented by 00000010.

Page 137: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 127 -

Byte1 = 00000001

Byte2 = 10000001

Byte3 = 00011000

Pixel[x] = 00000000000000000000000000000000

Byte1 << 16 = 00000000000000010000000000000000

Byte2 << 8 = 00000000000000001000000100000000

Byte3 << 0 = 00000000000000000000000000011000

OR together = 00000000000000011000000100011000

Images can be manipulated by simply turning them into integer arrays. As

mentioned in the example above for loading a DEM, images can be equated to one-

dimensional arrays of ints (int[]). The length of the array is the product of the width and

height of the image. The int values represent the colour of the images, but could be

anything. The int data type, in Java, is 32 bits in length. To represent colour, int is

treated in four parts. From left to right, the first 4 bits (otherwise known as a nibble52)

corresponds to opacity. The second byte is red, the third green, and the forth blue. An

example of this is given in the following section.

6.3 GUI Layout

Before the advent of the Web, GIS software had a monopoly on their interfaces.

They were the only means to interact with geographical databases. Now the Web allows

users to download and view maps without tools for transformation or complex analysis.

A computer-based map should focus on interactivity, ease of use and intuitiveness,

rather than the information content and orientation perspective (Ahlenius, 2000).

Several advancements in the field of GISs and other technologies that have lead

to the evolution of lightweight interfaces that allow a user to browse data in an

interactive fashion. Interfaces can easily link geographic entities to other sources of

information, such as graphs, images, and text. This is not a complete GIS solution, but

rather an interface to a map service. New programming tools have evolved to let

software designers create such an interface, whereby subsets of the GIS functionality

52 In computers and digital technology, a nibble is four binary digits or half of an eight-bit byte.

Page 138: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 128 -

are defined as objects for a map-service client. Java or ActiveX can meet these needs

(Ahlenius, 2000).

In Java AWT, a GUI is a collection of nested Panels53. Each Panel may have

one type of layout. Each layout may contain several components, where a component

may be another Panel. There are three Panels shown in Figure 6.1. The first Panel is the

applet itself. Line 1 of Table 6.4 shows the creation of this Panel using BorderLayout.

1 myBorderLayout = new BorderLayout();

2 setLayout(new BorderLayout());

3 add("North", topPanel);

4 add("West", leftPanel);

5 add("Centre", theCanvas);

Table 6.4: Border Layout

Figure 6.1 shows the BorderLayout style of Table 6.4.

Figure 6.1: Basic Interface Layout

The add method places a component54 into a cell, which must already exist. In

Figure 6.4, there are two Panels added to the BorderLayout. A Panel on the top holds

three Checkbox objects (zoom in, zoom out, and pan) in a FlowLayout style. The Panel

on the left holds a number of Button objects in a GridLayout style (FlipX, FlipY, etc.).

53 A panel is the simplest form of container. A container is an area in which to place elements. This Panel is designed to accommodate buttons and other fixed components. 54 There are a wide variety of AWT components, such as text labels, buttons, selection lists, windows, and dialogs.

North

West

East

South

Center

Page 139: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 129 -

The centre position holds an ImageCanvas, which is a custom component and subclass

of Canvas.

A FlowLayout style displays components one after another, from left to right.

GridLayouts have a fixed number of cells into which Objects are placed. FlowLayout is

the default layout of the applet Panel.

In Java, events are tracked by a Component. To trap events, the programmer

must first create an event adapter. An adapter defines the reaction to the event, and it

also defines what general sort of event the user is interested in. For ImageCanvas, we

want to know when the user clicks the mouse. The result is either a zoom or pan

(depending on the current setting). The creation of MouseAdapter is shown in

Table 6.5.

class CanvasMouseAdapter extends java.awt.event.MouseAdapter {

public void mousePressed(MouseEvent e) {

double scaleFactor = 1;

if (zoomIn.getState()) {

currentZoom = 1.2 * currentZoom;

scaleFactor = 1.2;

}

if (zoomOut.getState()) {

currentZoom = 0.8 * currentZoom;

scaleFactor = 0.8;

}

if (zoomOut.getState() || zoomIn.getState()) {

myModifier.reset();

myModifier.reSize((int)Math.round(myModifier.width * currentZoom),

(int)Math.round(myModifier.height * currentZoom));

}

// always do a pan

dx+=((Math.round(theCanvas.getSize().width / 2)-e.getX()));

dy+=((Math.round(theCanvas.getSize().height / 2)-e.getY()));

// compensate for zooming

dx = (int) Math.round(dx * scaleFactor);

dy = (int) Math.round(dy * scaleFactor);

// draw the new image

Page 140: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 130 -

modifiedImage = myModifier.createImage();

theCanvas.setImage(modifiedImage,dx,dy);

}

}

Table 6.5: MouseAdapter

MouseAdapter defines what happens when the user creates a mousePressed

event. A subclass of java.awt.event.MouseAdapter is created, where each method we

override defines the behaviour for each mouse activity. MouseAdapter is not concerned

with which component this mouse event occurred on.

This code must execute when the mouse pointer is on top of our ImageCanvas,

not when the mouse pointer is over one of the buttons. Thus MouseAdapter is attached

to the ImageCanvas Component by adding MouseListener to ImageCanvas as follows: theCanvas.addMouseListener(new CanvasMouseAdapter());

The buttons require a different listener, called ActionListener. Unlike a

MouseListener, an ActionListener can be instantiated on its own (they do not need to be

formed as a subclass, i.e. they are not abstract). Table 6.6 shows the inline-adapter code

for button clicks.

xFlip.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

xFlipCallback();

}})

Table 6.6: Adapter Code

There are three customisation types available for a Component. The first adds

functionality to a Component. The second changes the look of a Component. The third

creates a group of components that act together. Table 6.7 presents ImageCanvas, which

extends the functionality of the Canvas class. The functionality added is the ability to

display a map.

Page 141: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 131 -

import java.awt.*;

import java.awt.image.*;

class ImageCanvas extends java.awt.Canvas

{

Image theImage;

int dx,dy;

public void ImageCanvas() {}

public void setImage(Image img) {

setImage(img,0,0);

}

public void setImage(Image img, int x, int y) {

theImage = img;

dx = x;

dy = y;

repaint();

}

public void paint(Graphics g) {

//Display image

g.drawImage(theImage,dx,dy,this);

}

} Table 6.7: Image Canvas

The interface is a hybrid map display system. Background data, the map, is

displayed as a GIF or JPEG. Foreground data is formed using the Java map interface.

As the cursor is moved over a point on the map, information about the point appears on

the screen. For example, if the cursor is moved over a point indicating an airport, the

name and address of the airport will appear. This is discussed in the following sections.

With the Java map interface, execution speed is adequate to provide real-time searching.

Figure 6.4 shows a simple GUI for image manipulation with five clickable buttons and

three radio boxes.

Page 142: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 132 -

Figure 6.2: Image Manipulation Interface

Table 6.8 presents the invert filter from the ImageModifier class (see Figure 6.2).

void invert() {

for (int index=0;index<width*height;index++)

pixels[index]=pixels[index]^0xffffff;

}

Table 6.8: Invert Colour Subroutine

The code of Table 6.7 loops through all of the pixels in the pixel array. For each

pixel, the colour is flipped using the Boolean operator XOR (the symbol ^). 0xffffff is

the hex representation of white. Thus this operation flips the bits of the original colour.

Figure 6.3 displays the result of performing the invert operation on Figure 6.2.

In the context of hydrology, the invert function is used for visualisation

purposes. For example, when displaying catchment, invert can help determine the

boundaries. Another example is in the determination of an area(s) that will be flooded

due to a rise in sea level. Invert is used to highlight the colour of the flooded area.

Page 143: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 133 -

Figure 6.3: Result of the Invert Operation

Invert can also be used to determine a buffer55 zone. For example, suppose a

potential residential area was located close a river and thus potentially subject to a flood

event. Invert will help indicate the downstream movement of a flooded area and thus

help establish the buffer zone.

Table 6.9 presents the code for flipping the image about the X axis, i.e. upside

down.

void xFlip() {

//Duplicate image

int[] sourcePixels=pixels;

pixels = new int[width * height];

int lastLine=width*height-width;

for (int offset=0;offset<width*height;offset+=width)

System.arraycopy(sourcePixels,offset,pixels,lastLine-offset,width);

}

Table 6.9: Flipping an Image Upside Down

55 A zone of a specified distance around coverage features. Both constant- and variable-width buffers can be generated for a set of coverage features based on each feature's attribute values. The resulting buffer zones form polygons-areas that are either inside or outside the specified buffer distance from each feature. Buffers are useful for proximity analysis (e.g., find all stream segments within 300 feet of a proposed logging area).

Page 144: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 134 -

The code of Table 6.8 copies each row of pixels in the source image to rows in

the destination image. A row in the array is the number of array entries equal to the

width of the image. The lastLine variable is the index number of the array of the last

line (row). The final loop copies the first row to the last row, the second row to the

second to last row, etc.

6.4 Standard GIS Functionality

There exists a class of operations for use with raster models that specifically

deals with pixel neighbourhoods. The structure of a raster file ensures that the data

representing a zone of spatially adjacent pixels are close together in the file, and the

addressing system by row and column makes their access straightforward.

Neighbourhood operations on raster images are generally called filtering operations

(Bonham-Carter, 1994). Examples of filtering operations include (Camara et al., 1994):

filters for processing images, spatial interpolation56 methods (such as kriging57) for

DTMs where a field is computed, slope and aspect calculations for DTMs, and diversity

indexes for thematic58 maps (where the output value is associated with the number of

neighbours of the input point which are of a different class).

As an example, a filter could be used in flow-path and contributing-area

calculations. The first of these flow-path algorithms is the steepest descent, or D8,

algorithm (O’Callaghan and Mark, 1984; Marks et al., 1984). D8 has been widely used

to partition watersheds into subcatchment areas (Band, 1986; Jenson and Domingue,

1988; Tarboton et al., 1991), as well as in calculating contributing area (Band, 1989;

Ehlschlaeger, 1989; Morris and Heerdegen, 1988; Lammers and Band, 1990; Jenson

and Domingue, 1988; Martz and Garbrecht, 1992). Fractional, or F8, flow algorithms

partition flow from a cell to its eight neighbours by weighting flow according to relative

slope (Freeman, 1991; Quinn et al., 1991). Regardless of how flow is routed, all cell-

based algorithms attempt to find surface flow directions and upslope areas either during 56 Interpolation is the process of determining a missing value by taking an average of known values at neighbouring points. 57 An interpolation technique for obtaining statistically unbiased estimates of surface elevations from a set of control points. 58 A map related to a topic, theme, or subject of discourse. Also called topical, geographic, special purpose, distribution, parametric, or planimetric maps. Thematic maps emphasize a single topic such as vegetation, geology, or land ownership. Contrast with base map.

Page 145: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 135 -

an ascent from concave points on the DEM or during descent from convex points on the

DEM.

Various efforts have been made to facilitate the development of dynamic-

modelling software. However, easy user access, platform independence, and GIS

invariance are still difficult (Huang and Worboys, 2000). The use of the Web to

overcome these obstacles is suggested in Openshaw et al. (1999).

The following subsections present common GIS operations employed for raster

models.

6.4.1 Slope Calculation

The CalculateSlope applet calculates the slope angle using a DEM of a three-by-

three cell window around a particular grid point. It approximates the surface by

representing local slope as the difference in height of the pixel and it’s nearest

neighbouring pixels. The same algorithm as that of Section 5.2.4 are used in this Java-

based algorithm. Figure 6.6 shows a DEM displayed in the interface. Table 6.9 gives

the slope-calculation program.

Figure 6.4: DEM Displayed

Page 146: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 136 -

public void CalculateSlope()

{

int x,y;

slopePixels = new int[imageWidth * imageHeight];

for (x = 1; x <= imageWidth - 2; x++)

for (y = 1; y <= imageHeight - 2; y++)

{

double Deltax1 = ElevationTable[(y-1) * imageWidth + (x+1)]-

ElevationTable[(y-1) * imageWidth + (x-1)];

double Deltax2 = ElevationTable[(y) * imageWidth + (x+1)]-

ElevationTable[(y) * imageWidth + (x-1)];

double Deltax3 = ElevationTable[(y+1) * imageWidth + (x+1)]-

ElevationTable[(y+1) * imageWidth + (x-1)];

double Deltay1 = ElevationTable[(y-1) * imageWidth + (x-1)]-

ElevationTable[(y+1) * imageWidth + (x-1)];

double Deltay2 = ElevationTable[(y-1) * imageWidth + (x )]-

ElevationTable[(y+1) * imageWidth + (x )];

double Deltay3 = ElevationTable[(y-1) * imageWidth + (x+1)]-

ElevationTable[(y+1) * imageWidth + (x+1)];

double DX = (Deltax1 + Deltax2 + Deltax3)/(3*PixelSize);

double DY = (Deltay1 + Deltay2 + Deltay3)/(3*PixelSize);

double SLOP = Math.sqrt(DX*DX + DY*DY)/2;

if (SLOPE <= 1) SLOPE = SLOPE*100;

else SLOPE = 200-(100/SLOPE);

int grayColour = (new Double(255-SLOPE)).intValue();

if (grayColour < 0) grayColour = 0;

if (grayColour > 255) grayColour = 255;

slopePixels[y*imageWidth + x] = (new Colour(grayColour,

grayColour, grayColour)).getRGB();

}

}

Table 6.10: Slope Code

Figure 6.5 shows the result obtained by applying the code given in Table 6.9 to

the data of Figure 6.4.

Page 147: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 137 -

Figure 6.7: Slope Result

This prototype utilizes only one palette, grey scale, and does not utilize a colour

palette. The other shortcoming is that when processing slope it does not generate a

legend to explain the colours, nor other map information such as symbols, line patterns,

scale, etc.

6.4.2 Global Image Information

The Global Information function determines the maximum, minimum, and

average of all cell values in an image. Cell values are calculated from the RGB value of

each cell.

Table 6.11 gives the code of this function. Figure 6.6 presents the result of this

operation in the Global Info box in the lower-left corner of the window.

void GlobalInfo_Action(Java.awt.event.ActionEvent event)

{

Info(0,0,imageCanvas.imageWidth, imageCanvas.imageHeight);

MINGlobal.setText("Min :" + (new Integer(Min)).toString());

MAXGlobal.setText("Max :" + (new Integer(Max)).toString());

AVGlobal.setText("Average :" +

(new Integer((new Double(Av)).intValue())).toString());

panel1.show();

Page 148: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 138 -

GlobalInfoRect.show();

}

void Info(int x, int y, int Width, int Height)

{

int temp;

Min = Integer.MAX_VALUE;

Max = Integer.MIN_VALUE;

Av = 0;

LegendElement legendElement;

for (int i = x; i<x+Width; i++)

for (int j = y; j<y+Height; j++)

{

temp = imageCanvas.getIndex(i, j);

legendElement = (LegendElement)Legend.elementAt(temp);

if (Min > legendElement.Value)

Min = legendElement.Value;

if (Max < legendElement.Value)

Max = legendElement.Value;

Av = Av + legendElement.Value;

}

Av = Av / (Width*Height);

}

Table 6.11: Global Information Code

Figure 6.6: Window Selection Operation

Page 149: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 139 -

6.4.3 Selection Information

Window maximum determines the maximum cell value within a selected square

specified by the user. Window minimum determines the minimum cell value within a

selected square specified by the user. Window average determines the average cell value

within a selected square specified by the user. Figure 6.8 presents the result of these

operations in the Selection Info box. The cell values are calculated from the RGB value

of the cell. Table 6.12 gives the code for these functions.

void SelectionInfo_Action(Java.awt.event.ActionEvent event)

{

float xAspect = ((float) imageCanvas.imageWidth)/

((float) imageCanvas.getSize().width);

float yAspect = ((float) imageCanvas.imageHeight)/

((float) imageCanvas.getSize().height);

Info((new float(0.5+Math.min(imageCanvas.x1,imageCanvas.x2) * xAspect)

).intValue(),

(new Float(0.5+Math.min(imageCanvas.y1, imageCanvas.y2) * yAspect)

).intValue(),

(new Float(0.5+Math.abs(imageCanvas.x1 -imageCanvas.x2) * xAspect)

).intValue(),

(new Float(0.5+Math.abs(imageCanvas.y1 - imageCanvas.y2)*yAspect)

).intValue());

MINSelect.setText("Min :" + (new Integer(Min)).toString());

MAXSelect.setText("Max :" + (new Integer(Max)).toString());

AVSelect.setText("Average :" + ( new Integer((new

Double(Av)).intValue())).toString());

panel2.show();

SelectionInfoRect.show();

}

Table 6.12: Selected Information Code

Window operations can be used for precipitation interpolation of a selected area

or for measuring runoff generation in a subcatchment.

First-hand experience with the Java-based GISs described above has led to the

creation of new and simple GIS applets that perform other functionality such as point-

Page 150: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 140 -

pattern analysis, area-pattern analysis, network analysis (shortest path), and graphing

functions.

6.5 Data Modelling

An essential requirement of any data-analysis tool is a functionality to visually

represent the data being analysed. There are a number of ways that data can be

represented on screen, ranging from simple dots to complex drawings that exhibit

dynamic representation (ESRI, 1999). Displaying all the features of a single class using

the same symbol is the simplest form of data representation. The representation of a

feature class can be controlled by a unique attribute that exists on that feature class. If,

for example, the feature class were road, and it had an attribute called type, this attribute

could be used to control how the feature is represented. Thus, as the attributes of a

feature change, the representation automatically reflects this change. Another

representation, graduated colour ramps, can be used for maps that are primarily

comprised of numeric data with a progression or range of values (elevation for

example). Statistical information from the data can be used to assign values from the

colour ramp. The user selects the attribute that will be used to generate the progression

or range. The user then chooses the type of classification. A second attribute can be

used to normalize the data if it is required. Dynamic representation methods use a

lookup mechanism on certain attributes. Thus the features are displayed in their latest

state.

DeFranti et al. 1989; Buttenfield and Beard, 1994; Hunter and Goodchild, 1996

discuss the benefits of visualisation. Visualising data can: (1) organize abstract concepts

into meaningful displays; (2) transform numerical values into understandable images;

and (3) permit manipulation of geometry, colour, and motion.

Plots of data and other graphical displays are the fundamental tools of the

analyst concerned with seeking patterns in data, generating hypotheses, assessing the fit

of proposed models, and checking the validity of predictions derived from the proposed

models (Bailey and Gatrell, 1995). Maps come in various forms, each type useful in

relation to different kinds of spatial data. For example, a dot map may be the natural

Page 151: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 141 -

tool for visualising a point pattern, while a simple zonally shaded or choropleth map

may be appropriate for area data.

Voss et al. (2000) introduced the Descartes system, an interactive direct-

manipulation Web-Map software tool. Descartes is specifically designed to support

thematic mapping by automatically proposing alternative visualisations of geo-

referenced statistical variables. It also supports thematic mapping by providing

functions for analysis. Descartes is a Java applet that provides a high degree of direct

interactivity, direct manipulation, and map presentation (choropleth maps).

Point-pattern analysis is concerned with the location of events, and with

answering questions about the distribution of those locations, specifically whether they

are clustered, randomly distributed, or regularly distributed. Point-pattern analysis is

very sensitive to the definition of the study area, since a regularly distributed pattern can

be made to seem clustered by including large margins. It is always important to plot the

events to detect outliers visually, together with the boundaries being applied (Cressie,

1993; Bailey and Gatrell, 1995). Further review of many of the methods described in

this section can be found in (Upton and Fingleton, 1985; Marshall, 1991; Diggle, 1993;

and Bailey and Gatrell, 1995).

A map can visually represent data in many different ways. One possibility is to

use a geometric symbol (usually a circle or polygon) at each point of interest. The area

of the shape can be proportional to the data value at the specified location and filled

with a colour (or shade) to indicate the classified value.

Table 6.13 presents an HTML file that defines two maps to be used by the Map

program. We can use as many maps as we want by specifying more pairs (map names

and .ini file) in the param section (lines 5 and 6). Each map has an .ini file that the

applet reads when loading the map.

1 <html>

2 <body bgcolour=FFFFFF>

3 <applet codebase="http://www.avalonweb.com"

4 code=MapTest.class width=550 height=480>

5 <param name="map0" value="newyork.ini">

Page 152: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 142 -

6 <param name="map1" value="toronto.ini">

7 </applet>

8 </body>

9 </html>

Table 6.13: HTML File with Parameters Initialised

The .ini is a configuration file, which follows the same conventions used by

Windows applications. The first section of the .ini file must contain a Map section

followed by one or more Points of Interest sections. Table 6.14 shows the content of the

example file newyork.ini.

[Map]

Name = New York

ImageFile = ny0.gif

InitialScale = 0.5

PointOfInterest1 = Parks

PointOfInterest2 = Museums

PointOfInterest3 = Crime Statistics

[Parks]

Object1 = circle,1.0,Prospect\nPark, ,red,708,825,8

Object2 = circle,1.0,Central\nPark, ,red,712,440,10

Object3 = circle,1.0,Airport, ,red,784,872,12

Edge1 = Object1, Object2

Edge2 = Object2, Object3

[Museums]

Object1 = circle,1.2,ABC Museum, ,red,800,200,5

Object2 = circle,1.2,XYZ Museum, ,red,800,400,5

[Crime Statistics]

Object1=poly,0.4,Bronx\n40%, ,red,849,11,973,59,983,42,1019,50,1027,

78,1071,95

Object2=poly,0.4,Mahattan\n20%, ,blue,596,694,618,527,725,336,804,386,

698,575

Object3=poly,0.4,Queen's\n10%, ,green,705,680,861,415,904,467,945,445,

1069,691

Table 6.14: Configuration File for New York City

Page 153: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 143 -

6.5.1 Point-pattern Analysis

Places of interest (hotels, hospitals, schools, fire stations, museum, etc.) can be

located on a map by adding a marker based on a selection field. Figure 6.9 presents an

example interface for this function. Red markers appear on the map of Toronto locating

the shopping districts.

Figure 6.7: Point-of-Interest Interface

Point-pattern analysis allows a user to gain information about individual features

on a displayed map. In a hydrological example, rain-gauge stations can be located on a

map as dots. The user can extract information about these stations by clicking on these

dots. Information can include latitude, longitude, name of gauge station, and

measurements performed at this station (rainfall). This information can then be used in

an interpolation process.

Another example application of point-pattern analysis is plotting the average

annual watershed precipitation. For large geographical areas such as the U.K. or Europe,

precipitation levels are variable. Therefore, this function can be valuable in plotting the

means as numbered, isohyets59 (Wanielista et al., 1997), or thiessen polygons60 (Okabe

59 Isohyets: a line drawn through geographical points recording equal amount of precipitation during a specific period. (i.e., contours of equal rainfall depth).

Page 154: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 144 -

et al., 1992). Air-mass movements and water/land locations can also be plotted over a

map. For smaller geographical areas, such as water basins, rainfall volume per storm

event is variable over the area. To illustrate this, consider rain cells that are isohyets.

This function can be used to plot these lines.

6.5.2 Spatial Analysis

Cressie (1993) categorizes spatial analysis into three broad types: geostatistical,

lattice, and point. He describes geostatistics as a statistical model appropriate for

estimates across continuous areas (characterized as processes with a continuous spatial

index). Geostatistics focuses on the analysis of spatially-distributed variables and the

prediction or estimation of values at unsampled locations.

Liebhold et al. (1993) demonstrated that spatial-analysis techniques, employing

both geostatistics and GISs, could be used to analyse population processes in insect

populations at a landscape scale. Hydrogeology has possibly been the most productive

field of application, where geostatistics has been combined with groundwater models,

adjusted for geophysical methods, used in solving upscaling problems, and this has been

the cornerstone in analysing prediction uncertainty. See the following: (Rouhani et al.,

1990a, 1990b), a review of geostatistics in geohydrology which includes tutorial

sections as well as extensive literature reviews; (Loaiciga et al., 1992), a review of the

literature on groundwater quality monitoring network design, including geostatistical

methods.

The prediction of events on a spatial scale has been the subject of a number of

investigations. Glass et al. (1995) used logistic regression to generate a Lyme Disease

risk-density map. Williams et al. (1994) compared the use of non-linear discriminant

analysis, neural networks, decision-tree-induction methods and k-nearest-neighbour

analyse for the prediction of tsetse fly distribution in Zimbabwe.

In previous examples, analysis was carried out on data comprised of a set of

points (locations of gauges, etc.), each of which has attached a simple attribute (e.g., 60 Thiessen: method for calculating average precipitation. It adjusts for nonuniform location of gauging stations by attempting to determine the area of influence.

Page 155: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 145 -

precipitation value). Consider a different form of spatial problem. The data are again

comprised of a set of point locations, but attached to each is a continuous measurement,

such as the volume of rainfall measured at each site over a given time interval. The

problem is not one of whether there is a pattern in the locations themselves, but rather

understanding the pattern in the values at these sample locations. By understanding the

pattern, the variable of interest at locations that were not part of the spatial sample can

be modelled. This kind of problem is very common in environmental sciences (Bailey

and Gatrell, 1995) where some variables (soil, climate, etc.) are inherently spatially

continuous (soil acidity, temperature, etc.). A good estimate can be produced for

locations that are not sampled. This can be used to derive rainfall maps for certain

locations using geostatistics. Rainfall is an example of a variable that shows what

hydrologists call spatial persistence, also called spatial correlation. The monitored

rainfall at one station is likely to be similar to that of 10 km away, but less similar to the

rainfall 100 km distant. This correlation pattern can be measured and used in the

estimation of rainfall in other locations on the map. The resulting image can be

contoured, revealing that the annual rainfall is generally higher or lower in one place

than in another.

The optimal location of facilities on a map, location/allocation analysis, has been

the subject of extensive research and of considerable practical importance since the

1960s. The GIS revolution of the late 1980s provided a new stimulus. Location-

allocation methods are one of the few modelling and spatial-analysis tools offered in

proprietary GISs today (Kim and Openshaw, 1998).

6.5.3 Zooming In

There are two ways to perform the zoom-in function: (1) Select the icon icon

─ a new zoomed-in view is displayed. (2) Select the icon and form a box by clicking

the mouse to form one corner and dragging the mouse to the opposite corner ─ a new

zoomed-in view of the box is displayed.

Table 6.15 gives an extract of the zooming-in code.

Page 156: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 146 -

public void zoomIn () {

if (m_scale > 2.0)

return;

m_scale += 0.1;

m_x -= (int)((m_imageSize.width*0.1)/2);

m_y -= (int)((m_imageSize.height*0.1)/2);

scale();

} Table 6.15: Extract of the Zoom-in Code

The zooming factor is limited by the size of the computer’s memory. For

example, a zoom-in of 100% would require 4 times as much memory to store the image

(a 100% zoom into a 10-pixel by 10-pixel image produces a 20-pixel by 20-pixel

image). A solution to this memory problem is to limit the zooming factor.

6.5.4 Zooming Out

There are two ways to perform the zoom-out function: (1) Select the icon ─

a new zoomed-out view is displayed. (2) Select the icon and form a box by clicking

the mouse to form one corner and dragging the mouse to the opposite corner ─ the

present image is compacted into the space of the box in reference to the rest of the

image. Figure 6.8 shows the result of the zooming-out function.

Figure 6.8: Zoomed-out Result

Page 157: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 147 -

Table 6.16 gives an extract of the zooming-out code.

public void zoomOut () {

if (m_scale < 0.4)

return;

m_scale -= 0.1;

m_x += (int)((m_imageSize.width*0.1)/2);

m_y += (int)((m_imageSize.height*0.1)/2);

scale();

}

Table 6.16: Extract of the Zooming-out Code

6.5.5 Rubber Banding

Rubber banding is the process of selecting a region (usually a rectangle, circle,

or some other regular shape) by choosing a point and holding down the mouse button

whilst simultaneously pulling the shape out until it reaches the desired size. Rubber

banding is useful in a number of different contexts. For example, it can be used to select

multiple items, as in Figure 6.6. Or it can be used to select a rectangular region on a

map to be converted to latitude and longitude (Djurcilov and Pang, 1998). Figure 6.9

shows a user-defined box for zooming in or zooming out. Rubber banding is an example

of interactive animation. The map image with the overlaid rubber-banded shape is

repeatedly redrawn and displayed in response to the user’s mouse movements. This

procedure involves the following steps (Green and Bossomaier, 2002):

• Get mouse location

• Calculate shape coordinates

• Copy image of base map

• Redisplay map image

Page 158: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 148 -

Figure 6.9: A User-drawn Box for Zooming In

Figure 6.10: Result of Zooming in to a Specific Area on a User-drawn Box

Rubber banding and zooming in leads to additional detail. For example, in the

selection boxes of Figure 6.10, if the map chosen is New York, and the point of interest

chosen is Parks, then the map of Figure 6.11 will be displayed. The parks are displayed

as red circles at each site. When the mouse is moved over a red circle, a yellow square

containing some additional information is shown on the screen.

Page 159: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 149 -

Figure 6.11: Parks as Points of Interest in the City of New York

6.5.6 Area-pattern Analysis

A commonly used form of display for area data is the choropleth map (Bailey

and Gatrell, 1995), in which the colour or shading of areas varies according to the

density, concentration, or magnitude of a geographic variable (e.g., precipitation,

elevation, or temperature).

Figure 6.12 presents the result of selecting crime statistics in the Interests field

for the city of New York. Each area has a different colour according to a discrete scale

on the value of the attribute indicated in the newyork.ini file listed in Table 6.13.

Table 6.17 presents the relevant piece of the newyork.ini file.

Page 160: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 150 -

Figure 6.12: Crime Statistics (Highlighted Areas)

[Crime Statistics]

Object1=poly,0.4,Bronx\n40%, ,red,849,11,973,59,983,42,1019,50,1027,78,1071,95

Object2=poly,0.4,Mahattan\n20%, ,blue,596,694,618,527,725,336,804,

386,698,575

Object3=poly,0.4,Queen's\n10%, ,green,705,680,861,415,904,467,945,445,

1069,691

Table 6.17: Crime Statistics Colour Configuration File

The boundaries of the polygons are constructed from the coordinates of the

vertices that are obtained by the digitising process. In a hydrological context this

function can be used in applications such as highlighting subcatchments in a watershed,

showing temporal variations of precipitation patterns in countries in a specific period of

time, elevation, or temperature, or defining a polluted area for potential hazardous sites.

6.5.7 Network Analysis

Network analysis, one of the cornerstones of GIS functionality and applications

(Worboys, 1995), is found in many areas, from transportation networks to utilities. Path

finding is applicable to many kinds of networks, such as roads, utilities, water,

electricity, telecommunications, and computer networks alike. The total number of

Page 161: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 151 -

algorithms that have been developed over the years for path finding is significant. Deo

and Pang (1984) defined a nomenclature for shortest-path algorithms, describing as

many as 222 different algorithms dating back as far as 1958. Their paper provides an

excellent classification scheme, with a brief description of each algorithm and

highlighted comparisons of particular algorithms. The most common generic network

operations are depth-first traversals, breadth-first traversals, shortest path, and

transitive-closure operations.

The shortest-path algorithm is one of the fundamental operations performed on

connected networks. It is useful in many applications in which the identification of the

shortest path between two given points is needed. The first category of shortest-path

algorithms contains algorithms that guarantee optimal solutions but do not have good

performance (Karimi and Hwang, 1997). The best example is the well known Dijkstra's

Algorithm (Dijkstra, 1959). The second category contains algorithms that are very fast,

but cannot guarantee the best solutions; at best, they produce good solutions (Karimi

and Hwang, 1997). Most algorithms in this latter category are based on heuristic

approaches. Examples of such heuristic algorithms include A* (Nilsson, 1980) and

ORCA-H (Karimi, 1996).

Shortest-path algorithms may be applied more generally. For example, given a

digital elevation model, it may be useful to calculate optimal routes between points in

the terrain. Measures of optimality (such as shortest Euclidean length), avoiding steep

paths, and determination of minimum sum of height differences are discussed by van

Kreveld (1994), who considers shortest path in the context of polyhedral terrains. In this

chapter the shortest-path algorithm is used for network analysis. The interface of

Figure 6.13 shows the result of selecting the shortest path between two American cities,

Seattle and Miami.

Page 162: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 152 -

Figure 6.15: Shortest Path (Displayed as a Line)

Table 6.18 presents the file usa_route.ini.

[Map]

Name = USA

InitialScale = 1.0

Dimension = 400, 400

PointOfInterest1 = Cities

[Cities]

BackgroundObject1 = rect,0.4, , , ,lightblue,0,0,400,400

Object1 = circle,1.0,Seattle, , ,red,37,58,5

Object2 = circle,1.0,LA, , , red,34,118,5

Object3 = circle,1.0,Denver, , , red,130,120,5

Object4 = circle,1.0,Phoenix, , ,red,111,170,5

Object5 = circle,1.0,Chicago, , ,red,212,57,5

Object6 = circle,1.0,NY, , , red,303,66,5

Object7 = circle,1.0,DC, , , red,305,128,5

Object8 = circle,1.0,Miami, , , red,310,200,5

Edge1 = Object1, Object2

Edge2 = Object1, Object3

Edge3 = Object1, Object5

Edge4 = Object2, Object3

Edge5 = Object2, Object4

Edge6 = Object3, Object6

Edge7 = Object3, Object7

Edge8 = Object3, Object8

Page 163: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 153 -

Edge9 = Object3, Object4

Edge10= Object5, Object6

Edge11= Object7, Object6

Edge12= Object7, Object8

Table 6.18: Configuration File (usa_route.ini) for Shortest Path

Table 6.19 gives the code for the shortest-path algorithm.

void findShortestPath () {

int nodeIndex1 = m_placeChoice.getSelectedIndex() + 1;

int nodeIndex2 = m_toplaceChoice.getSelectedIndex() + 1;

if (nodeIndex1 < 1 || nodeIndex2 < 1 || nodeIndex1 == nodeIndex2) {

m_map.setMapEdges( null );

return;

}

Vector v = m_shortestPath.getShortestPath( ""+nodeIndex2,

""+nodeIndex1 );

if (v.size() == 0) {

m_map.setMapEdges( null );

return;

}

Vector edges = new Vector();

MapAttributes p = (MapAttributes) m_maps.elementAt(

m_mapChoice.getSelectedIndex() );

String interest = m_interestChoice.getSelectedItem();

for (int i = 1; i < v.size(); i++) {

edges.addElement( p.getMapEdge( interest, (string) v.elementAt(i-

1),(string) v.elementAt(i) ) );

}

m_map.setMapEdges( edges );

}

Table 6.19: Extract of the Shortest-path Code

Raster-based GISs are not commonly known for their network analysis

capabilities. However, there is one software package, called MFworks from Thinkspace,

which has an extensive set of operators that enable network-type analyses. The fact that

MFworks is developed directly upon Tomlin’s map algebra operators (Tomlin, 1990)

Page 164: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 154 -

poses an interesting backdrop for this research. A review of raster-based GISs and their

capabilities, and MFworks in particular, was presented in the June 2000 issue of

GeoEurope (Limp, 2000), featuring MFworks as the only raster GIS capable of true

network analysis.

Traditionally, network analysis, path finding, and route planning have been the

domain of graph theory and vector GISs, where most of these algorithms find their

application. However, it is not difficult to adapt these algorithms to a raster

environment, as is highlighted in the following discussion. Raster applications are more

likely to be based on movement across a surface than movement along a network, since

the general idea of finding the least-cost path is linked to movement from cell to cell,

and not along a finite line (Husdal, 2000). Much research has been dedicated to

improving the raster approach, and various solutions and proposals have been

developed (McIlhagga, 1997; Eastman, 1998; Berry 2000). Therefore, in order to

appreciate these efforts, an understanding of the conventions that encircle path-finding

algorithms is fundamental to apply network analysis to a raster environment.

In a raster GIS, cartographic space is defined as a surface, where the value of a

particular property varies over this surface. In order to adapt a network structure, each

cell is viewed as a node linked to its eight neighbouring cells. The cell value of each

node represents the cost of traversing that particular cell. This forms a cost-of-passage

surface. In this grid the values associated with the cells are used as weights to calculate

the least-cost paths. These weights may represent the resistance, friction, or difficulty in

crossing the cell and may be expressed in terms of cost, time, distance, or risk

(Collischon and Pilar, 2000). Starting from a given destination cell, it is then possible to

spread outward and calculate, for each surrounding cell, the accumulated cost of

travelling from any surrounding cell to the destination cell. From this accumulated

surface it is then possible to delineate the least-cost path to the destination cell from any

surrounding cell (Douglas, 1994), simply by following the path with the least

accumulating friction.

Much of the literature on least-cost paths in raster GISs has focussed on surfaces

rather than networks, and has extensively linked slope and aspect to the propagation of

Page 165: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 155 -

the path. Consequently, the algorithms and findings presented may seem inapplicable to

road networks, as demonstrated by Collischonn and Pilar (2000).

The shortest-path function reads data from a lookup table consisting of three

columns: from, to, and distance. If elevation data is included in this table, the function

can provide the steepest-slope direction at a specific location. This direction is referred

to as the flow direction. The equation is:

Slope =ceDis

Etan

Network analysis is also useful in tracing movements of material sites to specific

destinations. This type of analysis can be applied to any linear feature organized into a

network. Using this method, hydrologic networks can be analysed to follow the path of

toxic materials along ground-water drainage systems (Freier, 2000). Network analysis

and the shortest-path function are important tools used in defining flow direction in

hydrological applications.

6.5.8 Hydrograph Generator

The hydrograph, an important filtering function used in hydrological

applications, is a plot of the variation of a water property (discharge, runoff, rainfall,

etc.) with respect to time.

The hydrograph generator introduced in Chapter 5 was implemented as a server-

side application. This section presents a hydrograph generator implemented in pure Java

and operating on the client side. Rubin et al. (2001) designed a Java-based system for

land-use change analysis, which indicates runoff impact resulting from altered land-use

values. The USGS (1999) uses techniques that access real-time data for a selected

gauging station and then produces graphs for information like stream flow. The gauging

stations send their information via satellite to the server, which then delivers the

information to a Web page when called by a script.

The hydrograph is one of the more useful concepts of hydrology and is used

frequently in storm-water management. In the present research, graph applets were

Page 166: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 156 -

designed to show changes in rainfall, temperature, and other variables over daily,

monthly, and yearly periods. These applets provide the user with the option to view any

of these changes either as bar graphs or line graphs. The prototype does not currently

associate Java with a DBMS to manage non-spatial data; rather, the graph applet is

generated from simple text files. The non-spatial data is stored in a flat-file database.

A review of certain Java concepts is necessary to understand the implementation

of hydrographs. First, input/output in Java is handled through streams. According to

Harold (1999), Java's stream support helps to simplify network programming,

internationalisation, and even compression and encryption. A Java data stream is similar

to a pipe in UNIX. To handle file I/O in Java there are two classes, InputStream and

OutputStream. These classes are sub-classed to provide them with other useful

properties. When reading a file, an application asks the InputStream for chunks of data,

in whatever size it uses. Without a read buffer61, the application calls the source of the

data every time it needs a new piece of data. Because this is inefficient, a

BufferedInputStream is provided to wrap the InputStream. When the application

requests a new piece of data, the data is taken from the buffer, reducing communication

overhead. The browser application can provide its own buffering, which the applets may

use, but it is still a good idea to have a Java buffer. For the hydrograph generator,

InputStream is wrapped as an InputStreamReader and then as a

BufferedInputStreamReader. Table 6.20 shows the table reader:

public class TableReader {

BufferedReader br;

public TableReader(URL myURL) {

try {

br=new BufferedReader(new InputStreamReader(myURL.openStream()));

} catch (IOException i) {}

}

Table 6.20: Table Reader

61 A reserved area of memory for temporarily holding data.

Page 167: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 157 -

The next task in generating a hydrograph is to read the InputStream and store the

results in a Vector62 of Vectors. StringTokenizer is used to chop up the input based on a

delimiter (in this case a comma). A readLine() method is used on the

InputStreamReader to chop up the stream line by line, effectively record by record.

Table 6.21 shows the code of InputStream.

public Vector getTable() {

String line = null;

Vector table = new Vector();

Vector currentRow = new Vector();

try {

while ((line = br.readLine()) != null) {

StringTokenizer st = new StringTokenizer(line, ",");

while (st.hasMoreTokens()) {

currentRow.addElement(st.nextToken());

}

table.addElement(currentRow);

currentRow = new Vector();

}

} catch (Exception ioErr) {

System.out.println("Error reading table");

}

return table;

}

}

Table 6.21: InputStream Code

The graph applet uses a text file, such as the one presented in Table 6.22 for

monthly rainfall data, or the one shown in Table 6.23 for daily rainfall data. The

corresponding generated graphs are displayed in Figure 6.14 and Figure 6.15

respectively.

62 A Vector is a dynamic array. It is similar to a linked list. It is used to read data when the amount of data it is not known. A String[ ][ ] would be used if the amount of data was determinable.

Page 168: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 158 -

1997 Average Monthly Rainfall

0

500

Month

rainfall (mm)

Jan 120

Feb 350

Mar 200

Apr 250

May 180

Jun 200

Jul 250

Aug 450

Sep 310

Oct 250

Nov 100

Dec 110

Table 6.22: Monthly Rainfall Data

January 1, 1997 Rainfall

0

100

Hour (am - pm)

rainfall (mm)

00 20

01 0

02 0

03 30

04 0

05 0

06 0

07 0

Page 169: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 159 -

08 0

09 0

10 0

11 90

12 0

13 0

14 0

15 0

16 0

17 0

18 0

19 0

20 0

21 0

22 0

23 0

Table 6.23: Daily Rainfall Data

The graph generator applet does not use any commercial packages such as

NetCharts63, EasyCharts64, or Microsoft Excel to construct graphs dynamically. Rather,

it is written entirely in Java. Table 6.24 gives the code for this applet.

package common.gui;

import java.awt.*;

public class BarChart extends Graph {

int position;

int increment;

public BarChart() {

super();

}

public BarChart(String title, int min, int max) {

super(title, min, max);

} // end constructor

public void paint(Graphics g) {

63 Visual Mining Inc., http://www.visualmining.com/company/index.html 64ObjectPlanet, Inc., http://objectplanet.com/products.html

Page 170: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 160 -

super.paint(g);

increment = (right - left)/(items.size());

position = left;

Colour temp = g.getColour();

for (int i = 0; i < items.size(); i++) {

GraphItem item = (GraphItem)items.elementAt(i);

int adjustedValue = bottom - (((item.value - min)*(bottom – top)) /(max - min));

g.drawString(item.title, position + (increment -

fm.stringWidth(item.title))/2, adjustedValue - 2);

g.setColour(item.colour);

g.fillRect(position+1, adjustedValue, increment-2, bottom-

adjustedValue);

position+=increment;

g.setColour(temp);

}

} // end paint

} // end BarChart

Table 6.24: Bar-graph Code

The user interface of the graph-generation service is presented in Figure 6.14. It

requires the user to specify the following information: time period (year, month, or

day), graph type (line graph or bar graph), and data type (rainfall, temperature, or

snowfall).

Page 171: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 161 -

Figure 6.14: Bar-graph Result

The line-graph code is included in the accompanying CD. It is used to generate

a graph when the user selects Line Graph from the Graph Type option list. Figure 6.15

presents the line graph generated by this code.

Figure 6.15: Line-graph Result

A variety of methods have been used to estimate the ground-water discharge

component of stream flow. Common methods identify those parts of the stream-flow

hydrograph that consist completely of ground-water discharge (base flow), and then

Page 172: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 162 -

interpolate to form the remainder of the hydrograph. Several of these methods for

estimating base flow have been applied manually (Horton, 1933; Barnes, 1939; Snyder,

1939; Chow, 1964), but computer techniques have been used (Hewlett and Hibbert,

1967; Pettyjohn and Henning, 1979; Institute of Hydrology, 1980; Knisel and Sheridan,

1983; Shirmohammadi et al., 1984; Rutledge, 1993; Wahl and Wahl, 1995; Sloto and

Crouse, 1996). These computerized methods, which are fully automated (no calibration

process is required), give estimates of base flow that are useful for regional hydrologic

studies. However, they are not based on flow models and should only be used to

estimate the total or mean ground-water discharge over a long period. Because of its

importance in modelling, the hydrograph is needed in a Web-based modelling tool for

hydrology.

6.6 Conclusion

This chapter presents approaches and perspectives on the development of Java-

based Web applications for GIS analysis. Java advanced-imaging APIs provide a

standard method for integrating powerful image manipulation functionality into image

processing and distribution as well as remote viewing applications. These network-

based Java APIs make it easier for imaging application vendors in the medical,

commercial, and GIS markets to adopt the network computing model. Advantages of

the ability to draw and interact with maps on a client machine include reducing the

amount of processing required of the server and speeding up processes such as zooming

and panning, which otherwise require the constant transfer of requests and responses

between client and server (Green and Bossomaier, 2002).

This initial Java-based GIS prototype also incurs disadvantages. One is the use

of text files rather than a DBMS. As DBMSs have evolved into a powerful technology

that supports complex data objects, larger queries, and stronger transactional support,

their use for geographic data management has become much more practical (ESRI,

2001). Most multi-user GISs today manage their tabular data in a DBMS, and some

Page 173: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 163 -

have begun the migration of their geographic information into a spatial DBMS such as

Oracle Spatial65.

The use of JDBC66 and servlets needs to be investigated. A drawback of this

initial prototype is that important hydrological analysis methods are missing. Therefore,

more functionality needs to be added to the prototype in order to provide a powerful

flood prediction system.

Finally and most importantly, the initial prototype does not take into

consideration the use of real-time data capture and analysis. For example, the prototype

does not allow the use of visualisation and dynamic routing of water, but uses static GIF

images, which are pre-converted using image tools. The configuration files for these

functions, which determine the coordinates in the maps, are also pre-configured. Thus it

cannot be used for near-real-time applications where automated systems are needed

where time is critical in flooding situations.

This thesis considers a basic set of tools that may be used in visualising,

exploring, and modelling spatial data. Java is a powerful technique and may greatly

expand the capability for hydrological modelling in general, and specifically on the

Internet (Parson, 1999). Table 6.25 illustrates the different techniques used for

hydrologic modelling over the Internet (Parson, 1999). Considerations in using Java in

online GIS applications have also been documented by Wang (1997) and Peng (1997).

65 Formerly called SDO. It provides a way to store and retrieve multi-dimensional data in Oracle. It is primarily used for GIS to implement a geo-reference and solve queries such as how is something related to a specific location (Spatial Oracle, 2001). 66 Java Database Connectivity is a standard SQL database access interface, providing uniform access to a wide range of relational databases. It also provides a common base on which higher level tools and interfaces can be built.

Page 174: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 164 -

Technique Server/

Client-

side

Interpreted/

Compiled

Platform

Specific

Read &

Write to

Server

Read &

Write to

Client

Standardi-

zation

Ease of

Use for

Writing

Software

HTML Client Interpreted No Read only Read

Only

Good Easy

CGI Script Server Interpreted Yes Both Neither Good Moderate

JavaScript Client Interpreted No Read

Only

Read

Only

Fair Moderate

Java Client Compiled No Read

Only

Read

Only

Poor Difficult

Helper

Application

Client Compiled Yes Read

Only

Both Fair Moderate

Plug-Ins &

ActiveX

Client Compiled Yes Read

Only

Both Poor Difficult

Server-Side

Software

Server Compiled Yes Both Neither Fair Very

Difficult

Table 6.25: Techniques for Hydrologic Modelling over the Internet

Source: (Parson, 1999).

According to the work of Wang (1997), Peng (1997), and Parson (1999), and the

success of the Java-bases prototype, Java is chosen as the development platform for a

client-side hydrological application. Therefore, in the following chapter, more

specialised methods for designing spatial-hydrological-modelling tools are discussed. A

final prototype of a real-time GIS applied to the hydrology of flooding will be

presented. Improvements in this prototype include associating Java with a DBMS, and

using JDBC and servlets. The purpose of this completed prototype is to validate the use

of the web for hydrological modelling by means of assessing the impact of rainfall

events on regional flood impact analysis. This Java-based approach allows one to drive

a hydrological simulation model with real-time data to generate short-term forecasts

accessible and analyse-able over the Web.

Page 175: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 165 -

7. System Architecture and Implementation

This chapter describes the architecture and implementation of a prototype real-

time Web-based GIS modelling tool for hydrological nowcasting applications. Some

requirements are given and a problem domain is chosen. A test model for flood

hydrology is integrated with the data transmission system and Web-based GIS

technologies. On-line watershed simulation and analysis is provided. Spatio-temporal

hydrological analysis tools support understanding and decision-making. Platform

heterogeneity within and across cooperating enterprises, and with legacy applications

and data, is considered. Multiple geographical data structures are integrated into a single

conceptual framework to deal with different data models. Java provides the support

needed to develop a GIS within the Web paradigm.

7.1 Requirements

Functional requirements for a Web-based GIS include the ability to invoke

remote services, share information, and execute functions across heterogeneous

computing environments. More specifically, the requirements include:

• Real-time data acquisition and analysis

• User-side operation with a Web browser only

• Performance of under a few seconds per request

• Low-cost, particularly for the user

Technical support requirements include hardware, software, an Internet

connection, and some development tools. The Internet connection should be high-

bandwidth and, if the system connects to the Internet through a local area network with

Page 176: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 166 -

a firewall67, placing the system outside the firewall will ease the programming. For the

prototype, the system site connects to the Internet through the network of King’s

College, which has no firewall.

The problem domain choice determines the requirements for the database, the

system functions, and the system results.

7.2 Problem Domain

The area chosen for field data collection is the upper Wye catchment in Central

Wales. Data for the project was obtained from the Institute of Hydrology. The Institute's

Plynlimon catchments, located on the spine of the Cambrian Mountains in Central

Wales, in the headwaters of the Rivers Wye and Severn, provide context and

background. The 870-hectare Severn experimental catchment is largely forested with

spruce, while the 1005-hectare Wye experimental catchment is mostly pasture

grassland. The basic instrumental network, with 40 storage rain gauges, nine river

gauging stations, and four automatic weather stations, is supplemented by recording

facilities, a manual weather station, and soil-moisture access tubes. The original

Plynlimon experiment was a water-budget investigation designed to resolve the

controversy over the water yield of forested and moorland catchments, but the facility

soon became an outdoor laboratory used for investigations of flood generation,

modeling of hydrological systems, and the study of upland water quality.

The upper Wye catchment, the focus of this research, is much smaller,

comprising an upland research basin which has been used previously for hydrological

modelling (Bathurst, 1986a; Bathurst, 1986b; Quinn and Beven, 1993). The basin

covers 10.55 km2; elevations range from 350-700 m above sea level; and average annual

rainfall is approximately 2500 mm (See et al., 1998). Ground cover is grass or moor

67 Firewall: A system that protects a local area network from unauthorized Internet access. A firewall server controls all communication passing between the Internet and the local network.

Page 177: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 167 -

land and soil profiles are thin, mostly peat overlying a podzol or similar soil (Knapp,

1970; Newson, 1976a).

This area has been the focus of intensive hydrological modelling and research

for 30 years. For example, in TOPMODEL (Beven and Kirkby, 1979) forecasts were

acquired for the upper River Wye. This physically-based process model, first developed

in the late 1970s, was calibrated on 1985 data with additional predictions computed for

1984 and 1986 (See and Abrahart, 1999) using the reported parameterisations of Quinn

and Beven (1993).

In addition, Hudson and Gilman (1993) note that the long-term study at

Plynlimon, from 1972 through 1988, recorded increased rainfall falling upon the two

catchments, the Severn and the grassland Wye, confirming difficulties associated with

temporal replication − pre- and post-clearance experiments.

Abrahart and See (2000) provide forecasting benchmarks for river flow

prediction in the form of a numerical comparison between neural networks and ARMA

models. Their benchmarking was based on a three-year period of continuous river flow

data for two catchments: the upper River Wye and the River Ouse in Yorkshire. They

conclude that simple neural networks can produce results that are similar to, and

occasionally better than, a standard statistical time-series predictor using common data

inputs.

Newson (1976b) described the climatic characteristics of the region − high

annual rainfall with rain occurring with great frequency. Rainfall is often of longer

duration and greater intensity than the lowlands. Plynlimon appears as an isolated spot

in the map produced by Ratcliff (1968), which shows the annual number of wet days.

The annual wet days in this area are between 200-220 days per year. Newson and

Harrison (1978) described topographic conditions and they concluded that channels and

slopes of the Plynlimon Severn and Wye catchments would be the more rapid to

respond to flood runoff in the absence of forestation.

Page 178: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 168 -

For other investigations and information on this area, refer to Rodda (1971),

Kirby et al. (1991), Rowan and Walling (1992), Edmondson (1995), Pilling et al.

(1998), and Pilling and Jones (2002).

Both rainfall and runoff are fairly high at Severn and Wye, 2457 and 2075 mm

per year, respectively. The mean annual flood is 19.2 m³ (Cameron et al., 2000). Since

the Wye catchment has been one of the Center for Ecology and Hydrology’s major

experimental catchments since 1968 (Kirby et al., 1991) and is still active for research

projects, a large data set is available. This includes 21 years (1969-1989) of hourly flow

and catchment average-hourly-rainfall data derived from a network of 21 gauges.

Nineteen years of monthly potential evapotranspirtion data are also available for the 40

km2 in which the Wye catchment lies. This large data set forms the basis for previous

modelling studies (Morris, 1980; Bathurst, 1986b; Binley et al., 1991; Cameron et al.,

1999).

The choice of the Plylimon catchments for the prototype was motivated by the

importance of the area, as indicated by the number of research studies performed there,

and the amount of available data.

7.3 Architecture

The final system structure of the prototype is shown in Figure 7.1, illustrating

the relationships among the six major system components. The data collection sub-

system, providing data from devices in the field, feeds into the dynamic model, shown in

the upper left of the diagram. The dynamic model communicates with both the DBMS

server, shown in the lower left, and the Java user interface, shown in the lower right.

The diagram shows that the communication interface between the model and the Java

user interface transmits image and time-series files. The Java user interface uses an

image tools application for conversion among image file types. Finally, the user's web

browser, shown on the right side, runs on the user machine.

Page 179: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 169 -

With limited hardware and software resources, the functionality of the prototype

is moderate yet it provides frequently used hydrological techniques. It is a raster-based

system permitting the integration of environmental modelling functions with classical

GIS functions such as database maintenance and screen display. GIS functions and

modelling functions are incorporated in a single GIS-and-modelling language for

performing both GIS and modelling operations.

The following section presents some of the factors and reasoning that were

considered as the prototype was designed.

Figure 7.1: System Structure

7.4 Support Tools and Resources

Support tools and resources for building the prototype comprise data-collection

hardware and computer hardware and software. Reliability and cost were major factors

in selecting both hardware and software. Hardware requirements for several commercial

Web-based GIS products were reviewed. Most support Windows NT, suggesting a

high-end PC as the computer of choice. To reduce costs, free software packages

available on the Internet were used wherever possible.

Page 180: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 170 -

7.4.1 Data-collection Hardware

Data capture and input, generally the most time-consuming task in building any

GIS, has two main requirements (Worboys, 1995). First, one must provide both the

physical devices for capturing data external to the system and a method for inputting the

captured data into a database. The devices used in the prototype are automatic loggers,

wireless modems, and NT servers. The field data is collected automatically in real time

by rainfall-measuring gauges and transmitted via wireless modem to an NT server for

storage. It is then downloaded in nearly real time by FTP and stored in a database,

which is immediately accessible to the GIS model for further analysis. Second, one

must provide software for converting the field data into structures compatible with the

database and for checking the data integrity. A Java-based subsystem is used in the

prototype. The data-collection configuration is shown in Figure 7.2.

Figure 7.2: Connection Model

Page 181: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 171 -

Rainfall Measurement

A rain gauge is a device used to measure rainfall. Some also measure frozen

precipitation. Precipitation is measured as the vertical depth of water that would

accumulate on a flat level surface. Rainfall is measured in inches or millimeters by

means of a simple receptacle-and-gauge apparatus or by more complex electrical or

weighing devices placed where eddies of air will not interfere with the normal fall of

raindrops. In addition to daily, monthly, and annual totals, the depth of individual

rainfalls and their intensity — the amount of rain falling during a specific time period

— and other pertinent facts are recorded. In the prototype, two tipping-bucket rain

gauges — Aerodynamic rain gauge arg100/LX fitted with plug to suit data logger —

were used in Plylimon catchments.

Spread-spectrum Radio Modems

A 2.4-GHz frequency-hopping spread-spectrum radio modem with an RS-232

serial interface was chosen. It operates license-free with world-wide compliance at full-

duplex speeds up to 115.2 Kbps asynchronously or 64 Kbps synchronously. The radio

has an over-the-air data rate of 250 Kbps. The basic modem has 80mW of output power

and a range of over 300 meters with a small whip antenna attached to the jack on the

rear panel. Ranges of up to 30 miles line-of-site are possible with high-gain directional

antennas. Installation is simple and inexpensive. With such wireless technology one can

forgo wire or fiber cable, which are more expensive and difficult to install.

7.4.2 Computer Hardware

Web-server Computer

A Dell PowerEdge computer, with a 300-MHz Intel Pentium II processor, 128-

Mb memory, and a 3-Gb hard disk, was chosen for the Web server.

Page 182: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 172 -

Database-server Computer

The database-server computer is similar to that of the Web server. A database

server allows a client to pass Structured Query Language (SQL) request messages to the

database, which resides on the same computer, and to return results.

7.4.3 Software

All software packages and data sets used were obtained free from the Internet or a

government agency. Downloaded information from these packages is given in

Appendix A.

Operating System

Windows NT 4.0 was selected for the prototype, over Unix. Although not the

best technical choice, because it limits the choice of Web servers, it is sufficient to run

the system and is cheaper.

Web Server

A Web server supports the Internet protocols, including HTTP. For the

prototype, Microsoft's Internet Information Server (IIS) was chosen. Although other

Web servers were considered, IIS was selected mainly because it is part of the Windows

NT option pack and can be downloaded from the Internet.

For the Java-based application, Servertec Internet Server 1.10.3 was used. It is a

small, fast, scalable, and easy-to-administer platform-independent application and Web

server.

Page 183: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 173 -

Database System

The database system is clearly a fundamental component. Some database

systems are large and multi-featured, like Oracle and Sybase, but are expensive. Others

are small and free, like mSQL68 and MySQL. mSQL was selected, primarily because

the storage requirement is not large. An operational system would require a more

powerful database system.

Java-servlet Engine

Because the Web server chosen does not support the Java servlet API, a Java-

servlet engine is needed. Although primarily a Web server, the choice was the

Servertec Internet Server, which can also be used as a servlet engine for any application

or Web Server supporting Apache Modules, ISAPI, NSAPI, CGI or Java. It runs on any

platform supporting the Java Runtime Environment (JRE) version 1.1.x or later, and

supports all industry-standard platforms.

A servlet can be thought of as a Java applet that runs on the server side. Java

servlets have the following advantages over CGI scripts: (i) Servlets are more efficient

because they are loaded only once; (ii) Servlets are more secure due to Java’s memory

management support; (iii) Servlets are easier to develop and faster to deploy. Their main

disadvantage is that some Web servers don’t support the Java servlet API.

Development Tools

Development languages used include Java, Perl, and HTML, with various Web

browsers. The Java Development Kit 1.1.8 Java compiler was used. Java has two

important APIs, the applet API and the servlet API. Both are used, applets for model

calculation and drawing charts and servlets for data querying.

68 mSQL or (mini SQL) from Hughes Technologies : http://www.hughes.com.au

Page 184: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 174 -

Structured Query Language

Structured Query Language (SQL) is used to retrieve, create, update, and delete

tuples in a relational database. mSQL is used with mSQL-JDBC69, a database-access

API for the mSQL database engine that conforms to the Java Database Connectivity

(JDBC) API. mSQL and the mSQL-JDBC are freely available for non-commercial use.

The JDBC API supports both two-tier and three-tier models for database access.

Java-based Applications

Because users often experience difficulty transferring their existing knowledge

to the realm of spatial data handling (Davis & Medycki-Scott, 1994), careful attention

must be paid to the user interface (Chopra, 1996; Peng, 1997; Wang, 1997). The

prototype Java-based interface uses the AWT70 library (Krutsch et al., 2001; Rodrigues,

2001), a flexible user-friendly interface for creating Web sites for interacting with

geographic data.

7.5 Database Connection

The prototype uses two data-retrieval channels. One downloads data files for local

rendering or analyzing. These files are pre-deployed onto the Web server; an applet

simply downloads them from the appropriate URL using standard HTTP. The second

obtains statistical, availability, and other analyses about data. This latter channel is

isolated inside the DataManager interface.

The prototype is configured to support three database engines, mSQL, MySQL,

and Access. The data managers available are:

• mSQL direct connection — used in current version

69 JDBC is available from http://www.Imaginary.com. 70 AWT or Abstract Window Toolkit introduced in previous chapters.

Page 185: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 175 -

• Access ODBC direct connection — ready for connection to Access

• MySQL direct connection — ready for connection to MySQL

• Servlet with mSQL backend — used in current version

• Servlet with Access backend — ready for connection to Access

• Servlet with MySQL backend — ready for connection to MySQL

The first three data managers allow an applet to manipulate the data directly

using a JDBC connection. These represent direct-connection methods — a 2-tier

approach. The last three data managers, allowing an applet to manipulate data using a

special proxy servlet using a three-tier approach, represent servlet-connection methods.

Direct Connection

A Java database connection is chosen over the combination of HTML forms,

CGI, and scripts because of its superior handling of complex systems. JDBC (Hamilton

et al., 1997), a Java API for executing SQL statements, consists of a set of classes and

interfaces written in Java (Horstmann et al., 1998) and provides access to a wide range

of relational databases.

The JDBC driver category employed is implemented using a native-protocol

pure Java driver. This type of driver converts a JDBC call directly into the network

protocol used by the DBMS, allowing for a direct call from the client machine to the

DBMS server. An applet is downloaded from a Web server to the client’s machine

where it uses JDBC to access the server. The applet is restricted by the Web-browser

security so it cannot access the client’s local files and can only make a connection to the

originating host. The driver accesses the database in the server by communicating with

the JDBC applet driver provided by the database vendor. Figure 7.3 illustrates the

database connectivity.

Two security issues related to JDBC, applets and firewalls, merit consideration.

Applets are not allowed to connect to servers other than those from which they came. Of

course, if you sign an applet you can access any data and execute any program.

Page 186: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 176 -

Firewalls, and some routers, restrict access by restricting ports; they must be carefully

designed.

Servlet Connection

Three-tiered applications consist of a client supporting the user interface, a Java

servlet incorporating the application logic, and the database. See Figure 7.4. Processes

can be managed and deployed separately from the GUI and the database. Three-tiered

systems are claimed to be more scalable, robust, and flexible (Orfali et al., 1996). They

can integrate data from multiple sources. The following characteristics are significant:

• The user interface cannot access the database directly — only through a

well-defined API in the middle tier.

• The connection between the middle tier and the database tier is fast.

• Applets contain only view-related classes. The middle tier handles database-

specific functions.

Figure 7.3: Database Connectivity (JDBC)

Database Manager Implementation

The prototype contains two implementations of the DataManager interface,

BaseDBDataManager and ServletDataManager. The former connects to a specified

Page 187: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 177 -

database using JDBC but, for the following reasons, is not very suitable for Internet

applications:

• Data is shared among all Internet users.

• Database connections may not work behind firewalls.

• Database drivers may require some native code. Normal applets are not

allowed to load native code.

• An applet is required to download all database-related classes.

Figure 7.4: Three-tier Approach

ServletDataManager, developed to take advantage of the three-tier architecture,

is in fact just a very simple forwarding mechanism. The user interface encodes

information and sends it to the servlet in the middle tier, which decodes it and passes it

to the appropriate DataManager. After a database connection has been established,

through a JDBC or servlet data manager, the servlet data-manager page is activated.

Figure 7.5 shows the interface after connecting using a servlet with an mSQL back-end

loading a data file.

Page 188: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 178 -

7.6 The Dynamic Model

A hydrologic model, a computerized representation of a natural system,

embodies mathematical equations depicting the processes of water flux and storage

within the earth-atmosphere system. Such models are used for: (a) better understanding

of the hydrological system; (b) prediction of flood events and their area of influence;

and (c) impact assessment for land surface, climate change, or river engineering

scenarios. Prediction and impact assessment help to manage river systems and flood

hazards.

Figure 7.5: User Interface

Dynamic models are difficult to run in most GISs because they have been

designed for querying and maintaining a static database with static phenomena.

Page 189: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 179 -

Standard GISs do not explicitly allow dynamic phenomena to be stored and analysed;

nor do they provide efficient facilities for iteration through time (Wesseling et al.,

1996a).

The prototype's dynamic and spatial model, designed to meet the four essential

requirements of real-time data analysis, data accessibility, visualisation, and public

involvement, provides a quantitative description and understanding of hydrological

processes. It is only one of many potential applications that could have been developed;

the purpose of its incorporation in the prototype is not to demonstrate the model itself

but rather to develop a means of implementation that can readily be applied to other

models and other applications.

The model, approximately 1150 lines of Perl, was previously developed and

used within an offline spatial decision-support system for the MODULUS project

(Engelen, 2000; Oxley et al., 2002). It was chosen because it is a simple data-lean

system, which had already been applied within the context of decision support for

hydrological purposes at the regional scale. Many better hydrological models were

available but none had the advantages of simplicity and previous application, as well as

being in-house and thus available freely for this project.

7.6.1 Dynamic-modelling Functions

Using a regularly gridded Digital Elevation Model (DEM), the model program

calculates the accumulated water flowing out of a cell into its neighbouring downstream

cell. Accumulated water is that in the cell plus that transported from upstream cells. In

addition, the movement of water downstream over a local drainage network is

calculated. Based on the transport capacity of a cell, only a transport of water less than

or equal to that capacity is modelled; remaining water is assumed to be stored.

Cell properties are table driven. For example, infiltration capacity, the maximum

amount of water that can infiltrate during one time step, different for each soil type, is

Page 190: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 180 -

given by a lookup table similar to that in Table 7.1. Given an infiltration soil map

showing soil type and the infiltration capacity table, an infiltration capacity map can be

generated.

Key Capacity

mm/2 hrs

1 (clay) 2.1

2 (loam) 8.3

3 (sand) 19.0

Table 7.1: Infiltration Capacity

For each time step, cell values are assigned based on a time series linked to a soil

map. Values for each cell or cells are written to a time-series file. The result, after a

model run, is a time series containing a list of cell values per time step for each

identified cell.

7.6.2 GIS Functions

A local drain-direction map is created using the 8-points-pour algorithm with flow

directions from each cell to its steepest downslope neighbour. Aspect and slope are

calculated using elevation data from a digital elevation model. Comparison, Boolean,

arithmetic, trigonometric, exponential, and logarithmic functions are performed on a

cell-by-cell basis. For example, with the constant definition moist_critical=20, the

program can compare moisture map values with the moist_critical constant to do

further analysis, such as reporting the result to a time-series file. For another example,

to convert a runoff map from mm/2 hrs to m³/sec at each time step and to transform to

an approximately normal distribution with the log10 operator, the program computes

LogRunOff = log10 (Runoff/ConvConst + 0.0001). Where ConvConst=720000 is a

constant definition in the program for the conversion of mm/2 hrs to m³/sec.

Page 191: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 181 -

The program specifies maximum and minimum cell values. Commands are

available for operations such as summing all cell values and calculating the total area

represented by non-missing-value cell values. One non-spatial value, as a function of

cell values associated with a map, can be computed. For example, the program can

compute the maximum value of moisture content of two or more soil moisture maps and

write the result to a time-series file showing soil-moisture-content variation over time.

7.6.3 Program Operation

The dynamic modelling program runs continuously in the background,

processing incoming rainfall data through hydrological analysis. At each time step of

one hour, the maps and data tables from the previous timestep are used to calculate new

maps and data tables. For each time step, a time series containing a set of map cell

values is input or output. Figure 7.6 illustrates the dynamic model.

Figure 7.6: Dynamic Model

For each timestep, non-spatial time-series and spatial raster-image data on

variables such as rainfall and soil moisture are stored as a set of maps, one for each

timestep, or as a time-series file. A database loading program uploads these files

automatically to the database. Figure 7.7 illustrates the interactions the model, the

loading program, and the applet. The details and operation of the model are provided in

the accompanying CD.

Page 192: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 182 -

Figure 7.7: Interactions within Modelling Program

7.7 Java User Interface

The Java GUI, providing general information, operations for querying spatial

and non-spatial data, and analysis operations, comprises four pages. The analysis page

provides a map viewer and analysis functions including slope, aspect, accumulated flux,

overlay, zoom, histogram, and metadata. The time-series (TSS) graph page provides

time-series analyses. The multi-image page provides multiple-image viewing and the

ability to animate the images of different variables. The data-manager page provides

database querying via JDBC or the servlet. Figure 7.8 illustrates the menu system and

Figure 7.9 shows the initial GUI page. Appendix E gives a UML description of the Java

program structure.

Page 193: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 183 -

Figure 7.8: GUI Menu System

7.7.1 Analysis Page

Image Rendering and Map Generation

To display a DEM image along with the results obtained by applying a

hydrological function, such as slope or aspect, a rendering algorithm maps between the

DEM elevation data, or the function results, and a colour palette. The image is displayed

dynamically. The rendering algorithm is described below after a discussion of the

relevant file formats.

Page 194: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 184 -

Figure 7.9: Initial GUI Page

An Image file, with suffix .img, stores the raster data layers used in analysis and

contains the attribute value of each pixel in the image. The data structure is a sequence

of numbers — 8-bit integer, 16-bit integer, or real. For example, an image of three rows

by five columns is stored as a single column of 15 numbers.

An image documentation file, with suffix .doc, contains information about its

corresponding image file and allows a Java program to construct a grid from the image

file. The .doc file contains the title, sequence data type, file type — ASCII, binary, or

packed binary, number of columns, number of rows, and other information such as

minimum values, maximum values, and the units of measure.

Page 195: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 185 -

The ASCII file format, with suffix .txt, is used by the hydrological model for its

spatial-data input files and its output files. These files are converted, through a Java

application, to .img files for presentation to the applet.

The TSS file format, with suffix .tss, contains ASCII-formatted text used for the

hydrological model's output. An example is shown in Table 7.2.

Temp., three Stations

4

time

1 23.6 28.0 23.9

2 23.7 22.0 24.8

3 23.7 22.9 25.0

4 21.0 24.5 21.2

5 19.0 24.7 17.2

6 18.9 22.7 17.9

7 16.2 22.2 15.9

8 16.8 24.2 14.5

Table 7.2: Example of a Time-series File

Line 1 contains a description. Line 2 contains the number of columns. Line 3

contains a column description. Subsequent lines contain data formatted in rows and

columns, columns being separated by one or more spaces or tabs. Each row represents

one timestep i at time t(i). The first row represents the timestep i=1, the second row the

timestep i=2, etc. The first column contains the time t for the corresponding timestep.

The time in the first row is the start time t(1). For consecutive rows, the time in the first

column increments each row with the timeslice dt of the model; in the ith row (ith

timesteps) the time is t(1) + (i-1) multiplied by dt.

Page 196: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 186 -

The remaining columns contain values for n identifiers. Using one-based

indexing, the array element in row i, column j contains the value for identifier j-1 at

timestep i.

Tables 7.4 and 7.5 show the algorithm used for rendering a DEM image. The

applet reads a .img file from the server and generates the appropriate colour palettes.

Two palettes are generated, a mono and colour palette. See MonoImageRenderer.java

and ColorImageRenderer in the tables for details.

ColorImageRenderer Program /**This interface describes the behaviour of "ImageRenderer" object ImageRenderer is object that knows how to render the data from some ImageFileData object This interface is implemented from two classes MonoImageRenderer - renders the data into black-grey-white image.StandardColorRenderer - class renders the data into color image (using some standard color palette). It is fairly easy to implement additional ImageRenderers (that use some other ColorPalette)*/ public interface ImageRenderer { /**sets new data object to be rendered*/ public void setImageFileData (ImageFileData data); /**returns the current data object*/ public ImageFileData getImageFileData (); /**Returns the Color data generated from the current ImageFileData object. color data is array with widht * height elements, every one containing the color of a single pixel.*/ public int[] getColorData(); /**Returns the Color table - array of all the Colors.*/ public int[] getColorTable(); /**returns rendered image*/ public Image getImage(); /**returns rendered 'legend' component*/ public Component getLegendComponent(); /**returns the generated 'color-value' map*/ public LegendMap getLegendMap();

Table 7.3: ColorImageRenderer Program

MonoImageRenderer Program This class extends AbstractImageRenderer. It supports rendering the ImageFileData object with a mono palette (default number of gray shades is 256) public class MonoImageRenderer extends AbstractImageRenderer { // The default (shared) MonoImageRenderer instance private static MonoImageRenderer def = new MonoImageRenderer(); /** returns the default (shared) MonoImageRenderer instance*/ public static MonoImageRenderer getDefaultRenderer()

Page 197: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 187 -

{ return def; } /** Default constructor. */ public MonoImageRenderer () { this (256); } /**Constructor that supports random number of shades.*/ public MonoImageRenderer (int _classes) { if (_classes < 4) _classes = 4; if (_classes > 256) _classes = 256; colorClasses = _classes; generateColors(); } /** Generates the appropriate colors and fills the colorTable.*/ private void generateColors() { if (colorTable != null) return; colorTable = new int[256]; int mask = (1 << 16) + (1 << 8) + 1; // common mask (R,G,B) = (1,1,1) - very dark gray for (int i=0; i<256; i++) { colorTable[i] = (255 << 24) + i * mask; // generate the current gray value } } /** Returns String description of this Object.*/ public String toString () { return "MonoImageRenderer ["+ colorClasses +" shades of gray]"; } }

Table 7.4: MonoImageRenderer Program

The class ImageFileData encapsulates information loaded from .img and .doc

files. The loader class client.loader.FileImgDataLoader supports one file type — binary

— and three data types — byte, integer, and real. Image generation is performed

through the renderer class client.renderer.MonoImageRenderer and

StandardColorRenderer. The renderer class uses an arbitrary colour palette and supports

two renderer implementations, MonoImageRenderer which uses a colour palette with

256 shades of grey and StandardColorRenderer which uses a special colour palette

derived from generated .gif files from Idrisi software. Rendering an image on the screen

is accomplished as follows:

Page 198: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 188 -

1. Minimum and maximum data values are calculated.

2. A delta value is calculated: delta = (maxValue - minValue) / (colors.length - 1).

3. For each point, colour is calculated:

i. int colorIndex = (int)(((value - minValue) / delta)) + 1

ii. Color color = colors[colorIndex]

iii. Color with index 0 is reserved for not applicable or missing data.

Figure 7.10 shows the analysis page with a DEM displayed.

Figure 7.10: Analysis Page — DEM Displayed

This client-side program reduces network traffic and the server's processing load

when displaying large files. Rendering images and performing hydrological calculations

is processor-intensive; having the server perform all processing, particularly with

multiple users, would place a large load on the Web server and degrade user response.

Once a DEM is displayed, a user can adjust the map view with zoom-in, zoom-out, and

pan.

Page 199: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 189 -

After calculating colour for each data value, the program generates a visual

image for an arbitrary zoom factor. For zoom factor 1, each data value is represented by

a single pixel, for which colour is easily calculated. For zoom factor 2, each data value

is represented by a four pixels, all with the same value. For zoom factor 0.5, only even

values are displayed.

Panning is the process of moving the map in a specified direction; the cursor is

positioned and the mouse clicked and dragged. Since panning is performed in Java,

there is no need to send the coordinates of the map to the server and wait for a result, as

is done in a server-side application. The generated image is shifted and the program

renders only the visible part. The relevant events are mouseDown to set the anchor

points for the image, mouseUp, and mouseDrag to move the image. The new image

moves from the anchor point to the mouse position.

Analysis Functions

The analysis page provides a variety of methods such as slope and aspect terrain

analyses. The slope function works as follows. For each cell, the program calculates the

slope of the cell based on the elevation of its eight neighbours in a 3x3 cell window.

The maximum-drop method of Horn (1981) and Skidmore (1989) is used. The slope

result is given as dz/dx, the change in vertical distance per change in horizontal distance.

A B C D E F G H I

Figure 7.11: Example of Nine-pixel Image

Page 200: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 190 -

Figure 7.11 shows a nine-pixel image, which is manipulated using the three-by –

three window algorithm by extracting the nine pixels, A through I, to calculate a value

for cell E.

ACx −=∆ 1 GAy −=∆ 1

DFx −=∆ 2 HBy −=∆ 2

GIx −=∆ 3 ICy −=∆ 3

*3

321 xxxDX ∆+∆+∆= Pixel size

*3

321 yyyDY ∆+∆+∆= Pixel size

The slope at pixel x, y is calculated as 2

2 yx ∆+∆

The slope as a percentage is calculated as

if slope ≤ 1 then slope = slope * 100

else slope = 200 – slope100

The slope in degrees is calculated as

Slope in degrees = tan¯ ¹ (slope) π

180

Figure 7.12 shows the result of the slope function performed on the DEM displayed in

Figure 7.10.

Page 201: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 191 -

Figure 7.12: Slope Result of the DEM in Figure 7.10

The slope result shown in Figure 7-12 is calculated in degrees, as indicated by

the radio button. Slope is determined by siting a 3x3 cell window of analysis over each

cell to calculate steepness for the cell, based on the rate of change between it and its

eight surrounding cells. CellSize specifies cell size in meters. The default fixed pixel

size is 30 m. The image is projected into the UTM projection system where the x, y, and

z distances are all in meters. The slope estimate represents the vertical variation against

the horizontal variation across the study area. Two cases are recognized in the

calculation: the Rook’s-case71 and Bishop’s-case72. For example, in a 3x3 window, the

distance between the central pixel and any of the Rook’s-case neighbouring pixels

equals the pixel size — the resolution — while the distance between the central pixel

and any of the Bishop’s-case neighbouring pixels is equal to 2 pixel-size, to

compensate for the diagonal distance between the centers of the two pixels.

71 Adjacent upper, lower, left, and right pixels 72 Adjacent upper left, upper right, lower left, and lower right pixels

Page 202: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 192 -

The Java slope-function result was compared to that of Idrisi software run on the

same DEM. The Idrisi image was overlaid with the Java image and the Idrisi pixels

subtracted from the Java pixels. Figures 7.13, 7.14, and 7-15 respectively show the Java

image, the Idrisi image, and the combined image. The overlay operation was performed

using Idrisi’s overlay function.

Figure 7.13: Slope Generated by Java

Figure 7.45: Slope Generated by Idrisi

Page 203: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 193 -

Figure 7.15: Overlay Result

A histogram of the overlay results shows that the difference between the Java

and Idrisi methods ranges from –1.04 to –1.2 degrees. See Figure 7.16. Although the

calculated slopes differ, because different algorithms are used, the variation is very

small.

Figure 7.16: Histogram of Overlay Operation

Page 204: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 194 -

The class S_DegTransformer calculates slope of type degree. All edge values

are set to zero. For other cells, a new value is calculated from its eight neighbours as

follows.

First, calculate the dx and dy values.

offset = y * columns + x; // the offset of the current point dx = (oldData[offset-columns+1] + 2 *oldData[offset-columns] + oldData[offset-columns-1]) - // next horizontal line (3 neighbours) (oldData[offset+columns+1] + 2 * oldData[offset+columns] + oldData[offset+columns-1]); // previous horizontal line (3 neighbours) dy = (oldData[offset-columns+1] + 2 *oldData[offset+1] + oldData[offset+columns+1]) - // next vertical line (3 neighbours) (oldData[offset-columns-1] + 2 * oldData[offset-1] + oldData[offset+columns-1]); // previous vertical line (3 neighbours)

Second, calculate a new value using the degree formula. The value of

180.0 / Math.PI is hard-coded as 57.3.

dx /= 240; dy /= 240; s = Math.sqrt (dx * dx + dy * dy); s = Math.atan (s) * 57.3; //(180.0 / Math.PI) ;

newData[offset] = s;

The class S_PerTransformer calculates slope transformation of type percent. It is

identical to S_DegTransformer except for the final formula, which is:

dx /= 240; dy /= 240; // find the s - new value // perform the "per" formula s = Math.sqrt (dx * dx + dy * dy); if (s <= 1) s = s * 100; else s = 200 - 100/s; newData[offset] = s; // fill the new data

The class Aspect_Transformer calculates aspect transformation. All edge values

are set to –1. For other cells, a new value is calculated from its four neighbours as

follows.

First, calculate the dx and dy values from the four nearest neighbours.

Page 205: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 195 -

offset = y * columns + x; // the offset of the current point dx = (oldData[offset+1] - oldData[offset-1]); dy = (oldData[offset+columns] - oldData[offset-columns]); // previous vertical line (3 neighbours)

Second, calculate a new value using the appropriate formula.

// find the s - new value s1 = Math.sqrt (dx * dx + dy * dy); if (s1 == 0) s = -1; else { double tan = dx/dy; double ttan = - 0.75 * tan; double atan = Math.atan(ttan); s = atan / pideg; // pideg = PI in degrees = Math.PI / 180; if (dy < 0) s+=180; if (dy >= 0 && dx > 0) s+=360; }

Overlay Operation

Egenhofer and Richards (1993) observed that a map overlay can be viewed as a

metaphor for many of the conceptualizations and interactions that occur in a geographic

database. The combination of one or more layers into a single layer that is the union,

intersection, difference, or other Boolean operation can be undertaken in the prototype

by multiplying binary images in the overlay module. Two image names and an overlay

option are selected. Available options are listed in Table 7.5.

Operations Description Add Pixels from image 2 are added to pixels from image 1. Subtraction Pixels from image 2 are subtracted from those of image 1. Multiplication Pixels from the two images are multiplied. Division Pixels from image 1 are divided by pixels from image 2.

Table 7.5: Overlay Options

The code for the add overlay is shown below. Pixels of the first images are

added to pixels of the second. If data are missing in an input image, the result is a

missing data pixel.

for (int i = 0; i < columns * rows; i++)

{ if (oldData[i] == ImageFileData.VALUE_NO_DATA || oldData2[i] == ImageFileData.VALUE_NO_DATA) newData[i] = ImageFileData.VALUE_NO_DATA;

Page 206: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 196 -

else newData[i] = oldData[i] + oldData2[i]; }

Figure 7.17 shows the overlay button, the selection boxes for the input images,

and the overlay options in the analysis page. The page shows the result of overlaying

two images using the option divide. When the applet displays a result, all buttons are

disabled except the zoom-in, zoom-out, histogram, and reset transformation. Pressing

the reset-transformation button deactivates all buttons.

Accumulated-flux Operation

Accumulated-flux (accuflux) analysis calculates accumulated water and water

flow over a topological network on a local-drain-direction (LDD) map. It produces a

map of grid cells giving the total amount of water that has traversed each cell.

Figure 7.17: Overlaying Two Images

Page 207: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 197 -

For each cell in the map, the accumulated amount of water that flows out of the

cell and into its neighbouring downstream cell is calculated. This accumulated amount

is the amount of water in the cell itself plus the amount of water in upstream cells. An

LDD map is first determined, using the eight-points-pour algorithm with flow directions

from each cell to its steepest downslope neighbour. From an analysis of a DEM, a grid

of flow directions is created, which assigns to each cell an LDD code directed to the

neighbour with the lowest value.

An LDD map is a network of cells, with each cell assigned an integer from one

to nine to identify the neighbour to which water flows. See Figure 7.19 for the meaning

of each value. The value five represents a pit, a cell without drainage to a neighbour.

The starting point for a catchment analysis is a DEM from which an LDD map is

derived. The map shows the direction of the steepest descent for each cell in the DEM

(see Figure 7.20). Connecting the individual LDD values yields stream lines for water

flow and the drainage pattern of the landscape. After creating the LDD map, the

accumulated flux is obtained by calculating the amount of water (see Figure 7.21) that

flows out of the cell into its neighbouring downstream cell. This accumulated amount is

the amount of water in the cell itself plus the amount of water in upstream cells. The

resulting map is shown in Figure 7.22.

The class LDDTransformer performs LDD and flux-accumulation

transformations, the most complicated transformation in the prototype. The first step is

to create an LDD map, using four passes. First, calculate the LDD values for all cells

with at least one neighbour with a lower value than the current cell. Mark each cell as a

pit if all neighbour values are larger, a flat if no neighbour value is smaller but there is

at least one neighbour that is equal, or indexed with the index of the lowest neighbour

value.

The second pass, which runs recursively73, calculates LDD values for all points

of flat type 1, a set of neighbouring cells at the same elevation and for which at least one

cell has a neighbouring cell at a lower elevation than the cell under consideration. Flat

73 Recursion is a programming technique in which a method calls itself.

Page 208: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 198 -

type 1 is determined using an algorithm that iteratively assigns drain directions to all

cells with a neighbour at the same elevation that do not have a drain direction pointing

back to the cell under consideration.

The third pass, which also runs recursively, calculates LDD values for all points

of flat type 2, a set of neighbouring cells at a lower elevation than the cell under

consideration. Flat type 2 is determined using an iterative algorithm which assigns drain

directions to all cells of flat type 2 having neighbours draining into that cell.

The fourth pass marks all unresolved cells as pits and fixes them. Pits can only

be resolved artificially, by using the approach of depression filling, and finding the

lowest overflow point towards a different catchment. The reason for removing the pits

is that they frequently result from data errors in the DEM.

7 8 9

4 5

6

1 2 3

Figures 7.18 and 7.19: Direction of LDD Code and LDD Map

Page 209: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 199 -

Figures 7.20 and 7.21: Amount of Water and Accumulated Flux Map

The second step of the algorithm calculates flux accumulation, as follows. For

each cell:

1. Create the LDD index calculated from the DEM.

2. Calculate the accumulated amount of water that flows out of the cell and into

its neighbouring downstream cell using a water map and the LDD created in

step 1.

3. Display the result map as an accumulated flux map.

Figure 7.22 shows the result of the accumulated flux generated.

6 0.5 2 2 2

0.5 0.5 2 2 2

0.5 0.5 2 2 0

0.5 0.5 6 0 0

0.5 6 6 6 6

6 0.5 2 2 2

6.5 1 6 4 2

7 7.5 10 4 0

0.5 25 6 0 0

0.5 56 18 12 6

Page 210: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 200 -

Figure 7.22: Accumulated Flux

Legend

A legend-generator program produces analytical statistics on maps, such as

minimum, maximum, and average selected cell values within a user-specified window.

This is accomplished by mapping between colours and values. An entire image can be

chosen to refine the analytical process. Table 7.6 shows the code of the legend generator

LegendMap.

/**Class LegendMap handles mapping between Colors and values. Once initialized it can return corresponding color for some value or corresponding interval of values for some Color. */ public class LegendMap { private int[] colors; double minValue; double maxValue; double delta; /**creates new LegendMap object given an array of colors and minimum and maximum value.

Page 211: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 201 -

<BR>colors[0] corresponds to minValue; <BR>colors[max] corresponds to maxValue; <BR>all other colors are equally distributed.*/ public LegendMap (int[] _colors, double _minValue, double _maxValue) { int len = 0; if (_colors != null) len = _colors.length; if (_colors == null || len == 0) { System.err.println("WARNING: Initializing LegendMap with null 'colors' vector!"); colors = null; } else { colors = new int[len]; System.arraycopy(_colors, 0, colors, 0, len); } if (_minValue < _maxValue) { minValue = _minValue; maxValue = _maxValue; } else { maxValue = _minValue; minValue = _maxValue;} if (colors == null || len <= 1) delta = (maxValue - minValue); else delta = (maxValue - minValue) / (len - 1); } /** returns the size of the legendMap.*/ public int getSize() { if (colors == null) return 0; return colors.length; } /** returns the LegendElement (pair <value, Color>) at given position.*/ public LegendElement getElementAt(int pos) { if (colors == null) return null; if (pos < 0 || pos >= colors.length) return null; return new LegendElement (minValue + pos * delta, colors[pos]); } /** returns the LegendElement (pair <value, Color>) that corresponds to a given value. */ public LegendElement getElementForValue(double value) { if (colors == null) return null; int n = colors.length; if (n == 0) return null; if (value > maxValue) value = maxValue; if (value < minValue) value = minValue; int pos = (int)(((value - minValue) / delta)); return getElementAt(pos); } /** Returns only the color that corresponds to a given value. */ public int getColorFor(double value) { int pos = getColorIndexFor(value); return colors[pos]; } /** Returns only the color index that corresponds to a given value. */ public int getColorIndexFor(double value)

Page 212: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 202 -

{ if (colors == null) { System.err.println("WARNING: LegendMap with null 'colors' vector!"); return 0; } int n = colors.length; if (n == 0) { System.err.println("WARNING: LegendMap with 'colors' vector size 0!"); return 0; } if (value >= maxValue) return colors.length - 1; if (value <= minValue) return 0; int pos = (int)(((value - minValue) / delta)) + 1; if (pos == colors.length) pos--; return pos; } }

Table 7.6: Legend Generator Program

Current-point Information

Information about the current point of the cursor is maintained by tracking all

cursor movements. When the cursor position changes but remains over the

ImageCanvas object, the applet asks the ImageCanvas object for information about this

point. If it is valid point, ImageCanvas returns the ImageCanvasPointData object. At the

bottom of the analysis page the x and y coordinates are displayed whenever the cursor is

placed over a pixel. In addition, the colour of the pixel is displayed when the cursor is

placed over the image. Figure 7.24 shows the current-point-status program.

class ImageCanvasPointData { int x; - the x coordinate int y; - the y coordinate int val; - the real point data Color color; - the color that corresponds to this value } /* this method shows the "current point status" (X, Y, value, color) on screen it is usually called on every mouse move*/ public void updatePosition(Point p) { // ask the imageCanvas object for information about this point ImageCanvasPointData data; if (p == null) data = null; else data = imageCanvas.getPointData(p); if (data == null) { // if this is not valid point labelXYval.setText("");

Page 213: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 203 -

labelValval.setText(""); rectCol.setFillColor(Color.lightGray); } else { // if this is valid point - show the data on screen labelXYval.setText("(" + data.x + ", " + data.y + ")"); rectCol.setFillColor(data.color); labelValval.setText("" + data.val); } }

Figure 7.23: Current-point Information

Histogram

The histogram of an image — a statistical measure called the probability mass

function (PMF) — is computed by adding the total number of pixels of a particular

value and then dividing by the total number of pixels in the image.

∑∑−

=

=

====1

0

1

0

1)()(H

y

W

xv WH

ipiVpPMF {1

0

iVif

iVif

xy

xy

=

where

yxatlocationpixelofvaluevxy ,=

with

W = width of the image, in pixels

H = height of the image, in pixels

p(V = i) = probability that a particular value occurs

For example, suppose that the sample space of possible pixel values consists of

an integer range from zero to 255. Suppose that, of the 64 pixel values, 32 are zero, 16

are 128, and 16 are 255. The histogram for that image is given by Table 7.7.

Page 214: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 204 -

Value PMF0 32 128 16 255 16

Table 7.7: Histogram of a Simple Image

Computation of a histogram involves adding the number of pixels of a particular

value. This is generally a trivial task for a 256-colour image. However, modern colour

image processing typically uses images with at least 24 bits per pixel. Such pixels have

224 = 16,777,126 ≈ 16-million colours. Histograms based on a PMF of 16-million

colours are typically sparse (Lyon, 1999). The reason is that an image typically has

many fewer pixels than the number of colours. For example, even if there is an image

that is 4096 × 4096 (16,777,126 pixels), the probability that every pixel has a different

colour is small. Thus, even for a large image, the PMF will be sparse.

A sparse PMF can be stored compactly (Lyon, 1995). A typical approach to

histogram computation is to divide the image into its colour components. It is also

typical for the colour components to have only 256 possible values. This eases the

computational burden and is in keeping with the kind of images that are supported in the

prototype.

The histogram is thus partitioned into K equal bins where K =256. The following

code shows the histoArray in the histogram Java program.

histoArray = new double [256]; For (int i=0; i<width; i++) For (int j=0; j<height; j++) histoArray[plane[i][j] & 0xFF]++;

After all values are stored in the histoArray, the maximum value is computed.

The histogram is then normalized so that all values in histoArray sum to one. Thus the

probability that a pixel will have a value is stored in the histoArray. The following code

shows the normalization process.

Page 215: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 205 -

Double max = 0.0; for (int i=0; i<256; i++) If (histoArray[i] > max) max = histoArray[i]; //Normalize for (int I=0; I<256; i++) hisArray[i] = (histoArray[i] / max);

A histogram of rainfall data is shown in Figure 7.24. The horizontal axis

represents the intensity, usually a value between zero and 255. The vertical axis

represents the number of pixels in the image with the specified intensity. Summing the

vertical axis values gives the total number of pixels in the image. Notice that the

histogram allows the user to choose the class width or category count.

Figure 7.24: Simple Histogram

Page 216: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 206 -

7.7.2 Time-series Hydrographs

A hydrograph, a graph of flow rate versus time, is used frequently in storm-

water management. Since most printed records report flow daily, hydrographs for large

watersheds are also reported daily. However, if the rainfall excess passes from the

watershed in less than a day a hydrograph must report hourly, or possibly more often.

The second page of the Java GUI offers options that modulate the interval and

time step of the data presented, enabling transmission from the server of a more suitable

representation of the time series. From the main applet page, the graph option can be

selected to visualise the time-series data. Depending on user-selected parameters, the

graph applet viewer shows changes in rainfall, temperature, and other variables over

daily, monthly, and yearly periods as they occur. The applet provides the user with the

option to view any of these changes as either line or bar graphs. Figure 7.26 shows a

rainfall time-series graph.

The TssFileData program encapsulates information loaded from .tss files.

GraphData encapsulates pre-extracted data that can be visualised as a Graph. The class

GraphDataExtractor extracts data from TssFileData information. It can extract year data

/ month data / day data. For visualization, the data can be processed through two

classes; BarGraphRenderer displays data in the form of a bar graph, as shown in Figure

7.25, and LineGraphRenderer displays data as a line graph. The code for

BarGraphRenderer is included in the accompanying CD.

Page 217: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 207 -

Figure 7.25: Time-series Graph Page — Monthly

7.7.3 Multi-image Page

The third page in the GUI provides multiple-image display, allowing the

visualization of more than one image simultaneously to observe changes between them.

For example, one can display images from different time periods to analyze, and

possibly predict, the changes occurring. Figure 7.26 shows a multiple-image display.

Animation is also available, permitting one to see more than one image

simultaneously in the same applet frame. An animation is a series of images that

together give the appearance of movement on the screen. The speed at which the scene

changes is controllable. An image is drawn in one location, and then redrawn in a

slightly different location. A pause is inserted between the drawings to allow the human

eye to capture the movement. A timer object is used to create the necessary pause

Page 218: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 208 -

during animations. Thus the animation procedure involves two steps, constructing a

frame of animation and painting the frame at regular intervals, which are repeated to

create the illusion of movement.

The animation program reads .gif files generated directly by the Java

application. A series of .gif files can be animated by displaying different images in

sequence. The code in Table 7.8 shows an animation class and the use of the timer class.

Figure 7.27 shows the result of a series of six images. At the bottom of the page, there is

a checkbox that allows one to set the animation to automatic. This makes the program

display all images repetitively. Speed control is shown in the same figure.

Figure 7.26: Multi-image Page

Page 219: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 209 -

//Demonstrate an animation and the use of the Timer class Public class Anim extends Applet { private final int APPLET_WIDTH = 200; private final int APPLET_HEIGHT = 100; private final int IMAGE_SIZE = 40; private final int DELAY = 20; private Timer timer; private Image image; private int x, y, moveX, moveY; //Set the applet, including the timer for the animation public void init ( ) { AddMouseListener (new animMouseListener ()); timer = new Timer (Delay, new animMouseListener ()); timer.start(); x = 0; y = 0; moveX = moveY = 3; image = getImage (getCodeBase( ), “map.gif”); setBackground (Color.black); setSize (APPLET_WIDTH, APPLET_HEIGHT); } //Draw the image in the current location public void paint (Graphics page) { page.drawImage (image, x, y, this); } //Represent the mouse listener for the applet private class AnimMouseListener implements MouseListener { // stops or starts the timer when the mouse button is clicked public void mouseClicked (MouseEvent event) { if (timer.isRunning ( ) ) timer.stop ( ); else timer.start ( ); } } //Update the position of the image and possibly the direction of the //movement whenever the timer starts an action event public void actionPerformed (ActionEvent event) { x += moveX; y +=moveY; if (x <= 0 || x>= APPLET_WIDTH – IMAGE_SIZE) moveX = moveX * -1; if (Y <= 0 || y>= APPLET_HEIGHT – IMAGE_SIZE) moveY = moveY * -1; repaint ( ); } }

Table 7.8: Animation Program

Before the animation applet executes, at fixed intervals a Java application

traverses specific directories — rainfall, soil moisture, etc. — and converts the file

Page 220: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 210 -

formats into GIF. This application then stores each .gif file into a predefined directory.

These files are the input to the animation applet (see Figure 7.6).

7.7.4 Data-manager Page

The data-manager page allows a user to submit queries and retrieve useful

information about all data related to flood management, both spatial and non-spatial.

One particularly important function is the ability to predict what will occur at a

specified location and time under a specified set of conditions. The prototype uses a

raster GIS structure, rather than vector-and-object, because the raster family has greater

analytical power. Two forms of analysis are available, time-series analysis and spatial

analysis.

Figure 7.27: Animation Page

Page 221: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 211 -

Time-series Analysis

The time-series applet interacts with non-spatial data. To query the time-series

database, one selects the data manager — direct connection or servlet. A form appears

to specify a time period and function desired — Max, Min, or Avg. For example, one

can determine the average rainfall within a specified time period. One can also specify

several variables and produce a list that includes the date(s), time(s), and value(s) of the

time-series data in question.

Spatial Analysis

The spatial database interface provides flexibility through a series of drop-down

lists. One selects a query (What, When, Where is, or Which), a function (Min or Max),

and a variable (Rainfall, Precipitation, Soil Moisture, Runoff, or Recharge). From these

variables, a query is constructed to satisfy given conditions; i.e. to specify what

database row is to be projected by specifying conditional operators that identify the

tuples to be retrieved. Example queries are:

• What is the lowest soil moisture value occurring in a specified time period?

• When is the highest rainfall value that occurred in a specified time period?

• Where in the catchment is the lowest rainfall value that occurred in a

specified time period?

• Which (where and when) is the rainfall value that is less than a specified

value AND greater than a specified value?

Typical queries specifying a number of variables can thus be accommodated,

and the data is presented in a result frame. Figure 7.28 shows the spatial and non-spatial

interface and the result is shown in Figure 7.29.

Page 222: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 212 -

Figure 7.28: Database Interface

Figure 7.29: Result of Data Query

Page 223: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 213 -

7.8 Image Tools

The graphics Java application runs at fixed-time intervals and traverses specific

directories — for example, rainfall and soil moisture — converting the .img file formats

to .gif formats and storing each one in its predefined directory for the animation applet

page to process when it is uploaded. However, image display is not processed through

this unit; rather, a rendering algorithm displays elevation data. The rendering algorithm

maps between the DEM elevation data and a color palette, and then displays the image

dynamically.

7.9 Testing

The programs in the prototype were carefully tested, first separately and then

together. Testing of Internet applications was the most difficult because of the Internet

being highly heterogeneous with different operating systems, browsers, and languages.

Traditional testing is the process of executing a program with various inputs to

discover errors. However, it also includes evaluations performed by humans or by

machine to assess other aspects of the software. Requirements testing reviews a

program's requirements to ensure that the description of the problem to be solved is

appropriate for the application. Specification testing reviews a program's specifications

to ensure that they correctly capture the intent of the requirements. Such evaluations

should occur before coding begins.

One evaluation technique that can be used both before and after coding is the

software walkthrough, usually carried out at a meeting in which people carefully review

a requirements document, a design specification document, or a section of code. The

goal of a walkthrough is to identify problems, not to solve them. It can evaluate

software quality as well as correctness. A walkthrough can examine whether or not

requirements are appropriate, whether or not the system is decomposed appropriately

and correctly, or whether or not the code faithfully represents the design. For the

Page 224: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 214 -

prototype, numerous meetings, emails, and feedback during consultations with advisors

constituted a walkthrough process.

7.10 Summary

The prototype Web-based GIS modelling tool provides an affordable, efficient,

and distributed real-time flood-forecasting tool. However, limited hardware and

software resources made it difficult to provide advanced GIS functions such as network

analysis. Although the complexity is moderate, it incorporates frequently used GIS

techniques. It is a raster-based system that permits the integration of environmental

modelling functions with classical GIS functions such as database maintenance and

screen display. The modules for dynamic modelling are integrated with the GIS at a

high level.

Rain-gauge data from the upper Wye catchment, covering daily, monthly, and

annual totals as well as individual rainfalls and their intensity, is sent in near-real-time

to a central database via wireless modem. It is checked for integrity, entered into the

database, and stored along with historical rainfall data and other contextual data.

A user contacts an appropriate Web server to download the latest version of the

Java applet. The interface has four pages. The analysis page contains a map viewer and

analysis functions including slope, aspect, accumulated flux, overlay, zoom, histogram,

and metadata. The TSS-graph page contains time-series analyses. The multi-image page

allows the user to view multiple images simultaneously and to animate images of

different variables. The data-manager page provides database communication via JDBC

or servlet.

Distributed processing improves performance for concurrent users and results in

inexpensive and timely access to data and modelling capabilities.

Page 225: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 215 -

8. Evaluation

Four research problems were identified, each with a corresponding objective for

investigation. In this chapter, the results of the thesis work are evaluated with respect to

each objective. Before presenting the evaluation, a comparison of the prototype with

two current systems is given.

8.1 Comparison with Current Systems

Two commercial Web-based GISs, Esri’s Internet Map Server and Intergraph’s

GeoMedia, were examined and compared with the prototype. All provide GIS

functionality over the Web, regardless of the degree of granularity. This comparison

shows that the prototype provides unique features of real-time data collection and

analysis, coupling of a hydrological model with a GIS system, and platform-

independence. The last of these features, platform independence, is a major factor in

achieving wider accessibility. Table 8.1 summarizes the comparison.

8.2 GIS-Model Coupling

The first problem identified is the current difficulty of coupling GISs to

environmental simulation models. The research objective was to investigate effective

spatio-temporal hydrological analysis tools to perform on-line watershed simulation and

analysis that can support understanding and decision making.

Page 226: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 216 -

Criterion The

Prototype IMS

(Esri) GeoMedia

(Intergraph) Friendliness and ease-of-use

Yes Yes Yes

Incorporates real-time field data

Yes No No

Integrated with hydrological model

Yes No No

Database access

Currently mSQL & Access already interfaced

IBM DB2, IBM Informix, Microsoft SQL Server, and Oracle.

MS access, Oracle 9i

Platform Any Windows, Unix Windows 9X or NT 4.0

Data sources Map IMG ASCII TSS

All data types of ArcGIS and CAD drawing files (DGN, DWG, and DXF).

MS Access ArcInfo ArcView AutoCAD GeoMedia SmartStore

Client software Browser Browser Browser Extensible (Functionality)

Yes Yes Yes

Features Works with tabular data

Yes Yes Yes

Zoom Yes Yes Yes Legend display Yes Yes Yes Shaded relief No Yes Yes Time-series analysis Yes No No Slope Yes No No Aspect Yes No No Accumulated-flux operation

Yes No No

Buffering No Yes Yes Prints customised maps

No Yes Yes

Attribute queries Yes Yes Yes On-the-fly charting Yes Modelling and visualization

Yes Yes Yes

Histogram Yes No No

Table 8.1: Current-system Comparison

The prototype provides a technological transparency between the user and the

model and GIS. This coupling eliminates the need for pre- and post-processing

processing, synthesis, and presentation of model results to stimulate insights into the

specific problem addressed by the model. In this role, GIS tools offer much more than

the graphical display of model results.

Page 227: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 217 -

In incorporating an embedded model it is important to keep the model simple

while exploiting the GIS power. Even for a model dealing with specific aspects of

hydrological and erosion processes, one must avoid complicating progressively the

model structure.

The hydrological model performs mathematical operations on maps with the

result obtained by the model, whether as maps or time-series files, validated by

checking the contents automatically through a program designed for that purpose.

Analytical and visualization GIS functions are used to describe the hydrological system

and to analyse the processes. This hydrological model can be easily replaced with a

different model (e.g. hydraulic risk zones, soil erosion, river-basin management model)

for different modelling scenarios. In this way, the interface is independent of the model,

meaning that the interface need not be modified unless there is a specific requirement

such as, for example, adding new functions that fit the model.

An evaluation and validation of the hydrological model itself is beyond the

scope of this research since it is available and has been in use for some time.

8.3 Accessibility

The second problem identified is the limited accessibility of data, analysis tools,

and results. The research objective was to investigate effective ways to allow

geographically distributed users and stakeholders to share GIS data and software for

coordinating their activities.

8.3.1 Usability

To test the usability of a Web site, two kinds of methods are available: usability

inspections such as heuristic evaluation (Nielsen and Mack, (1994) or user testing

Page 228: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 218 -

(Nielsen, 2000). Heuristic evaluation uses a pool of experts to inspect a Web site and

identify usability problems potentially affecting an end user.

An evaluation of the prototype was carried out by a selected sample of educators

and learners. The objective was to combine the outcomes of the accessibility and

functional evaluations to assess user acceptance of the system, to acquire further

suggestions concerning its functionality, and to remove technical obstacles in future

releases. A questionnaire was designed and distributed to these users (See Appendix F).

The questions dealt with different aspects of the system: the GUI design, the

performance, the ease of use, the graphical-image quality, and other issues identified by

the responder.

Almost all subjects responded positively regarding the interface design, the

provision of real-time field data, and the coupling of the GIS and the hydrological

model. The responses regarding errors and error messages were positive, with a large

percentage responding very positively or partially positively. Finally, the responses

indicated that the system is "very user friendly" and "not difficult to use if one is

familiar with Web browsers."

Some negative responses were recorded regarding the capability to download or

save output data for further use and analysis. Other shortcomings reported were the

limited-category search, non-exportable or printable results, and the lack of some other

functionality anticipated by the subject. Finally, output manipulation was reported by

many subjects as a significant shortcoming.

The overall outcome of the evaluation indicates that subject users were satisfied

with the system in most cases. From most subjects’ comments and positive responses, it

can be concluded that the prototype satisfies the objective of usability. The negative

responses received can be taking into consideration in future improvements of the

system.

Page 229: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 219 -

8.3.2 Platform and Software Requirements

An important aspect of accessibility is the set of requirements for software and

hardware. Using the prototype, a user need only have a Web browser and access to the

Internet to achieve collaboration and data sharing among specialists, planning agencies,

citizens, and private entities.

In the commercial Web-mapping arena, vendors have improved upon the complex

procedures needed to install and author Web-mapping applications and have created

solutions allowing an enterprise to host such applications without complex hardware

and software.

8.3.3 Cost

Modest cost was a significant objective. This includes data acquisition tools,

communication, the Web server, development software, and a database management

system. The Java compiler and the database engine are obtainable free from certain Web

sites. To access the prototype, one only needs a PC of reasonable capability, which is

commonly available.

Java plays a central role in reducing costs. Complex custom-developed

applications can be replaced by modular Java-based applications and applets that

perform specific tasks but fit together to form a cohesive system making applications

less costly to create, easier to maintain, simpler to upgrade, and easier to learn.

Some degree of customization will always be necessary but it can be controlled by

standardising on familiar, mainstream components. Data migration, the most pressing

cost issue, can be eliminated by leaving data in their current repositories and accessing

directly via a Java solution. Customization can cost many times that of the hardware and

basic software. With each upgrade of such a system, the custom software must be

Page 230: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 220 -

updated, recompiled, or sometimes rewritten. By standardizing on Java, these costs can

be ameliorated to a large degree.

Table 8.2 shows a cost comparison among a set of commercial applications.

Client cost applies to any portion of a system residing on the client. In most cases, only

a standard Web browser is required at zero cost. Some vendors distribute a plug-in,

either free or purchased. Client cost varies with the numbers of clients; the table

indicates volume pricing.

Pricing a server package is complex and must consider a range of variables such

as the number of concurrent users, system capacity, etc. As a result, many vendors are

reluctant to provide a base price. The table gives the lowest operational-configuration

price provided. The range is large. One vendor, for example, has a base price of less

than $5,000, but has versions ranging up to $50,000. One vendor's price requires

particular comment; the base price for the Laser-Scan product is for a location that does

not already have the Laser-Scan Gothic system. For facilities with a Gothic system, the

cost is $12,750. Other systems don't require pre-installed software.

Cost Browser Plug-in Client OS Supported Vendor

Product Name Client

Cost Base

Server Cost

Client Browser

only

Plug-in

required

Plug-inOption

al

Any NT

Win 9x

Mac

UnixThreaded

AutoDesk Inc.

MapGuide Release 4

Free $9,990 N Y N Y Y Y Y Y Y

Bentley Systems Inc.

ModelServer Discovery

Free $12,500 Y N Y N Y Y N N Y

Byers Engineering

Map Viewer Web

Free $8,500

N N N Y Y N N N

Cadcorp

Cadcorp Active Server

Component

$300 /seat

$5,000

Y Y Y N Y Y N N Y

Earth Resource Mapping

Image Web Server

Free $4,950

Y N Y Y Y Y Y Y Y

ESRI Inc. ArcIMS Free

$8,000 N Y N/A Y Y Y Y Y N

ESRI Inc. ArcView IMS

Free $5,000 Y N N Y Y Y Y Y Y

ESRI Inc. Map Objects IMS

Free $5,000 Y N N Y Y Y Y Y Y

Page 231: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 221 -

Framework Technologie

s Corp.

ActiveProject 5.0

$220-367/seat

$11,995

Y N N N Y Y N N N

GeoMicro Inc.

AltaMap Server

Free

$4,995

Y N Y Y Y Y Y Y Y

Intergraph Corp.

GeoMedia Web Map

Free

Not provided

Y N Y Y Y Y Y Y Y

Intergraph Corp.

GeoMedia Web Map Enterprise

Free

Not provided

Y N Y Y Y Y Y Y N

Laser-Scan Ltd.

Gothic Integrator:

Java Edition GIJE

Free

$24,200

Y N Y Y Y Y Y Y Y

MapInfo

MapXtreme 2.0

MetaMAP Internet Spatial

Database and Map Server

Free

$20,000

Y N N Y Y Y Y Y N

MicroImages Inc. PCI

Geomatics

TNTserver

Free

$6,000

Y N Y Y Y Y Y Y Y

Smallworld

Smallworld Web

$48 eachfor 1,000

users

$240,000for 1,000

seats

N Y N Y Y Y Y Y Y

Soft Reality Inc.

EarthKey Internet Mapping

$5,000 unlimited

$25,000

N Y N N Y Y N N Y

Star Informatic

Star Next

$600/1 $12,000

unlimited

$5,250

Y N Y Y Y Y Y Y

Sysdeco GIS AS

Tellus Internet Map

Server

Free Monthly fee

Table 8.2: Cost Comparison

Source (Limb, 1999)

Page 232: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 222 -

8.4 Model Interaction

The third problem identified is the current difficulty of interacting with

hydrological models. The research objective was to investigate the design of effective

user-friendly Web-based GIS interfaces.

Modest cost was a significant goal here. The Java compiler, obtainable free from

certain Web sites, plays a central role in reducing costs. Complex custom-developed

applications can be replaced by modular Java-based applications and applets that

perform specific tasks but fit together to form a cohesive system making applications

less costly to create, easier to maintain, simpler to upgrade, and easier to learn.

As discussed in the section on accessibility above, almost all evaluation subjects

responded positively regarding the interface design. The responses indicated that the

system is "very user friendly" and "not difficult to use if one is familiar with Web

browsers."

The prototype, however, does need improvement in graphical editing features at

the user end. An improved graphical editing functionality would allow the user to cut,

paste, or save images or database tables locally. Although a user could use FTP to

transfer raw data, processed data are only performed at the user’s request and are not

saved.

8.5 Real-time Response

The fourth problem identified is the need for real-time hydrological hazard

assessment and warning. The research objective was to investigate effective platform-

independent Web-based ways to provide real-time data accessibility and analysis.

Page 233: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 223 -

Conventional GISs do not use real-time data. The prototype is connected to data

acquisition devices allowing one to analyse data via the Web in real-time. The prototype

also provides online access to hydrological databases. The data are sent from the field to

a common computer platform in near-real-time so that questions can be answered

immediately, rather than waiting for data-translation. As a result, real-time plotting and

data analysis can be achieved.

A number of tests have been carried out. The data have been collected from the

field and entered into the system. Results show that the prototype achieved results as

predicted.

8.6 Problems Encountered

One particular problem encountered during implementation was constructing a

colour palette for visualisation. Since the format of the files is .img, to display these

binary files in Java applets, a palette was created. Several different experiments and

assessments to create the palette were attempted but were unacceptable. Finally, a

reverse engineering74 technique was carried out to design the colour palet.

Img files were converted to .gif format and the data values extracted and

compared with those from the .img files to determine the colours used in the .img files.

The values in the .img files are grouped into 255 groups; for each value the

corresponding colours are drawn. A special group, 256, is reserved for missing data.

The resulting method is similar to Idrisi’s .img-rendering technique, so the colour

palette is similar to Idrisi 256 palette. One weakness however, is that the method does

not allow a user to choose a palette because there is no user-defined palette option.

However, the system provides two palettes, colour and grey-scale.

74 Reverse engineering is a technique that analyzes a subject system to identify its current components and their dependencies to extract and create system abstractions and design information. The original system is not altered. However, additional knowledge about the system is obtained.

Page 234: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 224 -

Another problem was encountered during the design and implementation of the

two-tier architecture. Introducing business logic that is not user-dependent into the

client layer, which is user-dependent — i.e. personalized for the user, yields problems in

that such logic does not change regardless of how the user interacts with the system. If a

system has one or more interfaces used by different servers, and the application rules

change, then changes are required in every interface. Consequently, mixing

presentation-layer code with data-access code is fundamentally a bad design choice.

Two-tier fat-client systems are notorious for their inability to adapt to changing

environments and scale with growing user and data volume (Reese, 1997).

Furthermore, problems such as long waiting times have occurred when attempting to

establish large data stream connections with remote database servers and that may also

be caused by mSQL. This could be a major shortcoming of the prototype since the

database is not likely to remain the same size over time. A possible alternative for two-

tier client-server architectures is the three-tier architecture. Three-tier applications have

been used to solve this problem (Eckerson, 1995). Java servlets are an excellent choice

to meet the requirement of large applications, which need to handle client requests in a

highly interactive mode and they must process multiple client requests in a fast and

efficient way (Eckel, 1998; Wu, et al., 2000).

Page 235: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 225 -

9. Conclusions and Future Work

The primary objective of this research was to investigate methods for developing

real-time Web-enabled GISs for flood nowcasting at the regional level. An

understanding of the processes being observed, as well as the requirements for

supporting real-time monitoring of those processes, was required. The primary method

of investigation was to design, develop, and test a prototype system for data acquisition,

management, and visualisation.

9.1 Summary

A review of GIS hydrological modelling tools, with respect to real-time data

acquisition and analysis, user accessibility, and interfacing, was carried out. Current

Web-based GISs were reviewed. Current Web technologies were reviewed. Methods for

a CGI server-side approach to Web-GIS functions were investigated. Methods for a

Java client-side approach to Web-GIS functions were investigated. A prototype real-

time Web-based GIS modelling tool for application to hydrological nowcasting was

designed and implemented.

Page 236: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 226 -

9.2 Conclusions

Conclusions are organized first according to the problems identified and

objectives established in Chapter 1.

9.2.1 GIS-Model Coupling

This research has demonstrated a method to develop a spatial dynamic-

modelling tool with a high level of integration with environmental models in a GIS.

This coupling provides an intuitive visualisation and spatial-analysis functions that are

not available in traditional simulation models. The advantages of such integration are:

• Full integration of GIS functionality for manipulation of input and results

• No overhead for conversions between the GIS and models

• Rapid development of new models

• No separation between the model data and the GIS data

• No redundancy or consistency problems due several instances of the same

database

• Easy maintenance of models

9.2.2 Accessibility

An important objective was to find ways to access a large amount of information

and application tools. Although current models are confined mostly to research

laboratories and academic institutions, and not widely accessible to the public, the

prototype allows users to access and interact with a model directly over the Web. The

prototype demonstrates that Web-based GISs are useful vehicles for accessing

distributed spatial data and conducting GIS processing and spatial modelling among a

particular user community. Geographic and physical constraints are removed, and the

need is reduced for users to own the data or software system. The public can interact

with processed data, such as the output of a flood plain model, rather than raw data.

Page 237: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 227 -

Regarding public access and participation, a study reported by Princeton

Economic Research Inc. (1998) and Haklay (in press) demonstrates that public interest

in processed data is far greater than in raw data. Accessibility was achieved because of

user interface familiarity, portability across many computer platforms, and the

capability to display different multimedia and hypermedia formats.

Insight into the applicability of Web-based GISs in developing open Spatial

Decision Supporting Systems (SDSSs) has been gained. A decision-making process for

solving spatial problems demands significant input from the public. Interactive SDSSs

provide an interface that allows non-specialists to test different hydrological variables

and management scenarios by linking dynamic models with GIS data, analysis tools,

and visualisation tools. Combined, these qualities permit, and indeed encourage,

scenario testing and experimentation.

The approach taken has a number of significant advantages over traditional

methods. It overcomes the difficulties of data access and participation by developing an

interactive Web-based GIS and dynamic modelling tool. With these interactive pages,

users can access and analyse various hydrological and environmental data from

computers at public libraries, schools, or their homes. Another benefit of the approach is

that the interactive modelling and analysis environments are highly visual. The Web

provides an enterprise-wide DSS that supports a large group of managers in a

networked, client-server environment. Important characteristics of DSSs for sustainable

flood management include accessibility, flexibility, ease of learning, and ease of use.

9.2.3 Model Interaction

Java’s attributes have proven to be beneficial for implementing a Web-based

hydrological tool. Java allows us to build a common, single, and easy-to-use graphical

user interface over the Web that can interact meaningfully with data. It also allows us to

rapidly and inexpensively build sophisticated applications. With Java, we can build a

highly distributed system, allowing many systems or models on the network to

participate in data-taking and analysis.

Page 238: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 228 -

9.2.4 Real-time Response

The prototype is the first GIS to be coupled with real-time dynamic hydrological

modelling. This research demonstrates that such an advance is possible using the Web,

communication tools, and cost-effective communications equipment.

9.2.5 Educational Uses

This research provides a good model for individuals and small organizations that

seek to provide services with limited resources. It is the author’s wish to contribute to

the GIS community by promoting discussion about this particular Web-based GIS. A

reader of this thesis can develop skills in user interface design, programming, computer

network administration, and software engineering. Readers are encouraged to explore

the development of Web-based GISs based on this work.

Even though the prototype does not have the polish of a professional software

product, it does provide many valuable contributions for the general public, concerned

citizens, and hydrology and GIS students. For example, the prototype can be used as an

educational tool. Running the model is simple, and the output is portrayed clearly and

concisely. Java provides advantages to enhance teaching and improve student learning

(Dye et al., 1999). It facilitates and promotes teaching and active learning of a particular

concept or technique in GIS or hydrology. It provides dynamic graphics for enhanced

visual representations. It provides user control of applet events and key variables and

parameters. It can serve as the foundation for a growing library of applets covering a

broad range of basic topics in remote sensing and GISs.

9.2.6 Shortcomings

Some shortcomings would need to be addressed to ready the prototype for

practical use. These are discussed below.

Page 239: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 229 -

Computer Resources

The computational power required of the analysis tools and the complex

algorithms for imaging analysis require a large amount of memory in the user’s machine

to work effectively. To increase the number of calculations, we must increase the

computational power of the computer. Also, a real-time rendering system such as the

one proposed requires sufficient memory in order work properly. The server-side can be

equipped with a powerful CPU and a large amount of memory for minimal cost per

user.

Internet Explorer with the applet loaded consumes 20Mb. When displaying data

and simple transformations such as slope or aspect, memory usage varies between 25

and 35Mb. Because of Java’s garbage collection feature, the Java VM slowly increases

memory consumption until it reaches 35Mb at which point it automatically frees 10Mb

and starts again at 25Mb. When performing database queries such as question 1 and 2,

memory usage usually varies between 25 and 35Mb. When answering question 3,

memory usage can increase a great deal. The applet collects all the results that satisfy

the question, which can easily exceed 100,000 records. The suggested workaround is to

collect only the first 100 results; at the moment the applet display only lists the first 100

occurrences.

The database engine employed in this prototype is a free lightweight relational

database management system. MSQL is designed for the fast retrieval of small amounts

of data. It does not offer the full database functionality that other database vendors

currently support. Therefore, the database engine in the prototype should be replaced

with a database engine designed for fast retrieval of large amounts of data, especially if

this data is to be retrieved from a Web site.

Page 240: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 230 -

Bandwidth

Modem speed is a critical limiting factor for a home-PC user accessing graphical

information over the Internet. To remove this problem, the user at the query site requires

a high-bandwidth link.

New Internet technologies will continue to change how information is created,

distributed, and maintained. These include advances in Web protocols and languages,

Push75 technology, and increases in access to the Internet. Integrated Services Digital

Network76 (ISDN) telephone lines, cable-TV modems, Digital Subscriber Lines

(DSL)77, and other high-speed Internet connection services will become available and

affordable to most home-PC users. The convergence of voice and data will also allow

for new management techniques.

9.3 Future Work

9.3.1 Knowledge-based Approaches

The current state-of-the-art commercial database products use a relational model

as the fundamental data structure and organizational formalism. They also use SQL as

the primary data-access language. These products have been developed with the primary

purpose of supporting data processing applications. These applications typically

manipulate collections of relatively simple data whose interrelationships can be

modelled in a relatively straightforward manner. A large amount of literature has been

presented to discuss the pros and cons of SQL (Date, 1989; Codd, 1988) and its use in

GISs (Hearing et al., 1988; Bundock and Raper, 1991b).

75Push technology is the ability to allow servers to send asynchronous messages to specified clients without the client requesting the information. The opposite of push technology is the pull technology or the traditional client/server model. 76ISDN is a high-quality, switched digital communications service that gives your standard phone line the ability to transmit voice, data, and packet data simultaneously at a relatively low-cost. 77DSL carries data at high speeds over standard copper telephone wires. With DSL, data can be delivered at a rate of 1.5 mbps (around 30 times faster than through a 56-kbps modem)

Page 241: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 231 -

It is widely recognized that a deductive approach can be used to manipulate

complex objects effectively (Abdelmoty et al., 1993; Luo and Jones, 1995). A number

of authors have proposed the use of deductive capabilities for reasoning about spatial

data (Luo, 1994; Abdelmoty et al., 1993).

Spatial reasoning has been proposed for computational geometry for automatic

derivation of spatial relations that are not explicitly stored in the database (Cui et al.,

1993). Spatial reasoning is concerned with deducing new knowledge from incomplete

knowledge using space and intrinsic properties (Frank, 1991). The advantage of this

model is that it allows complex structures to be stored in real-world spatial relations that

appear more natural than those of other models.

Web-based management will become a key enabling technology in accessing

and extending knowledge-based systems. A recent survey (Walker, 1998) indicated that

there is a great deal of interest in knowledge management. New Java development tools

and libraries are being released, as are new ways to connect and embed Java in Internet

tools, clients, and servers. Two kinds of Java Prolog interfaces are currently available:

lightweight Prolog engines such as Jinni which are applet-compatible, and bi-directional

interfaces that are written in both Prolog and Java such as Jasper. In the future, these

methodologies can be integrated into a Web-based GIS to provide better capabilities for

reasoning about spatial data.

Since the mid 1990s, 3D GISs on the Web have been regarded as one of the

promising alternatives in the GIS field. The promise offered is cost-effectiveness and

wide accessibility. In this newly emerging approach, The Virtual Reality Modeling

Language (VRML) shows several linked aspects with 3D GISs under an Internet

environment (Fairbairn, 1997). There are a number of efforts underway to examine

VRML with the Web (Rhyne, 1997; Kim and Lee, 1999). The use of VRML with the

Web facilitates visual information and inter-visibility study. In addition to VRML, other

Page 242: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 232 -

3D Web technologies are under development such as MPEG478, Java 3D79, Chrome80

and many others that can also simulate spatial reality.

9.3.2 Mobile Web-based GISs

Mobile Web-based GISs allows a user to access large amounts of data on a

small hand-held device. With the advent of low-cost, easy-to-use, and field-ready phone

devices, mobile Web-based GISs will become more cost effective and more widely

deployed. Mobile Web-based GISs allow the following (Spencer, 2000): provision of

more information, not just the minimum that is typically annotated on maps and plans; a

more durable/robust computer-based medium; more easily pre-packaged/organized

daily job tasks into work-order packets for field execution; more flexibility in viewing

data with the standard GIS features of pan, zoom, filtering, and many

searching/browsing features both attribute and graphically based; more flexibility of

object representation (symbology) allowing real-world objects to be easily highlighted

for field activity ensuring corporate-wide drafting standards; and additional data set

availability to assist operators in making decisions in the field. Examples are access to

the topologically connected network for tracing and analysis, and other types of data

such as geo-coded schematic and image files.

With the advent of the Wireless Application Protocol (WAP) and Universal

Mobile Telecommunications System (UMTS) technologies, it is possible that Web-

based GISs can be built into every mobile telephone. Significant progress has been

made since the late 1980s towards the development of mobile communication concepts,

systems, and networks by a number of European Union-funded R&D projects (Dasilva,

et al., 1996). UMTS is a third-generation mobile communication system currently being

developed in Europe. It defines a European standard enabling global usage of personal

mobile communications regardless of the surrounding environment. There could be

wide cellular coverage to cover calls — using four types of cells: pico, micro, macro,

78 MPEG4 is an ISO/IEC standard developed by MPEG (Moving Picture Experts Group). 79 Java provides a simple library for 3D applications 80 Chrome is multimedia capabilities for creating 3D Contents on the Web

Page 243: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 233 -

and satellite. Appendix D illustrates the development of Third Generation (3G) mobile

telecommunications.

9.3.3 Services Anticipated by UMTS

Services are not specified explicitly as part of the UMTS specifications. Rather,

specifications are given for service capabilities to enable flexible service creation. Thus,

within the constraints of bandwidth, capacity, coverage, and other technical

performance issues, the range of services, which may ultimately be delivered by UMTS,

are limitless. There are many ways to classify expected services. Common classification

types are: applications, content; telematics — route monitoring, traffic information, and

traffic data; communications — file transfer, electronic postcards, conferencing, voice,

and video; and commerce — banking transaction, ticketing, etc. Applications include

corporate database access, mobile/PDA/laptop, Intranets, corporate LAN access, field-

service workflow management, and information synchronization. Appendix D

illustrates the interaction between the Internet and a mobile communication network.

The languages of 3G systems will be able to make use of many communication

media that WAP. For example, there will be the ability of UMTSs to access graphic

video communications and wide-band information (Kaaranen, 2001). It is projected

that by the year 2010 there will be two billion users of this technology.

The technology of mobile GISs will clearly have advantages over traditional

GISs. With real-time data acquisition, access, and analysis, mobile GISs will solve

many of the problems facing the GIS community. UMTS technology and the Web will

play a key role in creating this future. Mobile GISs for high-quality wireless multimedia

communication will be available to millions of users worldwide. With UMTSs, there is

no reason why mobile GISs cannot use spatial data to further penetrate and enrich

everyone’s life.

Page 244: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 234 -

Appendix A Raw Data Download

Example of Raw Data

USGS Web Site: http://edcwww.cr.usgs.gov/glis/hyper/guide/1_dgr_demfig/states.html

The result, after choosing the state of Colorado, is displayed in next page.

Page 245: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 235 -

Result after Choosing Data for Colorado.

Page 246: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 236 -

Example of Static Map Display

EPA Web Site:

http://www.epa.gov/ceisweb1/ceishome/atlas/nationalatlas/landatlas.html

The result, after choosing Land Use and Cover, is displayed in the next page.

Page 247: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 237 -

Result after Choosing Data for Land Use and Cover.

Page 248: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 238 -

Example of Metadata Search

NSDI Web site:

http://geoserver2.wr.usgs.gov/servlet/FGDCServlet

Page 249: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 239 -

Example of Dynamic Map Display

The EPA Enviromapper Web site:

http://maps.epa.gov/enviromapper/

The result, after choosing map features (interstates, counties and states), is displayed in

the next page.

Page 250: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 240 -

The Result after Selecting Map Features

Page 251: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 241 -

Example of Web-based GIS Query and Analysis

GRASSLinks Web site:

http://www.regis.berkeley.edu/grasslinks/

Page 252: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 242 -

Example 1 of Net Savvy

GeoMedia-Intergraph (Demo):

http://www.intergraph.com/gis/demos/prod-demos.asp

Page 253: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 243 -

Example 2 of Net Savvy

AutoDesk Viewer-Intergraph (Demo):

http://www.autodesk.com/

Page 254: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 244 -

Appendix B Miscellaneous Diagrams

Page 255: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 245 -

Figure B.1: Three-tiered Architecture

Page 256: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 246 -

Visitor fills in form andclicks a button. Interprets form input

Launches script,passing on form data

Form Data

Client Server

Script starts mappingsoftware, sendingparameters and

retrieving images and/or data.

Mapping Software

Params

Images, data

Script generatesHTML code to "draw"

results page

Send results pageback to visitorVisitor views results HTML

Visitor enters site byopening its URL

Interprets pagerequest

Page request

Retrieve site's top-level page

Transmit page tovisitor's browserVisitor views page HTML

Visitor browses pageson the site

Retrieve and transmitpages as needed

HTML

Page requests

Figure B.2: Conversation Scenario in CGI

Page 257: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 247 -

Server

HTTP server

Applet store

Request1

2 Receive

3 Load applet

4 Discard

Client

Internet

Recycle Bin

Get URL

http://www.mydomain.com/file.html

Figure B.3: Applet Mechanism

Page 258: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 248 -

Web browser

HTMLResult

HTMLForm

Servlet HTMLFile

Web Sever

1

3

4

2

Client

Internet

CALL Servlet

Figure B.4: The Servlet Mechanism

Page 259: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 249 -

Capability CGI Java

Server Control Yes Some - through sockets

Client Control Some – through hidden variables

Yes

HTML Interface Yes Restricted-provides parallel capabilities

Computer Access Complete Provided through sockets

User Restrictions Provided through programming

Yes

Programming Standard

languages

Special language and compiler

Cross-Machine

Compatibility

No - requires recompiling

Yes

Connection to Existing

Code

Yes Some - through extensibility

Client Save of Status Yes - save source Not presently available

Client-Side Programming Limited Extensive

URL Activation Direct into HTML Indirect - requires special Applet

Mail Interface Yes Indirect

Restrictions None Access to single server only

Implementation Compiled Interpreted

Table B.1: Critical Distinctions between CGI and Java

Source: Felton, 1997

Page 260: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 250 -

Appendix C Free Software Used

Package From URL

Perl ActiveState http://www.activestate.com/Solutions/Programm

er/Perl.plex DBI module for ActiveState Perl

Joshua http://shell.warped.com/~joshua/mSQLPerl/

MSQL Win32 Hughes

Joshua http://www.hughes.com.au/extras/windows/ http://shell.warped.com/~joshua/

MSQL-JDBC Imaginary http://www.imaginary.com/Java/Soul/ Java Sun http://java.sun.com/products/ Servertec Internet Server 1.10.3

Servertec http://www.servertec.com/products/iws/iws.html

Page 261: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 251 -

Appendix D 3G Wireless Technologies

Figure D.1 The Development of 3G Wireless Technologies

Page 262: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 252 -

Figure D.2 Interaction between Internet and Mobile Communication

Network

Figure D.3 WAP-Internet Interaction

Page 263: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 253 -

Figure D.4 Nokia 3G Terminal

Page 264: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 254 -

Appendix E UML Diagrams

Page 265: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 255 -

Internal Data Objects

Page 266: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 256 -

Data Loader Objects

Page 267: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 257 -

Data Renderer Objects

Page 268: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 258 -

Data Transformer Objects

Page 269: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 259 -

Applet User Interface

Page 270: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 260 -

Database-related Data Object

Page 271: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 261 -

DataManagers Class Diagram

Page 272: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 262 -

Applet Initialization

Page 273: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 263 -

Load-request Sequence Diagrams

Page 274: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 264 -

Page 275: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 265 -

updatedb Class Diagram

Page 276: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 266 -

updatedb Sequence Diagram

Page 277: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 267 -

Appendix F Questionnaire

Answer the following questions. Please use X wherever appropriate. No. Questions: Yes No 1 Are the graphical images of acceptable quality? 2 Does the content appear to be accurate? Error free? 3 Is the site easy to understand and use? 4 Does the GIS system load in a reasonable amount of time? 5 Is the interface well designed? 6 Is the interface easy to use? 7 Is the system flexible to interact with? 8 Can you move around the web site easily? 9 Do the graphic load easily? 10 Is the system reliable? 11 Is the site well organized? 12 Is the information clearly presented? 13 Are errors and error messages of the system clear ? 14 Does the system provide enough functionality? 15 Does the system have all the functions and capabilities you

expect?

16 Are you overall, satisfied with the ease of completing the tasks in this scenario?

Write any comments including negative/positive points about system. Please assess critically.

List the most negative aspect(s): List the most positive aspect(s): Comments

Page 278: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 268 -

Glossary

Active X A set of technologies developed by Microsoft that allow software components to interact with each other in a networked environment. Internet components can be interactive and add extra functionality to sites. See also: Applet.

Applet A small program with restricted functionality that runs in a browser.

Application

(1). A generic term for any program. (2). A Java program which can be run without the use of a Web browser, as opposed to a Java applet.

Application Programmer Interface (API)

A specific method prescribed by a computer operating system or by an application program by which a programmer writing an application program can make requests of the operating system or another application.

Argument A value that is passed to a method. Array

A programming language construct used to store an ordered list of primitive values or objects. Each element in the array is referenced using a numerical index from 0 to N-1, where N is the number of elements in the array.

Binary The base 2 number system. Modern computer systems store information in binary digits.

Bit A binary digit, either 0 or 1. Boolean A Java reserved word representing a logical primitive data

type that can only take the values true or false. Browser

Software which retrieves HTML documents across network connections and formats them for viewing. A browser is the key interface to the World Wide Web. Examples are Hotjava and Netscape.

Byte A unit of binary storage, equal to eight bits. (2) A Java reserved word which represents a primitive integer type, stored using eight bits in two's complement format.

Bytecode

The low-level format into which the Java compiler translates Java source code. The byte codes are interpreted and executed by the Java interpreter, perhaps the transportation over the Internet.

CGI

The common gateway interface is a standard way for a Web server to pass a Web user's request to an application program and to receive data back to forward to the user.

CGM A short for Computer Graphics Metafile. It is the standard

vector graphics file format. CGM files can be used in a range of programs.

Choropleth Map

Multicoloured maps in which the colour or shading of areas varies according to the density, concentration, or magnitude of

Page 279: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 269 -

a geographic variable (e.g., precipitation, elevation, or temperature).

Class A Java reserved word used to define a class. (2) The blueprint of an object. The model which defines the variables and methods an object will contain when instantiated.

Class method

A method which can be invoked using only the class name. An instantiated object is not required, as it is with instance methods.

Client A computer that is connected to a server or software running on a computer connected to a server.

Colour Depth

The number of bits of colour information for each pixel. An 8 bit image can display 256 colours (FF), a 24 bit image over 16.7 million.

Compiler

A special program that processes statements written in a particular programming language and turns them into machine language or "code" that a computer's processor uses. See also: interpreter.

DBD A driver for a specific database (e.g., DBD::mSQL, DBD::Oracle, DBD::Informix etc.).

DBI Database Interface - a collection of Perl code that provides a common API for interacting with databases through the use of modular DBDs. See DBD.

DGI Distributed Geographic Information. DSL

Digital Subscriber Line. A method of achieving relatively high speeds from a normal copper wire, i.e. a traditional phone line.

Encapsulation

The characteristic of an object which limits access to the variables and methods contained in it. All interaction with an object occurs through a well-defined interface, which supports a modular design.

File server

A computer in a network, usually with a large secondary storage capacity, which is dedicated to storing software which are needed by many network users.

FTP

File Transfer Protocol. Tool used to send files across the internet. Although built in to web browsers a dedicated FTP app is more efficient and offers more options.

GD A graphics library. It allows your code to quickly draw images complete with lines, arcs, text, multiple colours, cut and paste from other images, and flood fills, and write the result as a .GIF file.

GIR Geographic Information Retrieval. Graphical user interface

Software which provides the means to interact with a program or operating system by making use of graphical images and point-and-click mechanisms such as buttons and scroll bars. Abbreviated GUI.

GUI See graphical user interface Helper application

A small software application that helps a Web browser interpret multimedia. Flash, Shockwave, RealAudio, and QuickTime are all helper applications for Web browsers. See Plug in.

Page 280: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 270 -

HTML

Hypertext Markup Language. The language in which web pages is written. It is plain text so does not need a special editor.

HTTP HTTP - Hypertext Transfer Protocol. Hypertext Markup Language

The notation used to define Web pages. Abbreviated HTML. See also World Wide Web.

Idrisi A raster-based GIS system. A product of Clark Lab, Clark University. Available at: http://www.clarklabs.org.

Inheritance The ability to derive a new class from an existing one. Inherited variables and methods of the original (parent) class are available in the new (child) class as if they were declared locally.

Interpolation The process of determining a missing value by taking an average of known values at neighbouring points.

Interpreter

A program that translates source code in a programming language into machine instructions, which are immediately executed. The Java interpreter, java, translates, and executes Java byte code.

IP Internet Protocol. A 32 bit binary number which identifies the address or location of a computer on the internet (or a network using the same protocols).

ISDN Integrated Subscriber Digital Network. Basically, a digital phone line offering higher transmission speeds than a conventional phone line.

Isohyets A line drawn through geographical points recording equal amount of precipitation during a specific period. (i.e., contours of equal rainfall depth).

JDBC Java Database Connectivity (JDBC) is an application program interface (API) specification for connecting programs written in Java to the data in popular databases. The application program interface lets you encode access request statements in Structured Query Language (SQL) that are then passed to the program that manages the database. It returns the results through a similar interface.

Megabyte A unit of binary storage, equal to 220 (approximately 1 million) bytes. Abbreviated MB.

Metadata Metadata is the information and documentation, which makes data understandable and shareable for users over time (i.e. that necessary for external users to know who has what data, where to find it, and how to access it).

Method

A named group of declarations and statements that can be invoked (executed, called) when needed. In Java, a method must be part of a class. Sometimes called a message.

Object

An object groups data values and methods that work with these values into one encapsulated entity. An instance of a class.

OCX OLE Custom Control. ODBC Abbreviation of Open Database Connectivity, a standard

Page 281: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 271 -

database access method developed by Microsoft Corporation. The goal of ODBC is to make it possible to access any data from any application, regardless of which database management system is handling the data.

OLE Object Linking and Embedding. PHP/FI PHP/FI is a third party, server side scripting language,

allowing you to embed sophisticated control constructs directly into your HTML pages. PHP/FI also contains extensive database connectivity tools, allowing Application Server to connect to a wide range of industry standard DBMS servers.

Plug-in Programs that can easily be installed and used as part of your Web browser. Initially, the Netscape browser allowed you to download, install, and define supplementary programs that played sound or motion video or performed other functions. See helper applications.

Pointer

A variable which can hold a memory address. Java uses references instead of pointers, which provide essentially the same functionality without the complications.

Portability

The ability of a program to be moved from one hardware platform to another without having to change it. Because Java byte code is not related to any particular hardware environment, Java programs are considered portable. See architecture neutral or platform independence.

RMI Remote Method Interface (for Java). Server

A computer with others connected to it which allows others to use its data and facilities. Resources available on the server which may not be available on other computers include a printer and hard disk space.

Servlet A servlet is a small program that runs on a server. Spatial Decision Support System (SDSS).

SDSS is an interactive, computer-based system designed to support a user or group of users in achieving a higher effectiveness of decision making while solving a semi-structured spatial decision problem.

SQL Structured Query Language. TCP/IP The Transmission Control Protocol/Internet Protocol. Software

which controls the movement of messages across the Internet.

Thiessen Method for calculating average precipitation. It adjusts for non-uniform location of gauging stations by attempting to determine the area of influence.

Two's Complement

A binary number system that includes the representation of negative numbers. The two's complement may be obtained by subtracting the number (in binary form) from zero, or by adding one to the one's complement.

Upload The process of sending data from your own (local) machine to a remote machine.

World Wide Web

Software which makes the exchange of information across a network easier by providing a common user interface for multiple types of information. Web browsers are used to

Page 282: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 272 -

retrieve and format HTML documents. Abbreviated WWW or Web.

WWW WWW: See World Wide Web. XML It stands for EXtensible Markup Language. XML is a markup

language much like HTML but was designed to describe data.

Page 283: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 273 -

References Abdelmoty, A., Williams, H., and Paton, N., (1993), Deduction and Deductive

Databases for Geographic Data Handling, in Abel, D., and Oot, B. C. (eds.), Advances in Spatial Databases (SSD’93), LNCS 692, Springer-Verlag, Berlin, pp.443-464.

Abel, D., Taylor, K., and Ackland, R., (1998), An Exploration of GIS

Architectures for Internet, Environments, Computers, Environment and Urban Systems, Elsevier Science Ltd., 22(1), pp.7-23.

Abnous, R. and Khoshafian, S., (1990), Object-orientation: Concepts,

Languages, Databases, and User Interfaces. John Wiley and Sons Inc. New York, NY.

Abrahart, R. J., and See, L., (2000), Comparing neural network (NN) and

AutoRegressive Moving Average (ARMA) techniques for the provision of continuous river flow forecasts in two contrasting catchments. Hydrological Processes, Vol.14, pp.2157-2172.

ADL, 1998, Alexandria Digital Library, Available online at:

http://alexandria.sdc.ucsb.edu. (Accessed June 2000). Ahlenius, H., (2000), Interactive Environmental Information on the Internet- the

Baltic Sea Drainage Basin Map Service. Master’s thesis in Earth Sciences. Physical Geography. Uppsala University, Sweden. Available online at: http://maps.grida.no/baltic/BalticEnvironmentalAtlas.pdf (Accessed Feb 2001).

Albercht, J., Jung, S., and Mann, S., (1997), VGIS: A GIS Shell For the

Conceptual Design of Environmental Models. In book: Kemp, Z. (Eds.), Innovations in GIS 4, Fourth National Conference on GIS Research U.K. (GISRUK), Taylor and Francis, London, U.K., pp. 154-165.

Alfredsen, K., (1999), An Object-oriented Framework for Application

Development and Integration in Hydroinformatics. Ph.D thesis, Dept. of Hydraulic and Environmental Engineering. Trondheim, Norwegian University of Science and Technology.

Page 284: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 274 -

Alfredsen, K., (2000), Simulation of Human Impacts on Flood Regimes – The Design of an Object-oriented Integration Framework. Proceedings of Hydroinformatics 2000 (On CD-ROM), The University of Iowa.

Alfredsen, K., and Sæther, B., (2000), An object-oriented application framework

for building water resource information and planning tools applied to the design of a flood analysis system. Environmental Modelling and Software 15, pp. 215-224.

Al-Kodmany, K., (1998), GIS and the Artist: Shaping the Image of a

Neighborhood in Participatory Environmental Design, NCGIA Specialist Meeting on Empowerment, Marginalization, and Public Participation GIS. Available online at: http://www.ncgia.ucsb.edu/varenius/ppgis/papers/al-kodmany.html (Accessed Jul 2001).

Alper, N., and Stein, C., (1996), Geospatial Metadata Querying and

Visualization on the WWW Using Java Applets, IEEE Symposium on Information Visualization, IEEE Computer Society Press, San Francisco, CA, October, 1996, pp. 77-84.

Al-Sabhan, W., Mulligan, M., and Blackburn, A., (1999), Deploying the Client-

Side of the Web For Watershed Modelling. Proceedings of Geosolutions: Integrating Our World, GIS ’99, March 1-4,1999, Vancouver, Canada, pp. 63-67.

Al-Sabhan, W., Mulligan, M., and Blackburn, A., (2000), Deploying the Client-

Side of the Web For Watershed Modelling. Proceedings of GIS 2000 conference (CD-ROM), March 13-16, 2000, Toronto Canada.

Al-Sabhan, W., Mulligan, M., and Blackburn, A., (in press), A real-time

hydrological model for flood prediction using GIS and the WWW. Computers, Environment and Urban Systems. Elsevier Science Ltd., 26(6), pp. 25-48.

Andrienko, G. L., and N. V. Andrienko (1999), Interactive Maps for Visual Data

Exploration, IJGIS, June 1999, 13(4), pp. 355-374. Andrienko, G. and Andrienko, N. (2000), Java Tools for Exploratory

Cartographic Visualization in the Internet. The 10th International Conference on Computer Graphics and Vision GRAPHICON'2000. S. Klimenko (Ed.). Moscow, Russia, August 28 - September 2, 2000. Moscow State University, 2000, pp.18-25.

Page 285: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 275 -

Arehart, C., Chidambaram, N., Guruprasad, S., Homer, A., Howell, R., Kasippillai, S., Machin, R., Myers, T., Nakhimovsky, A., Passani, L., Pedley, C., Taylor, R., and Toschi, M., (2000), Professional WAP, Wrox Press Ltd., Chicago, IL

Arnold, K., and Gosling, J., (1996), The Java Programming Language.

Addison-Wesley, 2nd edition, December, Reading, MA. Bailey, T. C., and Gatrell, A. C., (1995), Interactive Spatial Data Analysis.

Longman Scientific and Technical, Harlow, Essex, UK. Chapter 3 and 4. Band, L. E., (1986), Analysis and Representation of Drainage Basin Structure

With Digital Elevation Data. Proceedings of the Second International Conference on Spatial Data Handling, Seattle, WA, pp. 437–450.

Band, L. E., (1989), A Terrain-based Watershed Information System, Hydrol.

Processes, 3, pp.151–162. Baptista, C., and Kemp, Z., (1999), Spatial Information Systems and the World

Wide Web. In B. Gittings (Ed.), Innovations in GIS 6, Integrating Information infrastructures with GIS Technology, Taylor and Francis Ltd., London, UK, pp. 25-37.

Barnes, B. S., (1939), The structure of discharge recession curves:

Transactions of American Geophysical Union, 20, pp. 721-725. Bathurst, J., (1986a), Sensitivity analysis of the Systeme Hydrologique

Europeen for an Upland Catchment, Journal of Hydrology, 87, pp. 103-123. Bathurst, J. C., (1986b), Physically-based Distributed Modelling of an Upland

Catchment Using the System Hydrologique European, Journal of Hydrology, 87, pp. 79-102.

Batty, M., and Xie, Y., (1994), Modelling Inside GIS: Part 1. Model Structures,

Exploratory Spatial Data Analysis and Aggregation. International Journal of Geographic Information Systems, Taylor and Francis. London, UK, 8(3), pp. 291-307.

Baxes, G., (1994), Digital Image Processing, Principles and Applications. John

Wiley and Sons, Inc., New York, NY.

Page 286: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 276 -

Bell, M., Dean, C., and Blake, M., (2000), Forecasting the Pattern of Urban Growth with PUP: A Web-based Model Interfaced with GIS and 3D Animation. Computers, Environment and Urban Systems. Elsevier Science Ltd., 24(2000) pp. 559-581.

Bennett, D. A., (1997), A Framework for the Integration of Geographical

Information Systems and Modelbase Management. International Journal of Geographic Information Science, Taylor and Francis, London, UK, 11(4), pp. 337-357.

Berry, J., 2000a, Analyzing Accumulation Surfaces, in: Map Analysis:

Procedures and Applications in GIS Modelling. Berry and Associates, Spatial Information Systems Inc. Available online at: http://www.innovativegis.com/basis/MapAnalysis/Default.html (Accessed Jun 2001).

Bertino, E. and Martino, L., (1993), Object-oriented Database Systems:

Concepts and Architectures. Addison-Wesley Publishing Company Inc., MA. Beven, K.J. and Kirkby, M. J., (1979), A Physically-based, Variable Contributing

Model of Basin Hydrology, Hydrological Sciences Bulletin, 24, pp. 43-69. Beven, K.J., Kirkby, M. J., Schoffield, N., and Tagg, A., (1984), Testing a

Physically-Based Flood Forecasting Model (TOPMODEL) for Three England Catchments. Journal of Hydrology. 69, pp.119-143.

Beven, K. J., (1997), Distributed Modelling in Hydrology: Applications of

TOPMODEL, Wiley, Chichester, UK. Beven, K.J., Lamb, R., Quinn, P.F., Romanowicz. R., and Freer. J., (1995),

Computer Models of Watershed Hydrology, V.P. Singh (ed.), Chapter 18 - TOPMODEL, Water Resources Publications, pp. 627-668.

Bhargava, H., Tettelbach, C., (1997), A Web-based Decision Support System

for Waste Disposal and Recycling, Computers, Environment and Urban Systems, Elsevier Science Ltd., 21(1), pp. 47-65.

Binge, M., (2000), Surveying GIS. A Practical Geographic Information Sciences

Guide for Survey Professionals. Available online at: http://www.pobonline.com/CDA/ArticleInformation/features/BNP__Features__Item/0,2338,17058,00.html (Accessed Dec 2001).

Binley, A. M., Beven, K. J., Calver, A. and Watts, L. G., (1991), Changing

Responses in Hydrology: assessing the uncertainty in physically based model predictions, Water Resources Research. 27, pp.1253-1261.

Page 287: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 277 -

Blades, M., (1993), Navigation and Wayfinding in Information Systems. In book: D. Medyckyj-Scott and H Hearnshaw (eds.). Human Factors in Geographical Information Systems. Belhaven Press, London. UK.

Blundon, W., (1996), Java and ActiveX: Java wins on the Internet, but the

intranet rules. Java World. Available online at: http://www.javaworld.com/jw-09-1996/jw-09-blundon.html (Accessed Mar 2001).

Bonham-Carter Graeme F., (1994), Geographic Information Systems for

Geoscientists: Modelling with GIS. Computer Methods in the Geosciences Pergamon Press. Vol. 13, New York, NY.

Booch, G., (1994), Object-Oriented Analysis and Design With Applications.

Benjamin/Cummings, Menlo Park, CA. Boucelma, O., Essid, M., and Lacroix, Z., (2002), A WFS-based Mediation

System for GIS Interoperability. Proceedings of the 10th ACM International Symposium on Advances in Geographic Information Systems (GIS), McLean, VA, pp. 23-28, November 2002.

Bouguettaya, A., Benatallah, and B., Hindra, L., (1999), World Wide Database-

Integrating the Web, CORBA and Databases. SIGMOD Record-1999, 28(2), pp. 594-596.

Bowen, B. A., (1987), Real-time Expert System: A Status Report. North Atlantic

Treaty Organization, Advisory Group for Aearospace Research and Development. AGARD lecture Series. No. 155.

Brodie, M., and Stonebraker, M., (1995), Migrating Legacy Systems. Morgan

Kaufmann Series in Data Management Systems, Jim Gray, Series (Ed.), Morgan Kaufmann Publishers, CA.

Bryant, N. A., and Zobrist, A. L., (1982), Some Technical Considerations on the

Evolution of the IBIS System in B.F. Richason (ed.) Remote Sensing: An Input to Geographic Information Systems in 1980s. Proceedings of the Pecora 7 Symposium, American Society of Photogrammetry, Falls Church VA.

Budd, T., (1991), An Introduction to Object-Oriented Programming. Addison-

Wesley, Reading, MA. Bundock, M. S., and Raper, J. F., (1991a) GIS customization: from tools to

efficient working systems. Proc. Mapping Awareness ’91 Conference, 6-8 February, 1991, London, UK, pp.101-114.

Page 288: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 278 -

Bundock, M. S., and Raper, J. F., (1991b), SQL-SX: Spatially Extended SQL - Becoming a reality. Proc. 2nd European GIS Conference, (EGIS’91), Brussels, 2-5 April.

Burk, T., E., and Lim, S., D., (1997), Internet tools Complementing Local GIS

Processing. Proceedings of Integrating Spatial Information Technologies for Tomorrow, GIS’97, GIS World Inc., February 17-20, 1997, Vancouver, Canada, pp 550-557. Available online at: http://fornet.gis.umn.edu/info/papers/six/ (Accessed May 2002).

Burton, B., and Marek, V., (1998), Applications of Java programming Language

to Database Management, SIGMOD Record, 27(1), March 1998, pp. 27-34. Burrough, P.A., (1986), Principles of Geographic Information Systems for Land

Resources Assessment. Clarendon Press, Oxford. Burrough, P. A., Van Deursen, W., and Heuvelink, G., (1988), Linking Spatial

Process Models and GIS: a marriage of convenience or a blossoming partnership? Proceedings of GIS/LIS’88, Bethesda: American Congress on Surveying and Mapping, pp. 598-607.

Burrough, P. A., (1996), Opportunities and Limitations of GIS-Based Modelling

of Solute Transport at the Regional Scale, In D. L. Corwin and K. Loague (eds.), Applications of GIS to the Modelling of Non-Point Source Pollutants in the Vadose Zone, Special SSSA Publications, Madison, WI.

Burrough, P. A., (1997), Environmental Modelling with Geographical Information

Systems. In book: Z. Kemp, (Ed.) Innovations in GIS 4, Fourth National Conference on GIS research UK (GISRUK), Taylor and Francis, London, UK, pp. 143-153.

Buttenfield, B. P., and Beard, M. K., (1994), Graphical and Geographical

Components of Data Quality. In H. M. Hearnshaw and D. J. Unwin (Eds.) Visualization in Geographical Information Systems. Wiley. Chichester, UK, pp. 150-157.

Calder, C., (1998), Exploring GIS on the Web, News Letter, Center for Land

Use and Environmental Science, No. 22, April, 1998. Camara, G., Freitas, U.M., and Cordeiro, J.P.C., (1994), Towards an Algebra of

Geographical Fields. In: VII Simpsio Brasileiro de Computao Grfica e Processamento de Imagens. Anais. Curitiba, pp. 205-212.

Cameron, D. S., Beven, K. J., Tawn, J., Blazkova, S., and Naden, P., (1999),

Flood Frequency Estimation for a Gauged Upland Catchment (with uncertinity), Journal of Hydrology, 219, pp.169-187.

Page 289: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 279 -

Cameron, D, Beven, K. J., Tawn, J, and Naden, P., (2000), Flood Frequency Estimation by Continuous Simulation (with likelihood based uncertainty estimation), Hydrology and Earth System Science, 4(1), pp. 23-34.

Carr, D. B., Valliant, R., and Rope, D. (1996), Plot Interpretation and Information

Webs: A Time-Series Example from the Bureau of Labor Statistics, Statistical Computing and Statistical Graphics Newsletter, 7(2), pp.19-26.

Carr, D. B., (1994), Converting Tables to Plots, Technical Report 101, Center

for Computational Statistics, George Mason University, Fairfax, VA. Carver, S., Frysinger, S. and Reitsma, R., (1996), Environmental Modelling and

Collaborative Spatial Decision Making: some thoughts and experiences arising from the I-17 meeting. Proceedings 3rd International Conference and Workshop on Integrating Geographical Information Systems and Environmental Modeling, January 1996 Santa Fe, NM,. CD-ROM. Available online at: http://www.ncgia.ucsb.edu/conf/SANTA_FE_CD-ROM/sf_papers/carver_steve/carver.html (Accessed Jun 2001).

Carver, S., Blake, M., Turton, I., Duke-Williams, O., (1997), Open spatial

decision-making: Evaluating the potential of the World Wide Web in book: Z. Kemp, (Ed.) Innovations in GIS 4, Fourth National Conference on GIS Research UK (GISRUK), Taylor and Francis Ltd., London. pp.267.

Carver, S., Evans, A., Kingston, R., and Turton, I., (1998), Geographical

information systems on the World Wide Web: improving public participation in environmental decision making, Available online at: http://www.ccg.leeds.ac.uk/vdmisp/publications/easst.html (Accessed June 2002).

Carver, S., (1999), Developing web-based GIS/MCE: improving access to data

and spatial decision support tools. in J-C.Thill (ed) Multi-criteria decision-making and analysis: a geographic information sciences approach. Ashgate, pp.49-75.

Catarci, T., (1997), Interacting with Databases in the Global Information

Infrastructure. IEEE Communications Magazine, 35(5), pp. 72-76. Chance A.G., Richard A.G., and Theriult D., (1999), Smallworld GIS: An

Overview of Smallworld Magik. Chang, D., and Harkey, D., (1998), Client-server Data Access with Java and

XML. John Wiley and Sons, Inc., New York, NY.

Page 290: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 280 -

Chappell, D., (1996), Component Software Meets the Web: Java Applets vs. ActiveX Controls, Chappell Associates. May 1996. Available online at: http://www.chappellassoc.com/JavaActX.htm. (Accessed Jan 2000).

Chen, S., Wang, X., Rishe, N., and Weiss, M.A., (2000), A High-Performance

Web-Based System Design for Spatial Data Accesses," Proceedings of the Eighth ACM Symposium on Advances in Geographic Information Systems (2000), pp.33-38.

Chopra, P.N., (1996), Geological Mapping on the Web- The Australian

Geological Survey Organisation introduces on-line customizable maps, GIS User, 19, October- November 1996. pp 35-39.

Chi, Yu-Liang, (1999), An Integration Architecture For Large Scale Web

Applications Involving Workflow, Data Exchange, and Knowledge Bases. Ph.D. thesis, Arizona State University.

Chow, V.T., (1964), Handbook of applied hydrology: McGraw-Hill, New York,

NY. Clarke, R.T., (1973), A Review of Some Mathematical Models Used in

Hydrology, With Observation on Their Calibration and Use. Journal of Hydrology. 19(1): 1-20.

Clarke, M., (1990), Geographical Information Systems and Model Based

Analysis: Towards Effective Decision Support systems. H.J. Scholten and J.C.H.Stillwell (eds.) Geographical Information Systems for Urban and Regional Planning. Kluwer Academic Publishers, pp. 165-175.

Cleveland, W. S., (1993), Visualizing Data, Hobart Press, Summit, NJ. Cleveland, W. S., (1994), The Elements of Graphing Data, Hobart Press,

Summit, NJ. Codd, E. F., (1988), Fatal Flaws in SQL, Datamation 34(16), pp.45-48. Coffee, P., (1996), Java, ActiveX Under a Microscope. ZNET. Available online

at: http://icq.zdnet.com/devhead/stories/articles/0,4413,1600418,00.html. (Accessed Jan 2000).

Collier C.G., (1994), Objective Methods of Forecasting Precipitation Using

Weather Radar Data, in Almeda-Teixeira M.E., Fantechi R., Moore R., Silva V.M. eds. Advances in radar hydrology. European Commission Report EUR 14334 EN.

Page 291: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 281 -

Collischonn, W. and Pilar, J.V., (2000), A Direction Dependent Least-cost-path Algorithm for Roads and Canals. International Journal of Geographical Information Systems, Taylor and Francis. London, UK, Taylor and Francis. London, UK, Vol. 12, pp. 491-508.

Coors, V., and Flick, S., (1998), Integrating Levels of Detail in a Web-based 3D-

GIS, ACM'98, November 1998, Washington, D.C., pp. 40-45. Coppock, T., and Anderson, E., (1987), Editorial, International Journal of

Geographic Information Systems, Taylor and Francis. London, UK, 1 pp. 1-2. Coppock, J T., and Rhind, D W., (1991), The History of GIS. In D. Maguire, M.

Goodchild and D. Rhind (eds.), Geographical Information Systems: Principles and Applications. Longman Scientific and Technical. John Wiley and Sons, Inc., New York, NY, pp.21-43.

Horstmann, C. S., and Cornell, G., (1998), Core Java. Prentic Hall PTR Upper Saddle River, NJ, Vo. I Correia, F. N., Saraiva, M. G. and Ramos, I., (1997), GIS-based Flood Analysis

and Floodplain Management, Water resources Management, Kluwer Academic Publishers, Dordrecht, Netherlands.

Correia, F. N., Rego, F. C., Saraiva, M. G. and Ramos, I., (1998), Coupling GIS

with Hydrological and Hydraulic Flood Modelling. Water Resources Management, 12, Kluwer Academic Publishers, Netherlands, pp. 229-249.

Cressie, N. A. C., (1993), Statistics for Spatial Data, Revised Edition. Wiley and

Son Inc., New York. NY. Cui, Z., Cohn, A. G., and Randell, D. A., (1993), Qualitative and Topological

Relationships in Spatial Databases, in Design and Implementation of Large Spatial Databases, 3rd Symposium SDD’93, LNCS 692, 396-315, Springer Verlag, Berlin, Germany.

Daconta, M. C., (1996), Java for C/C++ Programmers, John Wiley and Sons,

New York, NY. Dai, Q., Evans, L, and Shank, M., (1997), Internet Interactive GIS and Public

Empowerment. Proceedings of Integrating Spatial Information Technologies for Tomorrow, GIS ’97, GIS World Inc., February 17-20, 1997, Vancouver, Canada, pp. 555-559.

Page 292: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 282 -

Dasilva, J.S., Barani, B., and Arroyo-Fernàndez, B., (1996), European Mobile Communications on the Move, IEEE Communications Magazine, 34(2), February 1996, pp.60-69.

Date, C. J., (1989), A Guide to the SQL Standard, 2nd edition, Addison-Wesley,

Reading, MA. Davis, C., and Medycki-Scott, D., (1994), GIS Usability Based on User View.

International Journal of Geographical Information Systems (IJGIS), Taylor and Francis. London, UK, 8(2), pp.175-189.

Davis, C.A., (1994), Object-oriented GIS in Practice. Urban and Regional

Information Association, pp.786-795. Davis, B.E., (1996), GIS: A Visual Approach, Onword Press, NM. Davis, T., and Keller, C. P., (1997), Modelling Uncertainty in Natural Resource

Analysis Using Fuzzy Sets and Monte Carlo Simulation: slope stability prediction, International Journal of Geographic Information Science. Taylor and Francis. London, UK, 11(5), pp. 409-434.

Davis, M.K. and Maidment, D., (2000), Object-Oriented Modelling of Riversand

Watersheds in Geographic Information Systems. CRWR Online Report. No. 2000-7.

DeBarry, Paul A., R.G. Quimpo, J. Garbrecht, T.A. Evans, L. Garcia, L.E.

Johnson, J. Jorgeson, V. Krysanova, G. Leavesley, D. R. Maidment, E. J. Nelson, F.L. Ogden, F. Olivera, T.A. Seybert, W.T. Sloan, D. Burrows, E.T. Engman, R. Binger, B.M. Evans, and F. Theurer, (1999), GIS Modules and Distributed Models of the Watershed. ASCE Task Committee on GIS Modules and Distributed Models of the Watershed, Special Report, July 1999.Reston, VA.

Deckers, F., (1993), EGIS, a Geohydrological Information System. Application

of Geographic Information Systems in hydrology and water resources. IAHS publication. No. 211 Velp, Netherlands: IAHS, pp. 611-619.

DeCoursey, D.G. 1991. Mathematical Models: Research Tools for Experimental

Watersheds. In: Bowles, D.S., and O'Connell, E., eds. Recent Advances in the Modeling of Hydrologic Systems. NATO Advanced Study Institute. July 10-23, 1988. Sintra, Portugal. Kluwer Academic Publishers. pp. 591-612.

DeFranti, T. A., Brown, M. D., and McCormick, B. H., (1989), Visualization:

Expanding the Scientific and Engineering Research Opportunities. Computer 22 (6), pp.27-38.

Page 293: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 283 -

Denbo, D. W., Zube, S., McClurg, D. C., and Soreide, N. N., (1997), Epic and Tao Data Access with Java Applets. Proceedings of the 13th International Conference on Interactive Information and Processing Systems (IIPS) for Meteorology, Oceanography, and Hydrology, Long Beach CA, February 2-7, 1997, pp.182-183.

Densham, P. (1991), Spatial Decision Support Systems, in D.J. Maguire, M.F.

Goodchild, and D.W. Rhind (Ed.) Geographical Information Systems: principles and applications, Longman, London, pp. 403-412.

Densham, P.J. and Armstrong, M. P., (1994), A Heterogeneous Processing

Approach to Spatial Decision Support Systems, in T.C. Waugh and R.G. Healey (Eds.) Advances in GIS Research. Proceedings of the Sixth International Symposium on Spatial Data Handling, 1.

Deo, N. and Pang, C., (1984), Shortest-Path Algorithms: Taxonomy and

Annotation, Networks, Vol. 1, pp. 275-323. Department of the Environment, (1987), Handeling Geographic Information. The

Report of the Committee of Enquiry Chaired by Lord Chorley. London: HMSO.

De Roo, A.P.J., (1996), Soil Erosion Assessment Using GIS. In: Singh, V.P. and

Fiorentino, M. (eds.) Geographical Information Systems in Hydrology. Kluwer, p. 443.

De Roo, A.P.J. Hazelhoff, L., and Burrough, P. A., (1989), Soil erosion modeling

using ANSWERS and Geographical Information Systems. Earth Surface. Processes and Landforms, 14, pp.517-532.

DeVantier, B.A., and Feldman, A.D., (1993), Review of GIS Applications in

Hydrologic Modeling, Journal of Water Resources Planning and Management, ASCE, 119(2), pp. 246-261.

Diggle, P. J., (1993), Point Process Modelling in Environmental Epideilogy. In V.

Barnett, and K. F. Turkman, (Eds.) Statistics for the Environment, John Wiley, Chichester, UK. Chapter 4.

Digimap Project Documentation, (2000), Available online

at:http://digimap.ed.ac.uk, (Accessed April 2001). Dijkstra, E.W., (1959), A Note on Two Problems in Connexion With Graphs.

Numerische Mathematik, 1, pp.269-271.

Page 294: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 284 -

Djokic, D., Beavers, M.A., and Deshakulakarni, C. K., (1994), ARC/HEC2: an ARC/INFO - HEC-2 Interface. Proceedings of the 21st Water Resources Planning and Management Division Annual Specialty Conference, ASCE, New York, N.Y., pp. 41-44.

Djurcilov S., and Pang, A., (1998), Visualization Products On-Demand Through

the Web. VRML 1998, pp.7-13. Dodge, M., Doyle, S., Haklay, M., and Rana, S., (1999), GISTimeLine, Centre

for Advanced Spatial Analysis (CASA), University College London. Available online at: http://www.casa.ucl.ac.uk/gistimeline/welcome.htm (Accessed 20 June, 2002).

Dodson, R. D., (1993), Advances in Hydrological Computation, In D. Maidment

(ed.) Handbook of Hydrology, McGraw, New York, NY, Chapter 23. Domino, (2003), Available online at:

http://www1.ibm.com/servers/eserver/iseries/domino/products.htm. Douglas, D.H., (1994), Least-cost Path in GIS Using an Accumulated Cost

Surface and Slopelines. Cartographica, 31, pp.37-51 Doviak, R. J., and Zrnic, D. S., (1984), Doppler radar and wether observations.

Academic Press, Orlando, FL. Doyle, S., Dodge, M., and Smith, A., (1998), The Potential of Web-based

Mapping and Virtual Reality Technologies for Modelling Urban Environments, Computers, Environment and Urban Systems, Elsevier Science Ltd., 22(2), pp.137-155.

Dragicevic, S., Lewis, J., Ewing, G., and Meredith, T., (2000), Environmental

Data Exploration: the Web GIS Approach. Proceedings of GIS 2000 conference (CD-ROM), GIS World Inc., March 13-16, 2000, Toronto, Canada.

Dreamtech software team, (2001), Cracking the Code: WAP, Bluetooth,

and 3G Programming. John Wiley and Sons.New York, NY. Dunham, R., Miller, D., and Broadgate, M., (1999), A Decision Support

Demonstrator for Abiotec Domage to Trees, Using a WWW Interface. In Book: Gittings (Ed.), Innovations in GIS 6, Integrating Information infrastructures with GIS Technology, Taylor and Francis Ltd., London, UK., pp.79-91.

Page 295: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 285 -

Dye, D. G., Gopal, S., and Ju, J., (1999), Interactive Java Applets for Remote Sensing and GIS Education. Asian Conference on Remote Sensing. Proceedings of The 21st Asian Conference on Remote Sensing. China Association for Science and Technology and Ministry of Science and Technology of China, Hong Kong, China.

Eastman, J.R., 1989, Pushbroom Algorithms for Calculating Distances in Raster

Grids. Proceedings of AUTOCARTO 9, pp.288-297. Eckel, B., (1998), Thinking in Java. Prentice Hall, Upper Saddle River, NJ. E-

book available online at: http://www.mindview.net/Books/TIJ/. (Accessed Jul 2001).

Eckerson, Wayne W., (1995), Three Tier Client/Server Architecture: Achieving

Scalability, Performance, and Efficiency in Client Server Applications. Open Information Systems 10, 1, January 1995, 3(20).

Edmondson, P., (1995), A Management Strategy for the River Wye Corridor,

Hereford. Efford, N., (2000), Digital Image Processing Using Java: A Practical Introduction

Using Java. Addison-Wesley, New York, NY. Egenhofer, M. J., and Richards, J. R., (1993), Exploratory access to geographic

data based on the map-overlay metaphor, Journal of Visual Languages and Computing, 4, pp.105-125.

Ehlschlaeger, C., (1989), Using the A* Search Algorithm to Develop Hydrologic

Models From Digital Elevation Data. Proceedings of International Geographic Information Systems (IGISD) Symposium ’89, March 18–19, Baltimore, MD.

Elmasri, R., Navathe, S., (1994), Fundamentals of Database Systems, The

Benjamin/Cummings Publishing Inc., CA. Emapper, (2003), Available online at: http://maps.epa.gov/enviromapper. Engelen, G., (ed.), (2000), MODULUS: A Spatial Modelling Tool for Integrated

Environmental Decision Making, (EU-DGXII, ENV4-CT97-0685), 2000. Environment Agency, (1999), Flood Warning Service Strategy for England and

Wales, 1999, Environment Agency, Bristol, UK, pp.14. EPA, (2003), Environmental Protection Agency. Available online at:

http://www.epa.gov/ceisweb1/ceishome/atlas/nationalatlas/landatlas.html.

Page 296: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 286 -

ESRI, (1999), ArcInfo 8 Cartography, New Possibilities, ESRI White Paper, Esri, 1999.

ESRI, (2002), What is ArcGIS, ESRI White Paper, ESRI library, ArcGIS

Literature. Available online at: http://www.esri.com/library/whitepapers/pdfs/what_is_arcgis.pdf. (Accessed April 2002).

Evans, I S., (1980), An integrated system of terrain analysis and slope mapping.

Zeitschrift für Geomorphologie, N.F., Suppplementband, 36, pp. 274-295. Fairbairn, D., (1997), The Use of VRML for Cartographic Presentation,

Computers and Geosciences, 23(4), pp.475-481. Feary, B., J., (1999), Tantalis: A Web-based Approach to Public Land

Administration in British Columbia. Proceedings of GeoSolutions: Integrating Our World, GIS World Inc., March 1-4, 1999, Vancouver, Canada, pp. 50-54.

Fedorov, A., Francis, B., Harrison, R., Homer, A., Murphy, S., Smith, R.,

Sussman, D., and Wood, S., (1998), Professional Active Server Pages 2.0. Wrox Press Ltd., Canada.

Fedra, K., (1993), GIS and Environmental Modeling, In Environmental Modelling

with GIS, M.F. Goodchild, B. O. Parks, and Steyaert (Eds.), Oxford University Press. New York, NY, pp.35-50.

Feldman, A. D., (1994), Assessment of Forecast Technology for Flood Control Operation. In G. Rossi, N. Harmancioglu and V. Yejevich (eds.), Coping with Floods, Kluwer Academic Publishers, Dordrecht, Netherlands, pp.445-458. Felton, M., (1997), CGI Internet Programming, Prentice-Hall, Inc., NJ. Feng, C., (1999), A World Wide Web Server With Embedded GIS. Ph.D. thesis,

Department of Geography, University of Kansas. Lawrence, KS. Ferris, S., E., (1999), Web based Geographic Information Systems (GIS):

Digital Mapping Toy or “Real” GIS? Thesis, California State University, May 1999, Long Beach, CA.

Fingar, F., Read, D., and Stikeleather, J, (1996), Next Generation Computing:

Distributed Objects for Business. SIGS, New York, NY.

Page 297: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 287 -

Fischer, P., and Gorman, M., (1998), Generation of Multilayer Thematic Products for End-Users- A WWW-Interfacing System for Integrating earthborne GIS and spaceborne EO Information. Proceedings of the Earth Observation and Geo-Spatial Web and Internet Workshop’ 98, Salzburger, Geographische Materialien Vol. 27. Instituts fur Geographie der Universitat Salzburg, Austria.

Fisher, M., and Wilson, J. D., (1997), Geo-engineering and the Internet:

Collaborative Computing Finds Its Connective Environmental. Proceedings: Integrating Spatial Information Technologies for Tomorrow, GIS 97, GIS World Inc., February 17-20, 1997, Vancouver, Canada.

Fjell Knut-Olav; Gausland Ingebret, (1999,), Combining GIS And Web Simplifies

Access To Corporate Data. The Oil and Gas Journal, August 30, 97 (35), p.58.

Foote, K. E., and Kirvan, A. P., (1997), WebGIS, NCGIA Core Curriculum in

GIScience, Availabe online at: http://www.ncgia.ucsb.edu/giscc/units/u133/u133.html, (Accessed July 1998).

Frank, A. U., (1993), The Use of Geographical Information Systems: the user

interface Is the system in Medyckyj-Scott, D. and Hearnshaw, H., (eds.), Human Factors in Geographical Information Systems, Belhaven Press, London, pp.3-14.

Fraser, D., (1998), Lessons Learned Implementing Z39.50/GEO/Isite WWW

Gateways. Proceedings of the Earth Observation and Geo-Spatial Web and Internet Workshop’ 98, Salzburger, Geographische Materialien Vol. 27. Instituts fur Geographie der Universitat Salzburg, Austria.

FreeBSD, (2003), Available online at: http://www.freebsd.org. Freeman, T. G., (1991), Calculating Catchment Area with Divergent Flow Based

on a Regular Grid, Computer and Geosciences, 17, pp.413–422. Freier, J., (2000), Mapping Outbreaks Using GIS.USDA:APHIS:VS Centers for

Epidemiology and Animal Health Fort Collins, Colorado. Available online at: http://www.aphis.usda.gov/vs/ep/avma/avma-sym.html. (Accessed Feb 2002).

Freksa, C., (1991), Qualitative Spatial Reasoning, in Mark, David M. and Frank,

A. (Eds.), Cognitive and Linguistic Aspect of Geographic Space, NATO ASI series, Kluwer, Dordrecht, Netherlands, pp.361-72.

Page 298: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 288 -

Frust, J., Gristmair, G., and Nachtnebel, H. P., (1993), Application of GIS in decision support systems for groundwater management. Application of Geographic Information Systems in hydrology and water resources. IAHS publication. No. 211, Velp, Netherlands: IAHS.

Gamma, E., Helm, R., Johnson, R., and Vlissides, J., (1995), Design Patterns:

Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA.

Garnesson, P., (1998), A WWW Service For On-Line Image Delivery.

Proceedings of the Earth Observation and Geo-Spatial Web and Internet. Workshop’ 98, Salzburger, Geographische Materialien Vol. 27. Instituts fur Geographie der Universitat Salzburg, Austria.

Geary, D., and McClellan, A., (1997), Graphic Java: Mastering the AWT.

Microsystems Inc., Mountain View, CA. GeoMedia, (2003), Available online at:

http://www.intergraph.com/software/geomedia/default.asp. GIS.com, (2001), An Overview: The Future of GIS, Available online at:

http://www.gis.com/trends/tomlinson2.html. (Accessed Sep 2001), Glass, G. E., Schwartz B. S., Morgan J. M., Johnson D. T., Noy P. M., Israel E.,

(1995), Environmental Risk Factors For Lyme Disease Identified With Geographic Information Systems. American Journal of Public Health 85(7), pp.944-948.

Goodchild, M. F., Parks, B.O., and Steyaert, L.T., (1993), Geographic

Information Systems and Environmental Modeling. Oxford University Press, New York, NY.

Goodchild, M., (1998), Towards A Geography of Geographic Information In A

Digital World, Computers, Environment and Urban Systems, Elsevier Science Ltd., 21(6), pp.337-391.

Goodchild, M., (1992), Integrating GIS and Spatial Data Analysis: problems and

possibilities, International Journal of Geographical Information Systems, Taylor and Francis. London, UK, 6, pp.407-423.

Goonetilleke, A., Jenkins, G. A., (1999), The Role of Geographical Information

Systems in Urban Hydrological Modeling, Journal of the chartered Institution of water and environmental Management, 13(3), pp.200-206.

Page 299: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 289 -

Gosling, J., Joy, B., and Steele, G., (1996), The Java Language Specification. Sun Microsystems, Inc., Addison-Wesely Inc., CA.

Gosling J., and McGilton H., (1996), Java Language Environment: A White

Paper, Sun Microsystems, Inc., available online at: http://java.sun.com/docs/white/langenv. (Accessed Mar 2001)

Graham, S., D., N., (1996), Flight to the cyber suburbs. The Guardian, 18, April

1996, p.2-3. Graham, L., (1999), Geofocus: GIS Software NT-based GIS rises to the

occasion. GeoEurope, Adams Business Media, July, 1999. Chicago, IL. Available online at: http://www.geoplace.com/ge/1999/0799/799gis.asp. (Accessed Dec 2001).

Grand, M and Knudsen, J., (1997), Java Fundamental Classes Reference.

O’Reilly and Associates Inc., Sebastopol, CA. GRASSLinks, (2003), Available online at: http://regis.berkeley.edu/grasslinks. Grayson, R. B., Moore, I. D., and McMahon, T. A., (1992), physically based

hydrological modeling: Is the concept realistic? Water Resources Research 26(10) pp.2659-2666.

Green, D., and Bossomaier, T., (2002), Online GIS and Spatial Metadata.

Taylor and Francis. London, UK. p.27. Guan, J., Zhou, S., Bian, F., and Hu, Y., (2000), MADGIS: a NEW Architecture

for Distributed GIS under Internet Environment, Lecture Notes in Computer Science, Web-Age, Springer-Verlag, Vol. 1846, pp.283-288.

Guild, (2001), Available online at: http://www.massey.landcare.cri.nz. Haggett, C., (1998), An Integrated Approach to Flood Forecasting and Warning

in England and Wales, Journal of Water and Environment Management, 1998, 12(6), pp.425-432.

Haklay, M., (in press), Public Access to Environmental Information: past,

present and future. Computers, Environment and Urban Systems, Elsevier Science Ltd.

Haklay, M., (2001), Public environmental information systems: challenges and

perspectives. PhD thesis, Department of Geography, University of London, London. UK.

Page 300: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 290 -

Hallo, R. E., (1997), Public Access to Environmental Information, Expert's Corner no. 1997/1, European Environmental Agency, Copenhagen, p.41.

Hamilton, G., Fisher, M., and Cattell, R., (1997), JDBC Database Access with

Java: A Tutorial and Annotated Reference. Addison-Wesley, Reading, MA. Hardy, V. J., (1999a), Java 2D API Graphics, P T R Prentice-Hall, Englewood

Cliffs, NJ. Hardy, P.G., (1999b), Active Object Techniques for the Production of Multiple

Map and Geodata Products from a Spatial Database. Cambridge, UK: Laser-Scan Ltd.

Harold, E. R., (1999), Java IO. O'Reilly and Associates Inc, Sebastopol, CA. Harnedy, S., (1998), Web-Based Management for the Enterprise. Prentice Hall,

NJ. Harris, B., (1995), Complexity in Collaborative Spatial Decision-making.

Available online at: http:// www.ncgia.ucsb.edu/research/i17/htmlpapers/harris/Harris.html (Accessed 22 June 2002).

Harts, J. J., Ottens, H. F. L., and Scholten , H. J., (1990), EGIS ’90 and the

Development and Application of Geographical Information Systems in Europe. Proceedings of the first European Conference on Geographical Information Systems. EGIS Foundation. Utrecht. Netherlands.

Haslett, J., Wills, G., and Unwin, A., (1990), SPIDER- an Interaction Statistical

Tool for the Analysis of Spatially Distributed Data. International Journal of Geographical Information Systems, Taylor and Francis. London, UK, Vol. 4, pp.285-296.

Hearing, J. R., Larsen, R. C., and Shivakumar, J., (1988), Extensions to SQL

Query Language to Support Spatial Analysis in a Topological Database. Proceedings of GIS/LIS’89 Conference, San Antonio, TX, November, pp.741-750.

HEC, (1996), Status of HEC Next Generation Software Development Project,

US Army Corps of Engineers, June 1996, Technical Paper No. 156,

Page 301: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 291 -

Hawthorn, R. S., and Engen, P. D., (1997), Using the WWW for Spatial Systems Development. Proceedings of Integrating Spatial Information Technologies for Tomorrow. GIS ‘97, Eleventh Annual Symposium of Geographic Information Systems, GIS World Inc., Vancouver, Canada, February 17-20, 1997. pp.567-570.

Herring, J. R., (1992), TIGRIS: A Data Model for an Object-oriented Geographic

Information System. Computers and Geosciences, 18(4): pp.443-452. Herring, J., (1991), TIGRIS: A Data Model for an Object-Oriented Geographic

Information System. Computers and Geosciences, 18(4). pp.443-452. Hewlett, J.D. and Hibbert, A.R., (1967), Factors affecting the response of small

watersheds to precipitation in humid areas, in Sopper, W.E., and Lull, H.W., eds., International Symposium on Forest Hydrology. Pergamon, New York, NY, pp.275-290.

Horita, M., (2000), Mapping policy Discourse with CRANES: spatial

understanding support systems as a medium for community conflict resolution. Environment and Planning B: Planning and Design, 27(6), pp.801-814.

Horn, B.K.P, (1981), Hill Shading and the Reflectance Map, p.14. Horton, R.E., (1933), The role of infiltration in the hydrologic cycle: Transactions

of American Geophysical Union 14, pp.446-460. Huang, B., and Worboys, M. F., (2000), Dynamic Modelling and Visualization on

the Internet, Transactions in GIS, 5(2): pp.131-140. Hudson, J C., (1979), (ed.) Seventy-five Years of American Geography. Annals

of the Association of American Geographers 69(1) pp. 185. Hudson, J.A., and Gilman, K., (1993), Long-term Variability in the Water

Balances of the Plynlimon Catchments. Journal of Hydrology. 1993. 143(3), pp.355 – 380.

Hunter J, and Crawford W., (1998), Java Servlet Programming, O'Reilly and

Associates Inc., Sebastopol, CA. Hunter, J., (1998), Java Servlet Programming. O’Reilly and Associates Inc.,

Sebastopol, CA. Hunter, G. J., and Goodchild, M. F., (1996), Communicating Uncertainty in

Spatial Databases. Transactions in GIS, 1(1), pp.13-24.

Page 302: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 292 -

Husdal, J., (2000), How to Make a Straight Line Square: network analysis in raster GIS with time-dependent cost variables. MSc Thesis in GIS. Department of Geography, University of Leicester, UK.

Huse, S., (1995), GRASSLinks: A New Model for Spatial Access in

Environmental Planning. Ph.D. thesis, Department of Environmental Planning, University of California at Berkeley, Berkeley, CA.

IAB, (2003), Internet Architecture Board. Available online at:

http://www.iab.org/iab. IEEE, (1990), Institute of Electrical and Electronic Engineers. IEEE Standard

Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. New York, NY.

Institute of Hydrology, (1980), Low flow studies: Wallingford, U.K., Institute of

Hydrology, Research Report 1. Jacobs, April. (1996), Mapping software Finds the Net. ComputerWorld, August

5, 30 (32) p.44(1). James, W. P., Robinson, C., G., and Bell, J. F., (1993), Radar-assisted Real-

time Flood Forecasting. Journal of Water Resources Planning and Management. January/February, 1993, ASCE, 119(1), pp.32-44.

Jankowski, P., Nyerges, T., Smith, A., Moore, T.J., and Horvath, E., (1997),

spatial group choice: a SDSS tool for collaborative spatial decision-making. International Journal of Geographical Information Science, P. Fisher, K.C. Clark, and B. Lees (Eds.), Taylor and Francis. London, UK,11(6), pp. 577-602.

Jankowski, P., Andrienko, N., and Andrienko, G., (2001), Map-Centered

Exploratory Approach to Multiple Criteria Spatial Decision Making, International Journal Geographical Information Science, Taylor and Francis, London, UK, 15 (2), pp.101-127

Jenson , S. K., and Domingue, J. O., (1988), Extracting Topographic Structure

from Digital Elevation Data for Geographical Information System Analysis. Photogrammetric Engineering and Remote Sensing, 54(11), pp.1593-1600.

Jepson, B., and Hughes, D., (1998), Official Guide to MiniSQL, John Wiley and

Sons Inc., New York, NY.

Page 303: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 293 -

Joậo, E., (1998), Use of Geographic Information Systems in Impact Assessment. On A. Porter, and J. Fittipaldi (Eds.). Environmental methods review: retooling impact assessment for the new century. Atlanta, USA: Army Environmental Policy Institute, Georgia Institute of Technology.

Joậo, E., and Fonseca, A. (1996), Current Use of Geographical Information

Systems for Environmental Assessment: a discussion document. London: Department of Geography, London School of Economics, University of London, London, UK.

Johnes, K H., (1996), A Comparison of Eight Algorithms Used to Compute

Slopes as a Local Property of the DEM. Proceedings of the GIS Research UK 1996 Conference, pp.7-12.

Journel, A.G., (1983), Nonparametric estimation of spatial distributions,

Mathematical Geology, 15(3), pp. 445-468. Ju, P., (1997), Databases on the Web: Designing and Programming for Network

Access. M and T Books: www.mispress.com. New York, NY Kaaranen Heikki (2001), UMTS Networks: Architecture, Mobility and Services,

Wiley and Sons. New York, NY. Kahkonen, J., Lehito, L., Kilpelainen, T., and Sarjakoski, T., (1999), Interactive

visualisation of geographical objects on the Internet, International Journal of Geographical Information Science, Taylor and Francis, London. 13(4), pp. 429-438.

Karimi, H., (1996), Real-time Optimal-route Computation: A heuristic approach.

ITS Journal, Netherlands, 3(2), pp.111-127. Karimi, H. A., and Hwang, D., (1997), Overcoming the Time Complexity Barrier

of Routing for Real-Time GIS-T Applications: A Parallel Routing Algorithm. Journal of Geographic Information and Decision Analysis, Taylor and Francis. London, UK, 1(2), pp. 144-150.

Karimi, H., Chapman, M., (1997), Real-Time GISs: An Emerging Technology

Through the Integration of GPS, Video Imagery, and Fast Algorithms. Proceeding of Integrating Spatial Information Technologies for Tomorrow, GIS ’97, Vancouver, Canada, GIS World Inc., pp. 630-633.

Karimi, H. A., and Blais, J. A. R., (1997), Current and Future Direction in GISs,

Computer, Environment and Urban Systems, Elsevier Science Ltd., 20(2), pp.85-97.

Page 304: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 294 -

Karimi, H.A., and Houston, B., H., (1997), Evaluating Strategies for Integrating Environmental Models with GIS: Current Trends and Future Needs. Computer, Environment and Urban Systems, Elsevier Science Ltd., 20(6), pp.413-425.

Karssenberg, D., Wesseling, C. G., Burrough, P. A., and van Deursen, W. P. A.,

(1998) PCRaster: application in research projects, example models. Netherlands Centre for Geo-ecologial research, Utrecht University, Utrecht, Netherlands. Available online at: http://www.geog.uu.nl/pcraster/exmod/icgintro.html (Accessed Mar 2002).

Kenerva, J. (1997), The Java FAQ. Java series Addison-Wesley, Inc., Reading,

MA. Kim, Y.-H. and Openshaw, S., (1998), Alternative Location-Allocation

Algorithms. GIS Research UK98, Department of Geography, University of Edinburgh, Edinburgh, U.K.

Kim, K., and Lee, K., (1999), Development of Web-based 3D GIS. Proceedings

of Geosolutions: Integrating Our World, GIS ’99, GIS World Inc., March 1-4,1999, Vancouver, Canada, pp.23-26.

Kingston, R., (1998), Web Based GIS for Public Participation Decision Making

in the UK, NCGIA PPGIS Meeting, Santa Barbara, CA. Available online at: http://www.ncgia.ucsb.edu/varenius/ppgis/papers/kingston/kingston.html. (Accessed April 2001)

Kingston, R., Carver, S., Evans, A., and Turton, I., (2000), Web-based Public Participation Geographical Information Systems: an aid to local environmental decision-making. Computers, Environment and Urban Systems, Science Ltd., 24(2), pp.109-125.

Kirby C., Newson M. D., and Gilman, K., (1991), Plynlimon Research: the first

two decades, Institute of Hydrology (Wallingford) Rep. 109. Kite, G.W., Ellehoj, E. and Dalton, A., (1996), GIS for Large-Scale Watershed

Modelling. In: Singh, V.P. and Fiorentino, M. (eds.) Geographical Information Systems in Hydrology. Kluwer. p.443.

Kjerne, D., and Dueker, K. J., (1986), Modelling Cadastral Spatial Relationships

Using an Object Oriented Language. In D. Marble (Ed.). Second International Symposium on Spatial Data Handling. Seattle, WA,

Klein, D.H., (1999), The Internet and the Future of the Decision Making.

Proceedings of the 1999 Annual URISA Conference, August 1999, Chicago, IL.

Page 305: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 295 -

Knapp, B. J., (1970), Patterns of water movement on a steep upland hillside, Plynlimont, central Wales, Unpublished PhD Thesis, Department of Geography, University of Reading, Reading. UK.

Knill, J., (1993), Geographical Information Systems: the environmental view. In

book: Geographical Information Handling-Research and Applications. Paul Mather (ed.), John Wiley and Sons, Chichester, UK, pp. 7-15.

Knisel, W.G., and Sheridan, J.M., (1983), Procedure for characterizing

hydrologic processes in the coastal plain of the southeastern United States. Proceedings of International Symposium of Hydrology of Large Flatlands: UNESCO-CONAPHI, Buenos Aires, Argentina, April 1983, Vol. 1, pp.195-210.

Knudsen, J., (1999), Java 2D Graphics. O'Reilly and Associates Inc., Newton,

MA. Kraak, M-J, and Driel, R. V., (1997), Principles of Hypermaps. Computers and

Geosciences 23(4), pp.457-464. Kraak, M-J, (1999), The Web, Maps and Society, In B. Gittings (Ed.),

Innovations in GIS 6, Integrating Information infrastructures with GIS Technology, Taylor and Francis Ltd., London, UK., pp.67-77.

Krajewski, W. F., and Georgakakos, K. P., (1989), The use of remotely sensed

rainfall information in flood forecasting. Proceedings of Pacific International Seminar on Water Resources Systems.

Kramer, R., (1997), Database on the Web: Technologies for Federation

Architectures and Case Studies. Proceedings of the ACM SIGMOD International Conference on Management of Data, 1997, pp.503-506.

Kramer, D., (1996), The Java Platform; A White Paper. Sun Microsystems, Inc.,

ftp://ftp.javasoft.com/docs/papers/JavaPlatform.pdf .(Accessed Jun 2001). Krutsch, K. F., Cargo, D. S., and Howlett, V., (2001), Professional Java Custom

UI Components. Wrox Press Inc. Chicago, IL Kuhn, W., Willauer, L., Mark, D. M., and Frank, A. U., (1992), User Interfaces

for GIS: discussion at the specialist meeting. Report on the Specialist Meeting, NCGIA Research Initiative 13,. NCGIA Report 92/3. National Center for Geographic Information and Analysis, University of California at Santa Barbara. June 1992, Santa Barbara, CA, pp.22-26.

Page 306: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 296 -

Kutschera, P., Schimak, G., Humer, H., (1996), Environmental Information for Public Access, In: Environmental Software Systems R. Denzer, D. Russell, and G. Schimak (eds.) Chapman and Hall, London, UK.

Kwadijk, J. C. J., (1993), The Impact of Climate Change on the Discharge of the

River Rhine. PhD thesis, University of Utrecht, Netherlands. Lais, Sami. (2000), Putting Data On the Map. Computerworld, October, 9, 2000,

p.82 Lammers, R. B., and Band, L. E., (1990), Automating Object Representation of

Drainage Basins, Computer and Geosciences, 16(6). Laplante, P., Halang, W., A., (1995), Real Time Programming. Laplante. P.,

(Ed.). Proceedings of the 20th IFAC/IFIP Annual Workshop on Real Time Programming (WRTP '95). 6-10 November 1995. Florida.

Larson, R., (1996), Geographic Information Retrieval and Spatial Browsing.

Available online at: http://sherlock.berkeley.edu/geo_ir/PART1.html. (Accessed June 2002).

Latkovich, V. J., and Leavesley, G. H., (1993), Automated Data Acquisition And

Transmission. In D. Maidment (Ed.) Handbook of Hydrology, McGraw Hill. Laurini, R., (2001), Information Systems for Urban Planning: a hypermedia

cooperative approach. Taylor and Francis. London, UK. Lauritsen K., (2000), Web-Based GIS Brings Intelligent Data to the Desktop.

Public Works, April, 2000, 131 (4), p.35. Lee, R., (2001), Java Versus ActiveX: The marketing war is on, but which offers

the better technology? Sun World, Available online at: http://sunsite.uakom.sk/sunworldonline/swol-09-1996/swol-09-activex.html . (Accessed Jul 2002).

Lemay, L. and Perkins, C., (1997), Teach Yourself Java 1.1 in 21 Days.

Indianapolis, Sams.net. Lerdorf, R., and Tatroe, K., (2000), Programming PHP. O'Reilly and Associates

Inc., Sebastopol, CA. Li, C., S., Kitmitto, K., and Cole, K., (1995), Developing a WWW Interface to

Arc/Info. Proceeding of ESRI’95 (UK) user conference, Nottingham University, September 14-15, Nottingham, UK.

Page 307: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 297 -

Li, C., Bree, D., Moss, A., and Petch, J., (1996), Developing Internet-based User Interfaces for Improving Spatial Data Access and Usability. Proceedings of the 3rd International Conference/Workshop on Integrating Geographic Information Systems and Environmental Modelling, Santa Fe, NM. Available online at: http://www.ncgia.ucsb.edu/conf/SANTA_FE_CDROM/sf_papers/li_chunsheng/santa_fe.html. (Accessed Jun 2002).

Liebhold A. M, Rossi R. E, Kemp W. P., (1993), Geostatistics and Geographic

Information Systems in Applied Insect Ecology. Annual Review of Entomology, 38, pp. 303-327

Limp, W. F., (1997), Weave Maps Across The Web. GIS World. September

1997. GIS World Inc. Limp, W., Fredrick, (1999), Mapping Hits Warp Speed on the World Wide Web!

GISWorld, September 1999. Available online at: http://www.geoplace.com/gw/1999/0999/999tec.asp.

Limp, F. (2000), R-E-S-P-E-C-T. A review of raster GIS systems. GeoEurope,

June 2000. Available online at: http://www.geoplace.com/ge/2000/0600/0600rs.asp. (Accessed Aug 2001).

Lin, H., Zhang, L, (1997), A Web-based GIS Catalog Browser for Distributed

Spatial Data Retrieving. Eleventh Annual Symposium on Geographic Information Systems (1997). Proceedings of Integrating Spatial Information Technologies for Tomorrow. GIS World Inc., Vancouver, Canada.

Loaiciga, H. A., Charbeneau, R. J., Everett, L. G., Fogg, G. E., Hobbs, B. F.,

and Rouhani, S., (1992), Review of Groundwater Quality Monitoring Network Design, Journal of Hydraulic Engineering, ASCE, 118(1), pp.11-37.

Luo, L. Q., and Jones, C., (1995), A Deductive Database Model for GIS, in

Innovations in GIS, P. Fisher, (ed.), Taylor and Francis, London, UK. Lyon, D., (1995), Using Stochastic Petri Nets for Real-time Nth-order Stochastic

Composition, Computer Music Journal, Winter, 19(4), pp.13-22. Lyon, D., (1999), Image Processing in Java. Prentice-Hall, Inc., Upper Saddle

River, NJ. MacEachren , A. M., and Dibiase, D., (1991), Animated Maps of Aggregate

Data: Conceptual and Practical Problems. Cartography and Geographic Information Systems.18(4), pp. 221-229.

Page 308: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 298 -

Maguire D J., (1991), An Overview and Definition of GIS. In Maguire D J, Goodchild M F, Rhind D W (eds.) Geographical Information Systems: Principles and Applications. Longman, London, UK, Vol. 1, pp.9-20.

Maguire D J., and Dangermond, J., (1994), Future GIS Technology in D. Green

and D. Rix (eds.) The AGI Source Book for Geographic Information Systems 1995, Association for Geographic Information, London, UK.

Maguire, D.J. and Dangermond, J. (1991): The Functionality of GIS - In:

Geographical Information Systems: Principles and Applications, Maguire, D.J., Goodchild, M.F., and Rhind, D.W. (eds.), Vol. 1, Longman, Harlow, pp. 319-335.

Maidment, D. R., (1993), GIS and Hydrological Modeling. In Goodchild, M. F.,

Parks, B., and Steyaert, L., (Eds.), Environmental Modeling with GIS, pp. 147-167, Oxford University Press. New York, NY.

Maidment, D. R., (1996), Environmental Modelling within GIS. In Goodchild, M.

and Steyaert, L., (eds.), GIS and Environmental Modelling, pp. 315-323, Oxford University Press., New York, NY.

Mailhot, A., Rousseau, A., and Massicotte, S., (1997), A Watershed-Based

System for the Integrated Management of Surface Water Quality: The GIBSI System. Water Science Technology, Elsevier Science Ltd., 36(5), pp. 381-387.

Males R., M. and Grayman, W., M., (1992), Past, Present and Future of GIS in

Water Resources, Update Water Resource Issues, No. 87, The Universities Council on Water Resources, pp. 5-11.

MapObject, (2003), Available online at:

http://www.esri.com/base/products/Internetmaps/Internetmaps.html. Marble, D., and Peuquet, D., (1983), Geographic Information Systems and

Remote Sensing. In R. Colwell (ed.) Manual of Remote Sensing 1, pp.923-958.

Mark, D M. and Frank, A. U., (1992), User Interfaces for Geographic Information

Systems: Report On The Specialist Meeting. National Center for Geographic Information and Analysis NCGIA Report 92-3.

Marks, D., Dozier, J., and Frew, J., (1984), Automated Basin Delineation from

Digital Elevation Data, GeoProcessing, 2, pp. 299–311.

Page 309: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 299 -

Marshall, R. J., (1991), A Review of Methods for the Statistical Analysis of Spatial Patterns of Diseases. Journal of the Royal Statistical Society, Series A, 154. pp.421-441.

Martin, D., (1996), Geographic Information Systems: Socioeconomic

applications. Routledge, London, UK. Martz, L. W., and Garbrecht, J., (1992), Numerical Definition of Drainage

Network and Subcatchment Areas From Digital Elevation Models, Computer and Geosciences, 18(6), pp.747–761.

Mattarelli, M., Boehner, C., and Peckham, R., J., (1998), Web access to

Earthquake Catalogues. Proceedings of the Earth Observation and Geo-Spatial Web and Internet Workshop’ 98, Salzburger, Geographische Materialien Vol. 27. Instituts fur Geographie der Universitat Salzburg, Austria.

McCauley, J. D., Navulur, K. C. S., Bernard A. Engel, B. A., and Srinivasan, R.,

(1996), Serving GIS Data Through the World Wide Web. Proceedings of the Third International Conference Integrating GIS and Environmental Modeling, Santa Fe, NM, 23-25 January, 1996, WWW and CD. Available online at: http://pasture.ecn.purdue.edu/~engelb/ncgia96/engel.html, (Accessed July, 2002).

McCormicK, J., (1995), The Global Environment Movement. John Wiley.

Chichester, UK. McDonald, M. G., and Harbaugh, A. W., (1988), Amodular 3-dimensional Finite

Difference Groundwater Flow Model. Techniques of water resource investigations of the USGS, Book 6, Chapter A-1. Reston, CA.

McIlhagga, D., 1997, Optimal path delineation to multiple targets incorporating

fixed cost distance. Unpublished, Honours Thesis for Bachelor of Arts, Carleton University.

Microsoft Dictionary, (1997), Computer Dictionary. Third Edition. Microsoft

Press. Microsoft Corporation, (1999), How to Write and Use ActiveX Controls for

Microsoft Windows CE 2.1; A White Paper. http://msdn.microsoft.com/library/techart/activexce.htm.

Milne, P., Milton, S. and Smith, J.L., (1993), Geographical Object-oriented

Databases-a Case Study. International Journal of Geographical Information Systems, Taylor and Francis. London, UK, 7(1), pp.39-55.

Page 310: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 300 -

Mimikou, M. A., and Baltas, E. A., (1996), Flood Forecasting Based on Radar Rainfall Measurements. Journal of Water Resources Planning and Management, ASCE, May/June, 1996, 122(3).

MMS manual, (1998), The Modular Modelling System (MMS): User’s Manual.

Available online at: http://wwwbrr.cr.usgs.gov/projects/SW_precip_runoff/mms/. (Accessed Jul 2001).

Monnier, J-P., (1998a), Java Empowers the Geo-engineering Continuum.

Proceeding of GIS/RT’98, Pathways to Knowledge Integration, GIS World Inc., April 6-9, 1998, Toronto, Canada pp.324-327.

Monnier, J-P., (1998b), Java All Over the Map. Microstation World. A Bentley

Publication Second Quarter 1998. Bentley Systems Inc., 4(2), Exton, PA. Moore, I. D., (1996), Hydrological Modelling and GIS. In M. F. Goodchild, B.O.

Parks, and L. T. Steyaert (eds.). GIS and Environmental Modeling: Progress and research issues, GIS World Books, pp.143-148, Fort Collins, CO.

Moore, I. D., Turner, A. K., Wilson, J. P., Jenson, S. K. and Band, L., (1993),

GIS and Land Surface–subsurface Process Modeling, in book: Goodchild, M. F., Parks, B., and Steyaert, L., (Eds.), Environmental Modelling with GIS, pp. 196-230, Oxford University Press. New York, NY.

Morgan, Stanley, (2000), Morgan Stanley Witter Research. http://www.msdw.com/search/index.html. (Accessed Jan, 2000) Morris, E. M., (1980), Frequency Flood Flows in Grassy and Forested Basins

Using a Deterministic Distributed Mathematical Model. IAHS Publication 29, pp.247-265.

Morris, D. G., and Heerdegen, R. G., (1988), Automatically Derived Catchment

Boundaries and Channel Networks and Their Hydrological Applications, Geomorphology, 1, pp.131–141.

Morrison, J L., (1991), The Organizational Home for GIS in the Scientific

Professional Community. In: D. Maguire, M. Goodchild and D. Rhind (eds.), Geographical Information Systems: Principles and Applications. Longman Scientific and Technical. John Wiley and Sons Inc., New York, NY, pp.91-100.

Morten, S., and Vefsnmo, S., (1997), An Object Oriented Framework for

Creating Models in Hydrology. ACM SIGPLAN Notices, February 1997.

Page 311: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 301 -

Musella, D., and Padula, M., (1997), Step by Step Toward the Global Internet Library. IEEE Communications Magazine, 35(5), pp.64-70.

NCGIA, (1992), National Center for Geographic Information and Analysis:

Publication List. International Journal of Geographical Information Systems, Taylor and Francis, London, UK, 6, 1. pp.47-52

NCGIA (1995), Collaborative Spatial Decision-Making, Scientific Report for the

Intiative-17, Specialist Meeting. September 16-19, Santa Barbara CA. Available online at: http://www.ncgia.ucsb.edu/research/i17/spec_report.html#RTFToC1. (Accessed Jun 2001).

NCGIA (1996), GIS and society: The Social Implications of How People, Space,

and Environment are represented in GIS. Scientific Report for the Intiative-19 Specialist Meeting. Available online at: http://www.geo.wvu.edu/i19/description/paper.html. (Accessed Mar 2001).

Nelson, E. J., Jones, N. L., and Miller, A. W., (1994), An algorithm for Precise

Drainage Basin Delineation, Journal of Hydraulic Engineering, ASCE, March, 1994, pp.298-312.

Nelson, E. J., Jones, N.L., and Jorgeson, J. D., (1995), A Comprehensive

Environment for Watershed Modeling and Hydrological Analysis, Water Resources Engineering. Proceedings of the first International Conference, American Society of Civil Engineers, August14-18, 1995, San Antonio, TX, pp. 829-833.

Newson, M. D., (1976a), The physiography, deposits and vegetation of the

Plynlimon catchments, Institute of Hydrology, Wallingford, Oxon. Report No. 30.

Newson, A. J., (1976b), Some Aspect of the Rainfall of Plynlimon, Mid-Wales.

Natural Environment Research Council Institute of Hydrology. Institute of Hydrology. Crowmarsh Gifford, Wallingford, Oxon, March 1976, Report No. 34.

Newson, M. D., and Harrison, J. G., (1978), Channel Studies in the Plynlimon

Experimental Catchments. Institute of Hydrology. Wallingford Oxon, February 1978, Report No. 47.

Neves, N., Silva, J. P., Goncalves, P., Muchaxo, J., Silva, J. M., and Camara, A.

(1997), Cognitive Spaces and Mataphors: A Solution for Interacting with Spatial Data. Computers and Geosciences, 23(4), pp.483-488.

Page 312: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 302 -

Newton, A., Gittings, B., and Stuart, N., (1997), Designing a Scientific Database Query Server Using the World Wide Web: The example of Tephrabase. In Z. Kemp (Ed.), Innovations in GIS 4, Fourth National Conference on GIS research UK (GISRUK), Taylor and Francis Ltd., London, UK, pp.251-266.

Nielsen, J., and Mack, R., (1994), Usability Inspection Methods, Wiley, 1994. Nielsen, J., Available online at: http://www.useit.com/alertbox, March 2000. NGDC, (2003), National Geographic Data Clearinghouse. Available online at:

http://geoserver2.wr.usgs.gov/servlet/FGDCServlet. Nilsson, N. J., (1980), Principles of Artificial Intelligence, Tioga Publishing Co.

Palo Alto, CA. NOAA (National Oceanic and Atmospheric Administration), (1994), Natural

Disaster Survey Report: The Great Flood of 1993, U.S. Department of Commerce, Silver Spring, MD.

OGC (Open GIS Consortium), (1994), Available online at:

http://www.opengis.org/index.htm. Nyerges, T., (1993), Understanding the Scope of GIS: Is relationship to

environmental modeling. In Environmental Modelling with GIS, M.F. Goodchild, B. O. Parks, and Steyaert (Eds.), Oxford University Press, New York, NY, pp.75-93.

Pandey, S., Gunn, R., Lim, K. J., Engel, B., and Harbor, J., (2000), Developing

a Web-enabled Tool to Assess Long-term Hydrologic Impacts of Land-use Change: Information Technology Issues and a Case Study. Urban and Regional Information Systems Association (URISA), Fall 2000, 12(4).

Papastavrou, S., Chrysanthis, P., Samaras, G., and Pitoura, E., (2000), An

Evaluation of the Java-Based Approaches to Web Database Access. Lecture Notes in Computer Science. Issue 1901. pp.102-113.

Parker, D. J., Fordham, M. H., Tunstall, S. M., and Ketteridge, A. (1995), Flood

Warning Systems Under Stress in the United Kingdom, Disaster Prevention and Management, 1995, 4(3), pp.32-42.

Parson, S., (1999), Development of an Internet Watershed Educational Tool

(Internet) for the Spring Creek Watershed of Central Pennsylvania. A PhD. Thesis in Agricultural and Biological Engineering. The Pennsylvania State University. The Graduate School College of Engineering.

Page 313: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 303 -

Peng, Z-R. (1997). An Assessment of the Development of Internet GIS. 1997 ESRI International User Conference. Esri Inc., Available online at: http://www.gisdevelopment.net/aars/acrs/2000/ts7/gdi012.shtml.

(Accessed April 2001) Pettyjohn, W.A., and Henning, R., (1979), Preliminary estimate of ground-water

recharge rates, related streamflow and water quality in Ohio: Columbus, Ohio, Ohio State University Water Resources Center, Project Completion Report 552, p.323.

Peuquet, D., Davis, J. R., and Cuddy, S., (1993), Geographic Information

Systems and Environmental Modelling In Modelling Change in Environmental Systems. A. J. Jakeman, M. B. Beck and M. J. McAleer, (eds.), John Wiley and Sons Ltd., New York, NY, pp.543-556.

Pickles, J., (1995), Ground Truth: the social implications of Geographical

Information Systems. Guilford Press, New York, NY. Plutchak, J., S. Hall, D. Wojtowicz, M. K. Ramamurthy, R. B. Wilhelmson,

(1998), Java on the World Wide Web and Beyond, Preprints, 14th International Conference on IIPS for Meteorology, Oceanography, and Hydrology, American Meteorological Society. Phoenix, AZ. Available online at: http://ww2010.atmos.uiuc.edu/(Gh)/abt/pubsdir/ams98/preprint_jpp_j/ams98preprint_jpp_j.html (accessed Jun 2002).

Princeton Economic Research Inc., (1998), Environmental Data and

Information: Interim Findings from the EPA Customer Survey (Phase III Report), Washington, DC.

Prusher, I. R., (2000), Better warnings on the Mekong. Christian Science

Monitor, 93(2), November 2000, p.6. Oaks S., and Wong, H., (1999), Java Threads, O’Reilly and Associates Inc.,

Sebastopol, CA. Obled, Ch., Wendling, J., and Beven, K., (1994), The Sensitivity of Hydrological

Models to Spatial Rainfall Patterns: an Evaluation Using Observed Data. Journal of hydrology, No.159, pp.305-333.

O’Callaghan, J. F., and Mark, D. M., (1984), The extraction of drainage

networks from digital elevation data, Computer Vision, Graphics and Image Processing, 28, pp.323–344.

Page 314: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 304 -

Okabe, A., Boots, B., and Sugihara, K., (1992), Spatial Tesselations: Concepts and Applications of Voronoi Diagrams. Wiley Series in Probability and Mathematical Statistics. John Wiley and Sons. Chichester. UK.

Open GIS Consortium, (2001), Open GIS Consortium, Inc. Available at:

http://www.opengis.org/index.htm. (Accessed Aug 2001). Openshaw, S., Turton, I., Macgill, J., and Davy, J., (1999), Putting the

Geographical Analysis Machine on the Internet. In B. Gittings (Ed.), Innovations in GIS 6, Integrating Information infrastructures with GIS Technology, Taylor and Francis Ltd., London, UK, pp.121-130.

Oracle, (1999), Oracle Application Server Technical Document, 1999. Available

online at: http://technet.oracle.com. (Accessed Mar 2001). Orfali, R., Harkey, D., and Edwards, J., (1996), The Essential Client-server

Survival Guide. John Wiley and Sons, Canada. Orfali, R., Harkey, D., and Edwards, J., (1997), Instant CORBA. John Wiley and

Sons, Ltd, New York, NY. Oxley, T., Winder, N., McIntosh, B., Mulligan, M., and Engelen, G., (2002),

Integrated Modelling and Decision Support Tools: A Mediterranean example. Proceedings of iEMSs (International Environmental Modelling and Software Society). Integrated Assessment and Decision Support, Lugano, Switzerland.

Peng, Z.-R., (1997), An Assessment of the Development of Internet GIS. 1997.

International ESRI User Conference, ESRI Inc. Pilling, C., Wilby, R. L., and Jones, J. A. A., (1998), Downscaling of Catchment

Hydrometeorology from GCM Output Using Airflow Indices: Upper Wye catchment, Plynlimon, upland Wales. In: Wheater, H. and Kirby, C. (Eds.), Global Hydrological Processes: Ecological and Hydrological Interactions, John Wiley and Sons Ltd., Chichester, UK. pp.191–208.

Pilling,C. G., and Jones, J. A. A., (2002), The Impact of Future Climate Change

on Seasonal Discharge, hydrological processes and extreme flows in the Upper Wye experimental catchment, Mid-Wales. J A A Jones, M-K Woo, (Eds.) Hydrological Processes, 16(6), 2002. John Wiley and Sons Ltd.

Plewe, B., (1997), GIS online. OnWord, Santa Fe, NM. Qin, T., (1997), Component Software and Internet GIS, GIS/LIS, November,

1997, Cincinnati, OH.

Page 315: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 305 -

Quinn, P., K. Beven, P. Chevalier, and Planchon, O., (1991), The Prediction of Hillslope Flow Paths for Distributed Hydrological Modeling Using Digital Terrain Models, Hydrological Processes, 5, pp.59–79.

Quinn, P. F. and Beven, K. J., (1993), Spatial and Temporal Predictions of Soil

Moisture Dynamics, Runoff, Variable Source Areas and Evapotranspiration for Plynlimon, Mid-Wales, Hydrological Processes, 7, pp. 425-448.

Raper, J. F., (1991), User Interface for GIS. In book: I., Masser, and M.,

Blackemore, (eds.). Geographic Information Management: Methodology and applications. Longman, Harlow. UK.

Raper, J. and Bundock, M., (1993), Development of a Generic Spatial

Language Interface for GIS. In book: Geographical Information Handling-Research and Applications. Paul Mather (ed.), John Wiley and Sons, Chichester, UK, pp.113-143.

Raper, J., and Livingstone, D., (1993), High Level Coupling of GIS and

Environmental Process Modeling. Second International Conference/Workshop on integrating geographic Information Systems and environmental Modeling. September 1993. Breckenridge,

Raper, J., and Livingstone, D., (1995), Development of a Geomorphological

Spatial Model Using Object-oriented Design. International Journal of Geographical Information Systems, Taylor and Francis. London, UK, 9, pp.359-385.

Ratcliffe, D. A., (1968), An Ecological Account of Atlantic Bryophytes in the

British Isles, New Phytol., 67, pp.365-439. Resse, G., (1997), Database programming with JDBC and JAVA, O'Reilly and

Associates Inc., Sebastopol, CA. Richard, D., (2000), Development of an Internet Atlas of Switzerland,

Computers and Geosciences, 26 (2000) pp.45-50. Rieks, P., (1999), The Spatial Internet Platform: from Concept to Reality,

Location-based analysis, Web-based solutions. The new revolution in business intelligence. Proceedings of AGI Conference. September, 28– 30,1999, London, UK.

Rhind, D., (1977), Computer-aided Cartography. Transactions of the Institute of

British Geographers NS 2, 1, pp.71-97.

Page 316: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 306 -

Rhind, D., (1988), Personality as a Factor in the Development of a New Discipline: the case of computer-assisted cartography. The American Cartographer, 15(3) pp.277-289.

Rhind, D., (1998), The Incubation of GIS in Europe. The History of Geographic

Information Systems: Perspectives from the Pioneers. Timothy W. Foresman, Ed. Prentice Hall, Upper Saddle River, NJ, pp.293-306.

Rhyne, T-M., and Fowler, T., (1996), Examining Dynamically Linked

Geographic Visualization. Proceedings of the 1996 Computing in Environmental Resource Management Speciality Conference, Air, Waste and Management Association (AWMA) NC, pp.571-573.

Rhyne, T. M., (1997), Going Virtual with Geographic Information and Scientific

Visualization. Computers and Geosciences, 23(4), pp.489-491. Rhyne, T-M., (1999), A Commentary on GeoVRML: a tool for 3D representation

of georeferenced data on the Web, International Journal of Geographical Information Science, Taylor and Francis. London, UK, 13(4), pp.439-443.

Ricart, M. A., (1996), Apache Server.Survival Guide. Sams.Net Publishing, IN. Rodda, J. C., (1971), Progress on Plynlimon - Problems of Investigating the

Effect of Land use on the Hydrological Cycle. Paper to Section K (Forestry) of the British Association for the Advancement of Science, Annual meeting, Swansea, UK.

Rodrigues, L. H., (2001), Building Imaging Applications with Java Technology:

Using AWT Imaging, Java 2D and Java Advanced Imaging (JAI). Addison-Wesley Longman, Boston, MA.

Roelofs, G., (1999), PNG: The Definitive Guide. O'Reilly and Associates Inc.,

Sebastopol, CA. Romanowicz, R., Beven, K., and Moore, R., (1993), GIS and Distributed

Hydrological Models. In book: P. Mather (Ed.) Geographical Information Handling-Research and Applications. John Wiley and Sons, Chichester, UK, pp. 195-205.

Rouhani, S., Georgakakos, A. P., Kitanidis, P. K., Loaiciga, H. A., Olea, R. A.

and Yates, S. R., (1990a), Geostatistics in Geohydrology, Part I. Basic Concepts, Journal of Hydraulic Engineering, ASCE, 116(5), pp.612-632.

Page 317: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 307 -

Rouhani, S., Georgakakos, A. P., Kitanidis, P. K., Loaiciga, H. A., Olea, R. A. and Yates, S. R., (1990b), Geostatistics in Geohydrology: Part II. Applications, Journal of Hydraulic Engineering, ASCE, 116(5), pp.633-658.

Rowan, J. S., and Walling, D. E., (1992), The Transport and Fluvial

Redistribution of Chernobyl-derived Radiocaesium within the River Wye basin, UK. Sci. Total Environ., 121, pp.109-131.

Rubin, E. J., Dietz, R., Chanat, J., Speir, C., Dymond, R., Lohani, V., Kibler, D.,

Bosch, D., Shaffer, C. A., Ramakrishnan, N., Watson, L. T., (2001), From Landscapes to Waterscapes: A PSE for Landuse Change Analysis. Proceedings of Integrated Decision-Making for Watershed Management Symposium, January 7-9, 2001, Chevy Chase, MD.

Rutledge, A.T., (1993), Computer programs for describing the recession of

ground-water discharge and for estimating mean ground-water recharge and discharge from streamflow records: U.S. Geological Survey Water-Resources Investigations Report 93-4121, p.45.

Sadagopan, G. D., (2000), Web-Based Geographic Information Systems: Public

Participation in Virtual Decision Making Environments. Master Thesis in Urban and Regional Planning. Virginia Polytechnic Institute and State University.

Schee, L.H. van der and Jense, G.J., (1995), Interacting with geographical

information in a virtual environment. Proceedings of JEC-GIS, The Hague, Vol. 1, pp.151-157.

Schultz, G. A., (1993), Application of GIS and Remote Sensing in Hydrology

and Water Resources, 1993. IAHS Publication, Vienna, Austria, No. 211, pp.127-140.

Schwartz, R., Olson, E., and Christiansen, T., (1997), Learning Perl on Win32

Systems. O’Reilly and Associates Inc., Sebastopol, CA. See, L. and Abrahart, R.J., (1999), Multi-Model Data Fusion for Hydrological

Forecasting. The Fourth International Conference on GeoComputation, 25-28 July 1999, Fredericksburg VA.

See L., Abrahart, R. J., and Openshaw, S., (1998), An Integrated Neuro-Fuzzy-

Statistical Approach to Hydrological Modelling. The Third International Conference on GeoComputation, 17-19 September 1998, Bristol, UK.

Page 318: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 308 -

Seminerio, M., (1997), Microsoft Debuts Security Program to Address ActiveX Issues, PC WEEK Magazine. Available online at: http://www.zdnet.com/eweek/news/0217/19emsoft.html. (Accessed June 2000).

Shiffer, M. J. (1992), Towards a Collaborative Planning System. Environment

and Planning B: Planning and Design, 19, pp.709-722. Shiffer, M. J., (1999), Managing public discourse: towards the augmentation of

GIS with multimedia. In P. Longley, M. F. Goodchild, D. J. Maguire, and D. Rhind (Eds.), Geographical information systems. John Wiley, New York, NY, pp. 723-732.

Shirmohammadi, Adel, Knisel, W.G., and Sheridan, J. M., (1984), An

approximate method for partitioning daily streamflow data, Journal of Hydrology, Vol. 74, pp. 335-354.

Simonovic, S.P., and Bender, M. J., (1996), Collaborative planning-support

system: an approach for determining evaluation criteria, Journal of Hydrology. Vol. 177, pp.237-251.

Singh, V. P., (1995), Watershed Modeling, Computer Models of Watershed

Hydrology, Vijay P. Singh (Eds.), Water Resources Publications, Highlands Ranch, CO.

SIS, (2003), Available online at:

http://www.servertec.com/products/products.html. Skidmore, A., N., (1989), A comparison of Techniques for Calculating Gradient

and Aspect from a Gridded Digital Elevation Model. International Journal of Geographical Information Systems, 3, pp.323-334.

Sloto, R.A. and Crouse, M.Y., (1996), HYSEP: A computer program for

streamflow hydrograph separation and analysis: U.S. Geological Survey Water-Resources Investigations Report 96-4040, p.46.

Snyder, F.F., (1939), A conception of runoff-phenomena. Transactions of

American Geophysical Union, No. 20, pp.725-738. Spencer, B., (2000), Mobile GIS, Geo Solutions, Geo Asia Pacific, Adams

Business Media, Available on line at: http://www.geoplace.com/asiapac/2000/0700/0700sol.asp. (Accessed May 2002).

Page 319: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 309 -

Srinivasan, S., (1997), Advanced Perl Programming. O’Reilly and Associates Inc., Sebastopol, CA.

Stewart, K. G. (1999a,) Managing and distributing real-time and archived

hydrological data for the Urban Drainage and Flood Control District’s ALERT system. Proceedings of the26th annual water resources planning and management conference, American Society of Civil Engineers, June 6-9, 1999, Tempe, AZ.

Strom, D., (1999), More on ActiveX Versus Java Security; Are You Secure?

Web Developer Magazine. Available online at: http://webdeveloper.com/security/security_java_activex.html. (Accessed Feb 2002).

Stuart, N., and Stocks, C., (1993), Hydrological modeling within GIS: An

integrated approach. Application of Geographic Information Systems in hydrology and water resources. IAHS publication no. 211, Velp, Netherlands, pp.319-329.

Stynes, K., J. Wood, J. Dykes, P. Fisher, and D. Unwin (1996), Publishing

Cartography on the Web, Working Paper, International Cartographic Association Commission on Visualization. Available online at: http://www.geog.le.ac.uk/argus/ICA/K.Stynes/. (Accessed Jul 2001).

Sui, D. Z., and Maggio, R. C., (1999), Integrating GIS with Hydrological

Modeling: practices, problems, and prospects. Computers, Environment and Urban Systems, 23(1999) pp.33-51.

Sun Microsystems Inc., (1998), Java Servlet Development Kit (Version 2.0).

Sun Microsystems, Inc. Sun, (2000), Java Advanced Imaging API

DATASHEET. 2002 Sun Microsystems, Inc. Available online at: http://java.sun.com/products/java-media/jai/collateral/datasheet.html. (accessed Jun 2002).

Sun documentation, (2002), JDK 1.1 New Feature Summary, Sun

Microsystems, Inc available online at: http://java.sun.com/products/jdk/1.1/docs/relnotes/features.html. (accessed Jun 2002).

Tao, C., V., (2000), Development of Web based GIServices. Proceedings of

GIS 2000 conference (CD-ROM), GIS World Inc., March 13-16, 2000, Toronto, Canada.

Page 320: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 310 -

Tarboton, D. G., Bras, R. J., and Rodriguez-Iturbe, I., (1991), On the Extraction of Channel Networks from Digital Elevation Data, Hydrological Processes, 5(1), pp.81–100.

Taylor, K., Ackland, R., Walker, G., and Jackson, D., (1997), WWW Delivery of

Spatio-teporal Modeling Result for Watershed Management: A case study. In: A.D. McDonald and M. McAleer, (eds.), MODSIM 97, International congress on Modelling and simulation. Proceedings, December, 8-11, 1997, pp.1574-1579.

Taylor, K., Cameron, M., and Haines, J., (1998), An Integrated Information

System on the Web for Catchment Management, ACM GIS’98, November 1998, Washington, D.C.

The PHP Manual, (2000), PHP Manual On-line. http://www.php.net/docs.php. Thomas, B., (1998), The GeoNet Project - A Web Based 4D GIS. Proceedings

of the Earth Observation and Geo-Spatial Web and Internet Workshop’ 98, Salzburger, Geographische Materialien Vol. 27. Instituts fur Geographie der Universitat Salzburg, Austria.

Todini E., Di Bacco M., (1995), A Bayesian Approach to Rainfall Modelling,

Proc. Statistical and Bayesian methods in Hydrological Sciences, An International Conference in honour of Jaques Bernier –UNESCO.

Todini, E., (1998), Real Time Flood Forecasting: Problems, possibilities and

proposed solutions. International Conference on Early Warning Systems for Natural Disaster Reduction. German Committee for the IDNDR. September, 8, 1998. Potsdam, Germany.

Tomlin, C.D., (1990), Geographic Information Systems and Cartographic

Modelling, Prentice Hall, NJ. Tomlinson, R. F., Calkins, H. W. and Marble, D. F., (1976), Computer Handling

of Geographical Data. UNISCO Press, Paris, France. Tomlinson, R F., (1985), Geographic Information Systems- the new frontier. The

Operational Geographer, 5, pp.31-6. TOPMODEL Manual, (2001), Available online at:

http://www.es.lancs.ac.uk/hfdg/topmodel.html. Traister, R., (1993), Mastering C Pointers: Tools for Programming Power. Book

News, Inc., OR.

Page 321: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 311 -

Travis, M.R., Elsner, G.H., Iverson, W.D. and Johnson, C.G., (1975), VIEWIT: Computation of seen areas, slope and aspect for land-use planning. U.S. Department of Agriculture Forest Service General Technical Report PSW 11/1975. Pacific Southwest Forest and Range Experimental Station, Berkley, CA.

Tu, S., Xu, L., Abdelgurerfi, M., and Ratcliff, J., (2002), Achieving

Interoperability for Integration of Heterogeneous COTS Geographic Information Systems, Proceedings of the 10th ACM International Symposium on Advances in Geographical Information Systems ( ACMGIS 2002), McLean, VA, pp. 162-167, November 2002.

UN/ECE (1998), Convention on Access to Information, Public Participation in

Decision-Making and Access to Justice in Environmental Matters, Aarhus, ECE Committee on Environmental Policy.

Unland, R., Schlageter, G., (1989), An Object-oriented programming

environment for advanced database applications. Journal of Object Oriented Programming, May/June, 7-19.

Unwin, A., Wills, G. and Haslett, J., (1990), REGARD - Graphical Analysis of

Regional Data. Proceedings of ASA of the Section on Statistical Graphics, American Statistical Association, Alexandria, VA, pp.36--41.

Unwin, A. and Wills, G. (1998), Exploring Time Series Graphically, Statistical

Computing and Graphics Newsletter, (2), pp.13-15. Upton, G., and Fingleton, B., (1985), Spatial Data Analysis by Example: Vol. 1:

Point Pattern and Quantitative Data, Wiley, Chichester, UK, Chapter 4. USGS. (1999), USGS-Water Resources of the United States. Available online

at: http://water.usgs.gov/. USGSb. (1999), USGS-Water Resources of the United States. Available online

at: http://edcwww.cr.usgs.gov/glis/hyper/guide/1_dgr_demfig/states.html. Van Deursen, W. P. A., (1995), Geographical Information Systems and

Dynamic Models, Development and application of a prototype spatial modellinglanguage. Dissertation, Utrecht, Netherlands.

Van Deursen, W. P. A. and Kwadijk, J.C.J., (1993), RHINEFLOW: an integrated

GIS water balance model for the river Rhine. In Application of Geographic Information, Systems in Hydrology and Water Resources Management HydroGIS 1993. IAHS publication No 211, Kovar, K., and Nachtnebel, H. P. (Eds.).

Page 322: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 312 -

Van Kreveld, M., (1994), On quality paths on polyhedral terrains, in Nievergelt, J., Ross, T., Schek, H.-J and Widmayer, P. (Eds) IGIS’94: Geographic Information Systems. Lecture Notes in Computer Science, No. 884, Springer-Verlag, Berlin, Germany, pp.113-122.

Vehviläinen, B., and Huttunen, M., (2001), Hydrological Forecasting and Real

Time Monitoring in Finland: The watershed Simulation and Forecasting System (WSFS). Finnish Environment Institute, June 14, 2001.

Vehviläinen, B., (1999), Hydrological Forecasting and Real-time Monitoring: The

Watershed Simulation and Forecasting System (WSFS). In: Heinonen, P., Ziglio, G. and Van der Beken, A. (eds.). Hydrological and limnological aspects of lake monitoring. John Wiley and Sons Ltd., Chichester, pp.195-208.

Vanhelsuwe, L., Phillips, I., Hsu, G-T., Sankar, K., Ries, E., Rohaly, T., and

Zukowski, J., (1996), Mastering Java. SYBEX Inc., Alameda, CA. Venners B., (1999), Inside The Java Virtual Machine. McGraw-Hill Professional

Publishing. 2nd Edition. New York, NY. Vetter, R., (1999), Web-based Enterprise Computing, IEEE Computer 32(5),

pp.112-113. New York, NY. Voinov, A. and Costanza, R., (1999), Watershed Management and the Web,

Journal of Environmental Management.1999, 56, pp.231-245. Environmental Management , Springer-Verlag New York, Inc., New York, NY.

Voss, H., Andrienko, N., Andrienko, G., and Gatalsky, P., (2000), Web-based

Spatio-Temporal Presentation and Analysis of Thematic Maps Cities and Regions, Journal of SCORUS, the Standing Committee on Regional and Urban Statistics and Research, November 2000, pp.51-61.

W3C, The World Wide Web Consortium. Available online at: http://www.w3.org,

March 2000 . Wahl, K.L., and Wahl, T.L., (1995), Determining the Flow of Comal Springs at

New Braunfels, Texas: Texas Water ‘95, American Society of Civil Engineers, August 16-17, 1995, San Antonio, TX, pp. 77-86.

WAI, Web Content Accessibility Guidelines 1.0, Available online at:

http://www.w3.org/TR/1999/WAI-WEBCONTENT-19990505, 1999 Wall, L., Christiansen, T., and Orwant, J., (2000), Programming Perl, O'Reilly

and Associates, Inc. Sebastopol, CA.

Page 323: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 313 -

Walker, S., (1991), Keys to Successful Implementation of Computer Aided Decision Support Systems. Water Resources Management. Advances in Water Resources Technology, G. Tsakiris, Balkema. Rotterdam, pp.467-472.

Walker, C., (1998), New Ways to Make Data Pay: Knowledge Management

Technology Improves Analysis and Decision-making, PC Week, August 24, p.14.

Wallace, S., (1999), Programming Web Graphics: with Perl and GNU software.

Oreilly and Associates, Inc., Sebastopol, CA. Wang, L., (1997), Network-Oriented GIS: Integrating GIS with the Internet.

URISA, 1997 Annual Conference Proceedings, Toronto, Canada, July 20-24 1997, CD-Rom. Toronto, Canada.

Wanielista, M., Kersten, R., and Eaglin, R., (1997), Hydrology: Water Quantity

and Quality Control. Second Edition. John Wiley and Sons, Inc., New York, NY, p. 91.

Wesseling, C. G., Karssenberg, D., Burrough, P., and Van Deursen, W. P. A.,

(1996a), Integrating dynamic environmental models in GIS: The development of a Dynamic Modelling Language, Transactions in GIS. 1996, 1(1), pp. 40-48.

Wesseling, C., Van Deursen, W., and Burrough, P., (1996b), A spatial modelling

language that unifies dynamic environmental simulations in GIS. Proceedings of the First Joint European Conference and Exhibition on Geographical Information, The Hague, Netherlands, Vol. 1, pp. 368-373.

Williams, B., Rogers D., Staton G., Ripley B., Booth T., (1994), Statistical

Modelling of Georeferenced Data: Mapping Tsetse Distributions in Zimbabwe Using Climate and Vegetation Data. Perry B.D., Hansen J.W., (Eds.) Modelling Vector-borne and Other Parasitic Diseases. Nairobi, Kenya: The International Laboratory for Research on Animal Diseases. pp. 267-280.

Williamson, A. R., (1999), Java Servlet by Example. Manning Publications Co.,

Greenwich, CT. pp. 4-20. Wilson, J. P., (1996), GIS-based and Land Surface/subsurface Modeling: New

Potential for New Model? Third International Conference on GIS and Environmental Modeling, Santa Fe, NM, USA. Available online at: http://www.ncgia.ucsb.edu/conf/SANTA_FE_CDROM/sf_papers/wilson_john/wilson.html (Accessed Dec 2001).

Page 324: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 314 -

Wilson , J. D., (1998), Java Expected to Energize GIS. GIS World, Adams Business Media. August, 1998. Available Online at: http://www.geoplace.com/gw/1998/0898/898bwtch.asp. (Accessed May 2002).

WMS reference (1999), WMS Watershed Modeling System, reference manual,

Brigham Young University–Environmental Modeling, Research Laboratory. Wood, D., Gooch, T. C., Pronovost, P. M., and Noonan, D. C., (1985),

Development of a Flood Management Plan, Journal of Water Resources Planning and Management, 111(4).

Worboys, M. F., Mason, K. T., and Dawson, B. R. P., (1993). The Object-based

Paradigm for Geographical Database System: modeling, design and Implementation issues. Geographical Information Handling-Research and Applications. Paul Mather (ed.), John Wiley and Sons, Chichester, UK, pp. 91-102.

Worboys, M., (1995), GIS: A Computing Perspective. Taylor and Francis.

London, UK. Wu, A. W., Wang, H., and Wilkins, D., (2000), Performance Comparison of

Alternative Solutions For Web-To-Database Applications. Proceedings of the Southern Conference on Computing, The University of Southern Mississippi, October 26-28, 2000.

WWW (WWW Consortium), (1994), Available online at: http://www.w3.org. Yourdon, E., (1994), Object-oriented Systems Design: An Integrated Approach.

Yourdon Press, Englewood Cliffs, NJ. Yue-Hong, C., (1997), Exploring Spatial Analysis in Geographic Information

Systems, OnWord Press, Santa Fe, NM.1997, p. 474. Yun, S., and Kim, Y., (1999), The Internet GIS Infrastructure for Interoperability:

Map (Mapping Assistant Protocol). Proceedings: GeoSolutions: Integrating Our World, GIS’99, Thirteenth Annual Symposium on Geographic Information systems, March 1-4, 1999, Vancouver, Canada, pp.41-45.

Zaslavsky, I., (2000), A New Technology for Interactive Online Mapping with

Vector Markup and XML cartographic perspectives. Available online at: http://www.sdsc.edu/~zaslavsk/pubs/CP_37_zaslavsky.pdf.

Zevenbergen, L W., and Thorne, C., (1987), Quantitive Analysis of Land

Surface Topography. Earth Surface Processes and Landforms, 12, pp.47-56.

Page 325: APPROACHES TO DEVELOPING A WEB-BASED GIS MODELLING … · Waleed Al-Sabhan A Thesis Presented for the Degree of Doctor of Philosophy KING’S COLLEGE - UNIVERSITY OF LONDON March

- 315 -

Zhou, D., Schwan, K., Eisenhauer, G., Chen, Y., (2001), JECho - Interactive High Performance Computing with Java Event Channels. Proceedings of the 2001 International Parallel and Distributed Processing Symposium (IPDPS 2001), April 2001.

Zhu, Y., and Lu, K., (2000), Performance Analysis of Web Database Systems.

Lecture Notes in Computer Science. Issue 1873. pp.805-814. Zukowski, J., (1997), Java AWT Reference. O'Reilly and Associates, Inc.

Sebastopol, CA.