Component-Based GIS Architectures: GeoMedia and ...

1 downloads 0 Views 73KB Size Report
Since 1997, she is a graduate research assistant at the Institute for Geoinformatics, Uni- versity of Muenster. There she has particularly been working in projects ...
Component-Based GIS Architectures: GeoMedia and Oracle Spatial as an Example Catharina Riedemann & Werner Kuhn

Institute for Geoinformatics, University of Muenster, Robert-Koch-Str. 26-28 D-48194 Muenster, Germany {riedemann,kuhn}@ifgi.uni-muenster.de

Abstract We report results of a course module looking at the interaction between GeoMedia Professional and Oracle Spatial. Starting from what we learnt, we present the concept for a future course taking a more detailed look at the following issues of component-based GIS architectures: metadata/interoperability, functionality and processing, and user interface. Biographies Catharina Riedemann has studied Geography and has been working as a GIS developer and consultant. Since 1997, she is a graduate research assistant at the Institute for Geoinformatics, University of Muenster. There she has particularly been working in projects with state surveying and mapping authorities for building a data production environment and developing a reference model for a geospatial data infrastructure. She contributes her knowledge on data models, databases, and GIS clients to teaching, recently by introducing a new course on spatial databases. Currently, Catharina Riedemann is writing her PhD on data integration by web services. Dr. Werner Kuhn is a professor of Geoinformatics at the University of Muenster, Germany, where he teaches digital cartography, object-oriented modeling and programming, and research methods. His research activities are centered on the semantics of geographic information, with projects ranging from ontology-based semantic translators through the design of more meaningful 3d-interaction techniques to GIS design for transportation planning. He has been involved in setting up the European activities of the Open GIS Consortium, has advised OGC and ISO as well as state mapping agencies, and is an elected member of the Council of AGILE (Association of Geographic Information Laboratories in Europe) and international advisor to Canada’s GEOIDE Research Network.

1

Course Title: Component-Based GIS Architectures: GeoMedia and Oracle Spatial as an Example Contents 1 2 3 4 5 6

Background .............................................................................................................................. 2 Goals ........................................................................................................................................ 2 Approach.................................................................................................................................. 3 Required Knowledge/Skills ..................................................................................................... 3 Software ................................................................................................................................... 3 Concept .................................................................................................................................... 3 6.1 Introduction to Component-Based Architectures and Course Topics (Teacher)............. 3 6.2 Introduction to GeoMedia Professional and Oracle Spatial (Teacher)............................ 4 6.3 Metadata/Interoperability (Group 1)................................................................................ 4 6.3.1 Observations of the Past Course .................................................................................. 4 6.3.2 Questions Stimulating Further Work ........................................................................... 5 6.3.3 Practical Task............................................................................................................... 5 6.4 Functionality and Processing (Group 2) .......................................................................... 6 6.4.1 Observations of the Past Course .................................................................................. 6 6.4.2 Questions Stimulating Further Work ........................................................................... 8 6.4.3 Practical task ................................................................................................................ 9 6.5 User Interface (Group 3).................................................................................................. 9 6.5.1 Observations of the Past Course .................................................................................. 9 6.5.2 Questions Stimulating Further Work ......................................................................... 10 6.5.3 Practical task .............................................................................................................. 10 7 Bibliography .......................................................................................................................... 11

1 Background During the winter semester 2001/2002, an advanced course “Spatial Databases” was held at the Institute for Geoinformatics, University of Münster. It contained a module on the interaction between spatial databases and GIS, based on the software products Oracle Spatial and GeoMedia Professional. After the course, we felt that, in the light of current developments from monolithic to component-based GIS architectures, a detailed examination of the state of the art, including hands-on experience, needs more time. Building on the results of the past course, we designed a course exclusively devoted to this issue, focusing on GeoMedia Professional and Oracle Spatial as typical examples of available commercial products.

2 Goals • • •

Understand what component-based architectures are and why they are important Learn how GeoMedia and Oracle Spatial work together Gain experience in handling GeoMedia and Oracle Spatial 2



Recognize strengths and get to know pitfalls of state-of-the-art component-based architectures • In particular, develop an understanding of the specific issues for spatial data handling arising from component-based architectures (topological consistency, usability, performance) It is not our goal (and in this context not possible) to compare different GIS or database products.

3 Approach 1. Introduction to component-based architectures (teacher) 2. Introduction to working with GeoMedia Professional and Oracle (teacher) 3. Over the whole semester: groups of 5-6 students working on one subject (see below), supported by tutors (weekly meetings) • Study literature and give a talk on the subject • Do practical work, demonstrate and discuss results • Summarize and document theoretical and practical work 4. After 4 weeks: presentations of theoretical work 5. At the end of the semester: presentations of practical work

4 Required Knowledge/Skills • • • •

Theoretical GIS knowledge: data models, data structures, spatial indices, topology Familiarity with a GIS software, ideally GeoMedia Professional or ArcGIS (the latter for the Metadata/Interoperability group) Knowledge of fundamental database concepts: relational model, object-orientation, query languages Familiarity with SQL

5 Software • •

GeoMedia Professional 4.0 SP 1 (respectively 5.0) Oracle 8.1.7 with Spatial, object-relational model (respectively 9.0.1)

6 Concept In the following, the contents of the course are described. The emphasis is on the parts that the students will deal with in teams.

6.1 Introduction to Component-Based Architectures and Course Topics (Teacher) • • • •

Distributed heterogeneous computing Component-based architectures Standardization (ISO, OpenGIS) Course topics 3

References (Shan & Earle 1998) (Buehler & McKee 1998)

6.2 Introduction to GeoMedia Professional and Oracle Spatial (Teacher) GeoMedia Professional • Creating a workspace • Connecting to a warehouse • Loading data • Editing data • Spatial queries and analyses Oracle Spatial • • •

Object-relational model Connecting to a database Running SQL queries

References (Intergraph Corporation 2000) (Murray 2000) (Murray 2001)

6.3 Metadata/Interoperability (Group 1) Interoperability is the key characteristic of components that shall work together in a modular environment. Although interoperability shall in principle be achieved by service interfaces, we see a lot of GIS client-specific metadata necessary for the interaction between database and GIS clients. (We do not refer to metadata in the sense of ISO/TC 211.)

6.3.1 Observations of the Past Course GeoMedia Professional reacts sensitively with respect to its metadata in Oracle Spatial: data access is impossible without these metadata. Oracle also holds metadata of its own, and they partly overlap with those of GeoMedia Professional. Contents and handling of these metadata are difficult to understand. The situation becomes even more complex if other GIS clients are added and all want to access and update the same data (see Figure 1).

4

GeoMedia Professional

Oracle Spatial Database

GeoMedia Metadata

GIS n

GIS n Metadata

Spatial Data Oracle Spatial Metadata

Oracle Data Dictionary

Figure 1: Types of Metadata in Oracle Spatial

6.3.2 Questions Stimulating Further Work • • • • • • •

Which metadata does GeoMedia Professional respectively Oracle Spatial need? How are they maintained? Which metadata of the GIS and the database overlap? How do other GIS clients work with Oracle Spatial with respect to metadata? Does the scenario of several GIS clients modifying the same database work? What does it mean for a GIS vendor to be interoperable with several database products? Can these metadata problems be defused? How? What would an implementation of the OpenGIS Feature Specification for SQL (Types and Functions) change?

6.3.3 Practical Task • • • • •

Find out which metadata GeoMedia Professional and Oracle Spatial hold and where overlapping occurs. Find out if the OpenGIS Simple Features Specification for SQL specifies services for these metadata. Compare your findings and identify those metadata that are not covered by OpenGIS services. Implement selected OpenGIS services in Oracle. For selected metadata not covered by OpenGIS services: Develop a concept of how to propagate modifications in spatial data (effected by any software) to GeoMedia Professional metadata by using database means (triggers). 5

• • •

Implement a prototype. Discuss your solutions: Open issues? Other solutions? Discuss the interoperability issue: Is it influenced by metadata? What does this mean in practice?

References (OpenGIS Consortium 1999) (Bossomaier & Green 2001) (Seuß 2001)

6.4 Functionality and Processing (Group 2) Another main architecture question beside interoperability is the distribution of functionality over the components.

6.4.1 Observations of the Past Course GeoMedia Professional and Oracle Spatial both provide query functionality retrieving topological relationships. An accepted approach is that of Egenhofer and Herring, who defined relationships for simple regions (Egenhofer & Herring 1990). It has been extended in various ways, but for this purpose we stick to this basic definition. We wondered how it is implemented in the two products. Figure 2 shows a comparison between Egenhofer and Herring and GeoMedia Professional respectively Oracle Spatial. It becomes obvious that both products are basically modeled on the definition of Egenhofer and Herring (disregarding that GeoMedia Professional does not provide the “disjoint” option and that an additional option is introduced by both products). At first glance only the names are slightly different. But if you look closer at spatial queries, you see that GeoMedia Professional delivers results different from the definition. Egenhofer and Herring specified relationships excluding one another, whereas here some relationships include others, e. g. “are spatially equal” includes “overlap”, “are contained by/contain”, and “touch”, in other words spatial equality is a borderline case of the other relationships. This means, e. g., if you query for all features that overlap, the ones that are spatially equal are retrieved as well. To obtain the same result set in Oracle Spatial, you have to combine the relationships “overlap” and “equal”. This follows Egenhofer and Herring. But the capability of Oracle Spatial to combine various types of relationships in one native query is not supported by GeoMedia Professional. Both approaches are helpful in practice, but for the user it is difficult to understand the difference of functionalities, to combine the right options, to see solutions with equivalent results and assess which procedure is more appropriate in which situation.

6

Figure 2: Topological Relationships Between Two Regions bA1,bA2

bA1,iA2

iA1,bA2

Ø

Ø

Ø

¯

Ø

¯

iA1,iA2

GeoMedia Professional

Oracle Spatial

Ø

(Egenhofer & Herring 1990) A1 disjoint A2

-

disjoint

Ø

Ø

A1 meet A2

meet

touch

¯

¯

¯

A1 overlap A2

overlap

overlapbdyintersect

Ø

¯

¯

contain/are contained by

¯

Ø

¯

¯

Ø

Ø

¯

are entirely contained by/entirely contain are spatially equal touch

inside/contains

Ø

A1 covers A2 A2 coveredBy A1 A1 inside A2 A2 contains A1 A1 equal A2

covers/coveredby

¯

all except disjoint

equal anyinteract

This leads to the question of where queries are processed. GeoMedia Professional processes its queries locally. This requires that all relevant data are loaded and fit into memory. Oracle Spa-

Command “New Query...” GeoMedia Professional

load data

Oracle Spatial

Command “Native Query...” process query

GeoMedia Professional

send query

get result

Oracle Spatial

process query

Figure 3: Query Processing with the GeoMedia Professional Commands “New Query…” and “Native Query…”

tial native queries are formulated by GeoMedia Professional and sent to the database in order to be processed there remotely. Oracle Spatial returns the result set. This difference will influence performance. But regardless of performance issues, for large datasets not fitting into memory remote processing is the only solution.

7

Trying out some queries, we accidentally found two queries that according to our understanding should deliver the same result, but did not do so (see Figure 4). It seems that the Oracle Spatial query (“touch”) does not perform correctly, because more features are expected in the result set. During the course no time was left to examine this. One explanation for the difference could be that GeoMedia Professional works with topologies it creates on the fly, while Oracle Spatial does not have topological information and consequently processes geometric data. This gives rise to the question if topology should explicitly be stored in the database. And if so, how would this affect a GIS client like GeoMedia Professional that produces a topology of its own? In fact, adding topological information to Oracle Spatial is underway (Ramage et al. 2001).

Figure 4: Comparison of GeoMedia Professional Query “meet” and Oracle Spatial Native Query “touch”

6.4.2 Questions Stimulating Further Work • • • • •

Are there more overlapping functionalities than spatial queries? Will GIS functionality to a great extent migrate into the database? How can GIS clients cope with this situation? What does it mean for a GIS client to support several database products? How must a database present its spatial functionality in order to facilitate its integration into a GIS client? 8

6.4.3 Practical task • • • •

Look for more overlapping functionalities in GeoMedia Professional and Oracle Spatial (9.0.1). Test functionalities: compare results, measure performance. Try to find out why the differences with the spatial queries described above (see Figure 4) appear. Discuss: how can functionality be distributed between the database and the GIS client? Invent a future system architecture.

References (Egenhofer & Herring 1990) (Ramage et al. 2001)

6.5 User Interface (Group 3) Integrating functionality of various components is not only technically a demanding task, but also with respect to the user interface. A principle might be to keep the distribution transparent to the user. But as soon as the same functionality is provided in different components with specific advantages and disadvantages, this must become obvious.

6.5.1 Observations of the Past Course The query tools of GeoMedia Professional (commands “New Query…” and “Native Query…”) are a good approach to the problem. They provide the user with the names and additionally with a visual explanation of spatial relationships.

Figure 5: Spatial Query Tool in GeoMedia Professional

9

But the sample does not show all possible feature combinations. If - like described above and shown in Figure 5 -, the option “overlap” is chosen, spatially equal features are retrieved as well. This is difficult to depict in the sample. It is questionable if users are aware of this interpretation of “overlap” and if they will recognize it in the result set. Another problem is that some names are far from being self-explanatory, like the native query option “OVERLAPBDYDISJOINT”, which promotes misunderstanding and misinterpretation. Besides, this option repeats for regions the “contains” option, which unnecessarily overloads the interface. Other names seem self-explanatory, but they appear with different meanings (homonyms: e. g. “touch” in a GeoMedia Professional query is something completely different from “touch” in an Oracle Spatial query, see Figure 2). The other way round, options delivering equivalent result sets bear different names (synonyms: e. g. “meet” in a GeoMedia Professional query and “touch” in an Oracle Spatial query, see Figure 2). For equivalent operations, there is no support concerning which one to choose. An inconvenience is the fact that feature classes can be selected that do not fit to the indicated spatial relationship (e. g. a point and a polygon feature class in combination with “equal”). The validity is only tested when pressing the OK-button. Another solution would be to show possible spatial relationships depending on the type of feature classes the user selected.

6.5.2 Questions Stimulating Further Work • • • •

How can the meaning of functionalities be described unambiguously? How can the differences in functionalities be conveyed to the user? How can the user be supported with choosing the right commands and options? Is it possible to describe functionalities the database offers in a way that they can dynamically be integrated in the GIS interface?

6.5.3 Practical task • • • • • •

Design a user test for spatial queries. Perform the user test with GeoMedia Professional. Based on the results of the user test, develop alternative user interface elements. Implement a prototype. Perform the user test with the prototype. Discuss your results:

References (Nielsen 1993)

10

7 Bibliography Bossomaier, T. and D. Green. 2001. Online GIS and Spatial Metadata. Taylor & Francis. Buehler, K. and L. McKee. 1998. The OpenGIS® Guide. Introduction to Interoperable Geoprocessing and the OpenGIS Specification. 3rd ed. (draft). Wayland, Massachusetts. Open GIS Consortium Technical Committee. Egenhofer, M. J. and J. R. Herring. 1990. "A Mathematical Framework for the Definition of Topological Relationships". In: Brassel, K. E. and H. Kishimoto (Hgg.). 4th International Symposium on Spatial Data Handling. Zurich. Department of Geography, University of Zurich. 803-813. Intergraph Corporation. 2000. Working with GeoMedia Professional. Huntsville, Alabama. Intergraph Corporation. Murray, C. 2000. Oracle Spatial User's Guide and Reference. Release 8.1.7. Oracle. http://otn.oracle.com/docs/products/oracle8i/doc_library/817_doc/inter.817/a85337/toc.htm Murray, C. 2001. Oracle Spatial User's Guide and Reference. Release 9.0.1. Oracle. http://download-west.oracle.com/otndoc/oracle9i/901_doc/appdev.901/a88805/toc.htm Nielsen, J. 1993. "Usability Engineering". Boston. AP Professional. 362. OpenGIS Consortium. 1999. OpenGIS® Simple Features Specification. For SQL. Revision 1.1. Wayland, Massachusetts. Open GIS Consortium. Ramage, S. et al. 2001. Laser-Scan and the ASPETM Product: Advanced Spatial Processing Environment (ASPETM) for Oracle9i Spatial. Marketing White Paper. 12.2001. Cambridge. Laser-Scan Ltd. Seuß, R. 2001. Interoperabilität zwischen GeoMedia und Drittsystemen auf der Basis von Oracle 8i. 16. Intergraph GEO-Forum. Institut für Kommunale Geoinformationssysteme (IKGIS). Shan, Y.-P. and R. H. Earle. 1998. Enterprise Computing with Objects. From Client/Server Environments to the Internet. Reading, Massachusetts. Addison-Wesley. Object Technology Series.

11