50
Internet GIS: The State of the Art and Future Development Zhong-Ren Peng, Ph.D. Associate Professor Director, Center for Advanced Spatial Information Research (CASIR) University of Wisconsin – Milwaukee [email protected]

Internet GIS: The State of the Art and Future Development Zhong-Ren Peng, Ph.D. Associate Professor Director, Center for Advanced Spatial Information Research

Embed Size (px)

Citation preview

Internet GIS: The State of the Art and

Future Development

Zhong-Ren Peng, Ph.D.Associate Professor

Director, Center for Advanced Spatial Information Research (CASIR)

University of Wisconsin – [email protected]

February 12, 2003

2

The Road Map

Mainframe GIS

Desktop GIS

Internet GIS

Mobile GIS

Time

Acc

essi

bilit

y

3

Internet GIS EvolutionsStatic Web Mapping HTML to GIS server via CGI script

Interactive Web Mapping Client-side Plug-ins and Helper Program GIS ActiveX Controls Java-based Internet GIS

Distributed Internet GIS CORBA/JAVA Model COM+/ActiveX Model

Web Services .Net model GML, WFS

4

InteractivityLow High

High

Low

Static Map publishing

Static Web Mapping

Interactive Web Mapping

Distributed GIS

Fun

ctio

nali

ty

• Static map images

•CGI

•Forms

•Tables

•ISAPI

•NSAPI

•Dynamic HTML

•Scripts

•Plug-ins

•ActiveX controls

•Java Applets

•Servlets

•JavaBeans

•Java Applets

•ActiveX controls

•CORBA/Java

•DCOM/

•Object-based documents

Web Services

•.NET model

• GML

• WFS

5

Static Web Mapping

How does it work?

WWWBrowser

WWWServer(http)

CGIor DLL

GISServer

User Request

Deliver Results

Sen

d V

aria

bles

Ret

urn

Res

ults

Invoke

TranslateResults

6

Drawbacks of Static Web Mapping

Every user request has to go through the Internet to activate CGI script every time.

Creates heavy traffic over the Internet, because every command (even very simple ones) has to be operated on the GIS server.

Maps are static images.

HTTP/CGI is stateless. So users cannot draw a box or a circle or select spatial features directly on the map images.

7

Interactive Web Mapping

Interactive Web Mapping allows the user to manipulate GIS data and conduct GIS analysis at the client/user side, including:GIS Plug-Ins and Helper ProgramsGIS Java Applets (e.g., ArcIMS)GIS ActiveX Controls (e.g., GeoMedia Web

Map)

8

Limitations and Problems of Current Internet GIS

Not Interoperable; Client-side applications can only communicate

with its own kind of server. Cannot access different data from different server. Client-side applications cannot talk with each

other.

Slow performance.Limited Functionality.Some output are images with poor quality.

9

Trends of Internet GIS

Distributed GIS for GIS professionals. LEGO-like distributed GIS components

GIS Web Services for General Public Access. Geographic Markup Language (GML) Web Feature Services Scalable Vector Graphics

Interoperable Geospatial Data GML

10

LEGO-like Distributed Components and Data Objects The LEGO metaphor refers to children’s toy blocks that can be interlocked and stacked. LEGO-like distributed components refer to software modules that can be moved and combined to form a dynamic GIS package on demand. Distributed components will be independent from different operating systems, hardware, network environments, vendors, and applications – Interoperable.

11

GIS component

Geodata object

User Scenario:

Map Display (RLIS)

User machine: node-A

Mike

Dynamic Construction

GIS node-A(Client)

GIS nodes (Servers)

Original Setting

GIS node-A

GIS node-B

GIS node-C

Migrating

Connecting

Task completed (restore original setting)

GIS node-A

GIS node-B

GIS node-C

LEGO-like Distributed GIS Model

12

Two approaches to access distributed objects

dynamically

Remote connections;

Object migration.

13

Dynamic Construction for GIS Components

HTTP

b). Migrating GIS components.

a). Invoking GIS components remotely

RPC

GIS Node-A

GIS Node-AGIS Node-B

Client-side Component Service

GIS Node-B

HTTP Server GIS component

GIS Application

GIS Application

Component Container

ClientStub

GIS component

Server-side Component Service

ServerSkeleton

14

Dynamic Construction for Geodata Objects

b). Migrating data objects

a). Connecting data objects remotely

GIS Node-A

Data Container(Local Disk)

FTP

SQL

GIS Node-A

GIS Node-B

Database Server

Database connectivity API: (JDBC or ODBC) Data object

GIS Node-B

FTP Server Data object

GIS Application

GIS Application

15

A Thick Client Solution for a Simple task on a fast

network connection

Client components

Server components

GIS buffering component

Buffering component downloaded from the server

16

A Thin Client Solution for a Complex task on a slow

network connection

Client components

Server components

GIS TIN-model component

TIN Modeling result is downloaded from the server

17

Data MigrationGIS task: Buffering

Network: 10MB Ethernet

Buffering component

Client-side GIS Component

Wisconsin LIS

Server-side Data Objects

Wisconsin LIS[Wisconsin LIS ]is

downloaded from the server

18

Remote Data AccessTIN modeling, Network: 56K

modem

TIN-modeling component

Client-side GIS component

Wisconsin DEM

Server-side Data Objects

19

CORBA/JAVA Model Implementation

GIS Server

DatabaseORBCORBA ServerApplication Server

ORBS

Web Browser

Java Applet

Web ServerHTTP Request

Load

Applet

CORBA/I IOP

Client Tier Middle Tier Server Tier

EJBS

20

DCOM/ActiveX model Implementation

Web Browsers

--HTML & Forms

--DHTML

--XML

--ActiveX Controls

Web Server ( HTML Document)

Application Servers

--DCOM/ASP

--CGI/ISAPI

--ActiveX Controls

GIS Server

Database

SQL Server

HTTP/DCOM

TCP/IP

Client Tier Middle Tier Server Tier

Web Browsers

--HTML & Forms

--DHTML

--XML

--ActiveX Controls

Web Server ( HTML Document)

Application Servers

--DCOM/ASP

--CGI/ISAPI

--ActiveX Controls

GIS Server

Database

SQL Server

HTTP/DCOM

TCP/IP

Client Tier Middle Tier Server Tier

21

Geography Markup Language (GML)

GML is an XML encoding for the transport and storage of geographic information.Includes both the geometry and

properties of geographic features.

GML standard is being developed by the OpenGIS Consortium.

22

What is GMLGML Is a means to encode geospatial data

GML is a means to transport geospatial data over the Web

GML is a means to store geospatial data.

GML Is NOT a Presentation Language for Data Display

GML Is NOT A Programming Language for Data Processing

23

Why GML?

ArcView shapefile

ArcInfo coverage

Intergraph CGM Mapinfo

AutoCAD

Oracle Spatial

24

Why GML?

ArcView shapefile

ArcInfo coverage

Intergraph CGM Mapinfo

AutoCAD

Oracle Spatial

GML

25

Why GML? Interoperability!

1. To describe spatial features based on a common data model – OGC’s simple feature model;

2. To use a set of basic geometry tags to describe the spatial features (Standard metadata); so that they can be easy to find and interpret.

3. To create a mechanism for creating and sharing application schemas, so that different data set created by different parties can be easily integrated.

26

GML – An Example

<Point> <coord> <X>10.0</X> <Y>2.0</Y> </coord></Point>

OR<Point> <coordinates>10.0,2.0</coordinates></Point>

27

GML Schema: -- An Example

<element name="coord" type="gml:CoordType" /> 

<complexType name="CoordType"> <sequence> <element name="X" type="decimal"/> <element name="Y" type="decimal" minOccurs="0"/> <element name="Z" type="decimal" minOccurs="0"/> </sequence></complexType>

28

XLink and XPointer to form Geospatial Web

29

How to Display GML data on the Web

Scalable Vector Graphic file,

A W3C standard format.

Works directly with the Web browser.

Requires a SVG plug-in (free from Adobe or other vendors).

30

31

How To Extract data

OpenGIS Web Feature ServerAn OpenGIS implementation specificationCan extract data from the data store in the data’s original formats.Transform extracted data to GML.Transport the extracted data to the Web client.

32

An example

33

Clear Vector Map

34

Advantages of GML+SVG+WFS

Standard-based, Non-proprietary

Interoperable GIS components and data,

Feature-level data exchange.

Text-based, easy to understand

High quality maps on the Internet,

Fast response on the client-side.

35

Application Tier

Listener

Business Facade

Business Logic

Data Access

Database

User Interaction and Presentation

Database Tier

Presentation Tier

Service

Request

Service

Response

Desktop Laptop PDA Mobile phone

A Web Service / .NET Model for A Distributed GIS

36

Web Service Presentation Layer

The editor -- editing the data and saving the change of the data.The viewer -- displaying the underlying data but does not allow the user to change the data. The viewer -- a component container that user can use it to locate, retrieve and assemble other “operator” components such as buffer analysis, spatial overlay, projection conversion, etc .

37

Web Service Listener

1. Receive incoming service requests, parsing the messages, and dispatching the request to the appropriate method on the business facade;

2. Package the response from the business facade into a message and send that back to the client;

3. Handles requests for contracts and other documents about the Web Service.

38

Web Service Business Facade

Provides a simple interface that maps directly to operations provided by the business logic layer. In a simple Web Service, all the business logic might be implemented by the business facade.Operators are located in the Business Logic layer.

39

Web Service Business LogicBusiness Logic uses Operators to transform, combine, or create data, and generate outputs.Operators offer functions of geoprocessing and analysis tools, e.g., buffer analysis, spatial overlay, projection conversion, etc. Operators can be implemented by using Simple Object Access Protocol (SOAP). SOAP is an XML-based Remote Procedure Call that allow other programs to invoke .NET components and applications remotely.

40

Data Access Layer

The data access layer presents a logic view of the physical data to the business logic layer. The purpose is to isolate business logic from changes to the underlying data. Catalogs and Repositories of data, as well as Metadata, Names and Relationships components are located in the data access layer.

41

Catalogs and Repositories Catalogs are collections of metadata, or

information repositories about other data objects and operators. Data and service providers use catalogs to list and

advertise the availability of data and services. The user searches for catalogs first before getting to

the data repositories. Catalogs can be implemented by using Web Service

Definition Language (WSDL). WSDL is used to define the functions and services of

.NET components.

42

Catalogs and Repositories Repositories are collections of data.

Each item is given a name within the repository. Given a name, a repository can find the resource.Repositories can be implemented using Universal

Discovery, Description, and Integration (UDDI) . UDDI is a searchable registry database that

stores the metadata of .NET components and allow other programs to search/access these components

43

Data LayerThe “data” layer include data, metadata, names and relationships required by the Web Service. Data are raw information about an object. Metadata is descriptions about the data. Names are used to register and find data. A name makes sense only within a content or namespace. In a repository, a data name together with the repository name can be used to identify and locate data items. Relationships are links between named items.

44

Listener

Business Facade

Business Logic

Data Access

Database

User Interaction and Presentation

data, metadata, names and relationships

Operators (SOAP)

Viewer and EditorS

ervice R

equest

Service

Response

Desktop Laptop PDA Mobile phone

Catalogs and Repositories

Simple Operations

Dispatcher

45

Mobile GIS•Accessing GIS data and functionality via wireless devices.

–Laptop Computers,

–Personal Digital Assistants,

–Cellular phones (WAP phone or other Web-enabled smart phones).

46

A Simplified Cellular Network

Mobile Switching Center

Web Hosts/Servers

47

Wireless network

Telecommunication Service Providers

Laptop/ PDA with CDPD modem

Base Station

Mobile Switching Center

Gateway Servers

Web Servers w/ GIS server

Web Browsers

Internet

Inte

rnet

TCP/IP

TC

P/I

P

Mobile GIS Architecture

48

Mobile GIS Architecture Using WAP Phones

GATEWAY

En

cod

ers

and

Dec

oder

s

CLIENTWeb Server and

Application Server

Encoded RequestsRequests

WA

E U

ser

Age

nt

Encoded Response Response (Content)Content

CGIScripts

etc.

49

What do these mean for LIS?Going online, going mobile

Provide data and processing tools online.

Provide GML conversion tools.

Provide editing tools for authorized online data editing.

Downloadable and interoperable GIS components.

Feature-level data search and download on-line.

Inter-connected geospatial data Web.

Questions and Comments?

http://www.uwm.edu/~zpeng