URL to USL or web enabled GIS
David Warren The TPI Group Inc, Suite 705, 703 6th Ave SW Calgary, AB, Canada T2P 0T9
Overview
The emergence of distributed technologies known as CORBA or EJB, Universal Database Servers such as Oracle8I or DB2 Universal Server and the Internet has enabled many new and exciting end-user experiences over the WWW. Examples of such are video-on-demand, realaudio, music-on-demand, and the many flavors of e-commerce. The birth of the WWW came about as a need for researchers around the world to share information in a way that eliminated the barriers of space and time. The next generation of the WWW now includes e-commerce and the “dot com” businesses, such as Amazon.com. In very little time the amount of information accessible from a simple browser has grown exponentially to the point now that the search engines have trouble indexing everything in a timely manner and keeping the information up-todate. Just as published directories, such as yellow pages, became difficult to use the more information they had, so has the information on the WWW. Try a simple example, look for the five Italian restaurants closest to where you currently are, this conference hall, so that you can make a reservation for this evening. Now most of you will not be familiar with the locale so you turn to the yellow pages, either hard copy or published on-line and look for the listings of Italian restaurants. Maybe there are 20 or more entries, maybe they are all lumped together under restaurants, but for sure they will not be sorted relative to where you currently are. What this paper is going to explore is the possibility that we can add to the WWW the very thing that it was initially designed to eliminate that is space and time. OpenGIS Corba specfication and web based GIS The OpenGIS CORBA Specification [1] states: “ The purpose of OpenGIS CORBA specification is to provide interfaces to allow GIS software engineers to develop applications that expose functionality required to access and manipulate geospatial information comprising features with ‘simple’ geometry using OMG’s CORBA technology. CORBA (Common Object Request Broker Architecture) provides a specification for the object-oriented distributed systems in a language, operating system, platform and vendor independent way. CORBA consists of a core implemented by the various commercially available ORBs (Object Request Brokers) and a number of specified object services and application facilities (CORBAservices and CORBAfacilities). Facilities may be horizontal (provide services of a general nature to applications such as a graphic user interface or task management) or vertical (provide services targeted to a particular industry or domain). It is envisaged that this specification will become a candidate for inclusion in the OMG’s work as a vertical CORBAfacility covering geospatial information management.” In the past three years web based mapping has progressed from being simply a dumb raster image of a map to where we now have three-tier architectures being implemented using AutoDesk’s Mapguide Author, Server and Viewer tools [2]. This evolution of web based mapping has been clearly articulated in the articles by W. Frederick Limp [3], [4] and is not covered further in this paper. Although such an evolution was inevitable, vendors of GIS software have to have offer their existing customers some capabilities for their intranets and the visual aspect of the web makes maps appealing, it is not the same as spatially enabling the WWW or providing the location aspect to e-commerce. In a recent article in Scientific American [5], David Clark states: “Within a decade, most people in developed countries will have access to Internet connections that are tens if not hundreds of times faster than the ones in common use today. Although that development may not sound exactly earth-shaking, it will in fact herald an entirely new stage in the evolution of that global network. … Those high-speed connections to the home--whether they take the physical form of a telephone wire, a cable television line or a satellite link--will give rise to an entirely new set of applications. “ Many other technologies have emerged in the last few years that can be considered ancillary to the WWW but which when taken together are redefining software architectures today in much the same way client/server and RDBMS transformed them in the 80’s and early 90s. These technologies are Java, web browsers, CORBA, EJB, DCOM, and universal database servers, such as Oracle8. In two white papers [6], [7], the author has discussed at great length the emergence of these technologies. In particular these papers discuss how they can enable not only the storage of spatial data in a database but also how they can help to deliver the “Simple Features” as defined by the OGC [1]. Industry uptake of these technologies has been varied, an article in Utilities it [8] suggests that: “if spatial data technologies are to become the next de-facto standard in utility GIS, their next generation must address the limitations of current spatial engine products.” Others [9] see that it is time to move these new spatial engines into the heart of the enterprise to spatially enable legacy applications and datastores. If we were to build a web-enabled GIS, what would it look like using these new technologies? The following graphic, titled “Web Centric Architecture for Distributed GIS” shows that it could have the look and feel of an n-tiered architecture [10], Clients/Web-Servers/Distributed- Components/Data-Stores. ![]() Tier 1 – Clients These clients can be anything from ultra-thin (Palm OS and Windows CE or Network Computing Device) running nothing more than a browser; thin clients capable of running the same browsers but with plugins that add some GIS functionality; and applications running on workstations that have their own datastores and talk directly to an application server. Tier 2 – Presentation Servers These are web servers that serve up HTML or Java Applets to browsers using either a servlet or JSP (Java Server Page). Tier 3 – Application Servers The three-tier computing model evolved to address the problems of the two-tier model. In a three-tier model, a middle tier exists between clients and the database server. This middle tier consists of an application server that contains the bulk of the application logic of the three-tier model. Clients in this model are thin clients. With this architecture, application logic resides in a single tier and can be maintained easily at one point. The architectural design of the middle tier can also be optimized for server functions since it does not have to house the database. Tier 4 – Data Stores Flat-file, hierarchical, and network database systems were displaced by relational database management systems because their flexibility and interfaces insulated application code from physical storage schemes. Object-relational systems are based on a simple idea: the data model they support is an extension of the SQL92 relational model (SQL3). This extension has been achieved with user-defined types and functions that model business objects more naturally and encapsulate business rules with data. The OpenGIS specifications give a way of defining things in the database that have a location and/or have geometry. Using this specification and the emerging object-relational or object databases, it is know possible to define data types (ORDBMS) or objects (ODBMS) that have agreed to attributes and well known behavior. In addition to this the OpenGIS specifications also define the data object interfaces for CORBA that can be encapsulated into business objects for use in a distributed object architecture, such as is required by applications running on the WWW. Current offerings by the major software vendors do not come close to this kind of functionality, either architecturally or as define by the OGC. In the presentation layer these things that now know where they are can be drawn in context using a mapping component written using the Java JDK 1.2 which has extensive drawing capabilities in the graphics package. So now, instead of delivering an image with very little user interaction capabilities, it is possible to stream these objects and the relevant land-base components to the browser or Java application. Once on the client they have similar or the same interaction capabilities GIS users have become used to in the current client/server style GIS engines. It is worth noting that both MapGuide (Autodesk) and GeoMedia Web Map (Intergraph) use graphic objects. If an image is delivered to the client, the local software “knows” only the mouse’s window coordinates, in the object aletrnative, the software knows the point line or polygon that the mouse position indicates. The former method requires a trip to the server to determine what thing is being pointed at, whereas in the latter the software can make this determination without going back to the server. In a distributed architecture, such as the WWW, the fewer round trips to the server the better, put another way, if the user has to wait too long he/she will go somewhere else on the Web for this service. Spatially enabling the enterprise with web based GIS We have seen that we can define a set of business objects that can encapsulate data objects that have been designed using the OpenGIS Simple Features specification. These business objects are able to present an interface using CORBA or EJB technology that is callable from traditional clients or other business objects. In any typical enterprise there are many systems that have business objects that have some attributes that describe a location. In a CRM system, the customer has an address, the store has an address, but neither of them are capable of understanding their spatial relationship to one another. Simply geo-coding the addresses does little to give them spatial awareness, all it does is allow them to be placed on a map. For spatial awareness organizations have had to turn to GIS engines and move their data into a new repository before they could answer the question “where” relative to anything. This is a costly exercise for not only does the enterprise have to geo-code their data but they have to establish a land-base with which they can generate the maps for viewing people, places and things in a geographic context. This land-base may be easy to find for an experienced GIS person and they will understand the nuances of geographic data and datums and projections. However, for the average enterprise this skill-set is not going to be found in their IT departments or business units. What happens is that for a simple question to be answered: “where is my customer?” or, “where are they in relation to some thing (store, outside plant)?”, the enterprise has to expend large quantities of time and effort, as well as the expense of data migration and cleanup and client software that typically requires a workstation of an order of magnitude greater performance specifications. Surely there is an alternative? With the emergence of the WWW and networks of everincreasing bandwidth, as well as the underlying n-tier architectures and objects being supported by major database vendors, the answer is a resounding YES. Software companies have long been striving for the object nirvana of write once and re-use many times, and with Java and EJB or CORBA this is fast becoming possible. What if we extend this concept to the land-base and had an on-line 7x24 database that had all the land-base for North America, and it was accessible using the business object concepts and interfaces we have talked about. Any application could discover the published interfaces to these objects and use them to perform on-line GIS without having to understand GIS or expend the time and money required to build and maintain the land-base for their region. Instead they could use the on-line GIS capabilities to link their corporate systems in such a way that the business objects that have location attributes can be given a unique key that says “I am here”! This is the USL concept. If we are dealing with one version of a land-base then anything can be placed in context with it and using the spatial operators defined by the on-line GIS associated with such a land-base could simply ask “Where is my customer?”, “Where are the things I care about”, “Can I give my customer the service they require?”, “Should I build a new store here?”. In e-commerce location matters, one-to-one marketing requires an understanding of where your customer is in relation to the business. Spatially enabling the web So now we have a land base accessible to all on the web and have integrated addresses into the schema such that they are geo-coded, what does this enable? The availability of on-line spatial information services and map-enabled locator applications is in its infancy and fall into a few broad categories. The first can be described as providers of on-line mapping and destination information for consumers and business, http://www.mapquest.com and http://www.vicinity.com, are two good examples of this. Vicinity uses ESRI’s Internet enabled GIS technology for their map engine, MapQuest have their own digital map products. The second category are providers of local portal sites that have map-enabled yellow pages or other on-line business directories, http://www.zip2.com or http://www.athand.com are good examples of this. These examples either return a map image centered around some location specified by the user or lists of categories of things that can be found in a user-specified region. As such, they have limited use and are only a small step beyond an atlas or the yellow pages directory published and mailed to you by your local phone company. An atlas has very little information about people, places or things that can be found at a location or within a region. The yellow pages do not give you the ability to filter people, places or things at a level of granularity finer than the region for which the Yellow Pages are published. The same is true for the current offerings on the web! Furthermore, the WWW is growing at such a fast rate that it is impossible for any portal to categorize and filter people, places and things with any great success. Try a simple search for sushi restaurants Vancouver on the Excite portal www.excite.com and you get back more than 500,000 hits. It is impossible to browse through such a massive number of web hits, to determine if they hold any relevant information. Amazing, with the Internet, there is no easy way to index, search and filter such hits based on location specific criteria. Let us know look at what could be possible if there was a single land-base for North America and that anything published on the WWW that had some sense of location could be spatially enabled. The method by which such things are spatially enabled can be “on-the-fly” or by the webmaster using a toolkit which allows them to assign USL keys to people, places and things that are published on the WWW. The “on-the-fly” method can be as simple as a user doing a web search and using a spatially-enabled browser to map them at will, or by applying a spatial filter to the list of things returned from a search using any of the search engines currently available. If the webmaster has already assigned USLs to things then the spatial filtering of them will be much faster. The use of a USL follows established data modeling practices, that is a primary key should never contain information that may change. Geo-coding people, places and things using latitude-longitude pairs is therefore a poor way of spatially indexing on the WWW as these values change depending upon the chosen projection or horizontal datum. A typical interaction using this spatially enabled browser, could be given an address centre a map view of this location and within 1000m of the location. In addition, the user may request that any people, places, or things of a particular category within this region of interest be displayed and have the ability to interrogate these new objects for any data attributes. They may even have hot-links assigned to them which could open a separate window in the browser and load the web page associated with the URL hot-link. The difference between this approach and say an on-line yellow-pages is that this list can be extended by any user on the web that wishes to places themselves, or places they know of or simply a classified ad for some thing they have for sale. Once they have done this it would be possible for others to see these objects on a map of the same area. Conclusions This paper has postulated the following should be possible in the very near future, indeed at the speed of the evolution of the WWW they may already be here!
| ||
| © GISdevelopment.net. All rights reserved. |