You are on page 1of 40

Chapter Three Details

Technical Aspects of Web mapping


Outline
• Client/Server architecture
• Web Mapping Architectures
• Server-Side Technologies
• Client-Side Technologies
• Open systems
• Interoperability
• OGC Service Specifications: Geo-web services

04/05/2022 for student By: Oytisa O. 1


Client/Server architecture
Basic concept
• It is a network architecture in which each computer
or process on the network is either a client or a
server
• Clients are requesting information (e.g. a specific
web page)
• Servers are responding to individual requests

04/05/2022 for student By: Oytisa O. 2


Request by URL

04/05/2022 for student By: Oytisa O. 3


Cont’d
Returning a map of current precipitation

04/05/2022 for student By: Oytisa O. 4


Cont’d

04/05/2022 for student By: Oytisa O. 5


Web mapping architecture
Web mapping architecture
• It can take several different physical machines to
create, serve, and use a web map
• The potential number of technologies to implement
web mapping projects is almost infinite.
• Any programming environment, programming
language, and server-side framework can be used to
implement web mapping projects.
• In any case, both server- and client-side
technologies have to be used.
04/05/2022 for student By: Oytisa O. 6
Figure: System architecture for web mapping

04/05/2022 for student By: Oytisa O. 7


Cont’d
• Geospatial server (map server) has specialized
software and processing power for
• Drawing maps,
• Responding to feature queries, and • Performing
GIS analysis operations.
• E.g. GeoServer
• A web server that acts as a web entry point into
your organization's network.

04/05/2022 for student By: Oytisa O. 8


• It's also a place where you can put web application
code (such as HTML and JavaScript files) for your
web maps.
Server side technologies
Web Server
• The web server is responsible for handling HTTP
requests by web browsers and other user agents.
• In the simplest case they serve static files, such as
HTML pages or static image files.

04/05/2022 for student By: Oytisa O. 9


• The functionality of a web server can usually be
enhanced using modules or extensions.
• The most popular web server is Apache, followed by
Microsoft Internet Information Server, nginx, Google
web server, and lighthttpd.
Web Mapping Server
• WMS Server can generate maps on request,
using parameters, such as
• map layer order,
• styling/symbolization,
• map extent,
04/05/2022 for student By: Oytisa O. 10
• data format, • projection, etc.
• The OGC defined the WMS standard, including the
map requests and allowed return data formats.
• Typical image formats for the map result are PNG,
JPEG, GIFor SVG.
Web Mapping Server...Cont’d
• WMS servers available under an open-source
license include
• UMN MapServer,
• Geoserver, and
• QGIS Server (Currently works on linux)
04/05/2022 for student By: Oytisa O. 11
• Commercial alternatives exist from most
commercial
GIS vendors, such as
• Esri ArcGIS Server,
• Intergraph Geomedia WebMap, and
• Mapinfo MapExtreme.
Spatial database/File server
• Spatial databases are usually relational or
objectrelational databases enhanced with geographic
data types, methods, and operators.
• They are necessary whenever a web mapping
application has to deal with frequently changing
04/05/2022 for student By: Oytisa O. 12
dynamic data or with larger amounts of geographic
data.
• Spatial databases allow spatial queries, filtering,
coordinate transformations, and geometry
manipulations and offer various import and export
formats.

04/05/2022 for student By: Oytisa O. 13


Spatial database/File erver…Cont’d
• Currently, the most advanced open-source spatial
database is PostGIS.
• MySQL also implements some spatial features,
although not as mature as PostGIS.
• An interesting alternative for file-based usage
without the need for a server installation is
SpatiaLite, a spatial extension to SQLite.
• Commercial alternatives are Oracle Spatial or
spatial extensions of Microsoft SQL Server, IBM
DB2 or Informix.
04/05/2022 for student By: Oytisa O. 14
Server side scripting
• Server-side scripts are completely processed by the
servers instead of clients.
• Scripts can be written in any of a number of
serverside scripting languages that are available
• ASP (*.asp)
• Java (*.jsp) via JavaServer Pages
• PHP (*.php, *.php3, *.php4, *.phtml)
• Python (*.py)
• Ruby (*.rb, *.rbw), etc.
04/05/2022 for student By: Oytisa O. 15
Client-side technologies
• In the simplest setup, only a web browser is required.
• All modern web browsers support the display of
HTML and raster images
• For most web mapping applications it is necessary to
implement client-side interaction.
• Various events are necessary to implement
interactive client-side maps.
• Events include mouse, touch, and keyboardevents

04/05/2022 for student By: Oytisa O. 16


Client Side Scripting
• = Client-side functionality
• Executed by the browser, after the file is received
• Client-side scripts are often embedded within an
HTML document
• They may also be contained in a separate file
• JavaScript is the most popular scripting language on
the web and supported by almost all browsers

04/05/2022 for student By: Oytisa O 17


Interoperability
Distributed servers

04/05/2022 for student By: Oytisa O 18


Distributed clients

04/05/2022 for student By: Oytisa O 19


Cont’d
• Determines how products communicate with other
products.
• It refers to the ability of a program to share data or
functions with another program.
• These often adhere to open standards—protocols
for communication between applications.
• The basic idea is to define standards that aren’t
dependent on one particular software package
04/05/2022 for student By: Oytisa O 20
Cont’d
• Two information systems are interoperable, if they
are able to …

04/05/2022 for student By: Oytisa O 21


Cont’d
• An example of these standards in action is the ability
of your program to request maps from another
mapping program over the Internet.
• The real power of open standards is evident when
your program can communicate with a program
developed by a different group/vendor.
• This is a crucial issue for many large organizations,
especially government agencies, where sharing data
across departments can make or break the efficiency
in that organization.
04/05/2022 for student By: Oytisa O 22
Cont’d
• To communicate between systems we need to
standardise the messages between them

04/05/2022 for student By: Oytisa O 23


Important Applications of web mapping
Outline
• Address Matching, Routing
• Real-Time Maps
• Location-Based Services
• Collaborative web map
• Volunteered Geographic Information

04/05/2022 for student By: Oytisa O 24


Address Matching, Routing
• A classic use case of web maps is the display of the
results of address searches and route-finding
operations.
• Typically, the searches and route-finding algorithms
are executed on the web server
• The resulting map is sent back to the client, with the
search result highlighted.

04/05/2022 for student By: Oytisa O 25


• Interactivity can be used for the display of additional
information (such as points of interest, accompanying
text at junctions, etc.).

04/05/2022 for student By: Oytisa O 26


Google maps routing service

04/05/2022 for student By: Oytisa O 27


mapquest address matching

04/05/2022 for student By: Oytisa O 28


Real-Time Maps
• Real-time web maps fully exploit the strengths of web
maps.
• Sensors send their data to a central server repository
which is used to generate real-time (or near-real-time)
maps on demand.
• Examples are weather maps, traffic maps, maps for
fleet management, etc.

04/05/2022 for student By: Oytisa O 29


• Once a map is loaded it can update the dynamic
information on demand, without having to reload the
application or base map.

04/05/2022 for student By: Oytisa O 30


Vehicle tracking web map

04/05/2022 for student By: Oytisa O 31


GPS vehicle tracking web application

04/05/2022 for student By: Oytisa O 32


Location-Based Services (LBS)
• LBS need maps to display points of interest within
the current geographic context of the user.
• Positioning technologies based on mobile antennas,
wireless signals or GPS satellites provide the current
positioning information with various accuracy level.
• Mobile web maps need to be specially designed,
taking into account the small screen space and low
resolution of mobile displays.

04/05/2022 for student By: Oytisa O 33


• Most of the time, maps for location-based services are
generated automatically from spatial databases.

Cont’d
• LBSs are services offered through a mobile phone and
take into account the device's geographical location
• An LBS, for example, can point a user to the nearest
restaurant

04/05/2022 for student By: Oytisa O 34


Collaborative web maps
• They are still new and relatively complex to
implement, but show a lot of potential.

04/05/2022 for student By: Oytisa O 35


• The idea is that, like in the Wikipedia project, various,
distributed people collaborate to create and improve
maps on the web.
• Technically, an application allowing simultaneous
editing across the web would have to ensure that
geometric features being edited by one person are
locked, so that they cannot be edited by other
persons at the same time.

04/05/2022 for student By: Oytisa O 36


Cont’d
• Also, a minimal quality check should be made,
before data goes public.
• Some projects working on collaborative maps are
OpenStreetMap, OpenAdresses, Google Maps and
WikiMapia.

Volunteered Geographic Information


• It is a type of collaborative web maps

04/05/2022 for student By: Oytisa O 37


• VGI is the harnessing of tools to create, assemble, and
disseminate geographic data provided voluntarily by
individuals (Goodchild, 2007)
• Some examples of VGI are WikiMapia,
OpenStreetMap, and Google Map Maker.
• OpenStreetMap is a collaborative project that collects
geographic data from hundreds of thousands of
contributors worldwide.

04/05/2022 for student By: Oytisa O 38


04/05/2022 for student By: Oytisa O 39
OSM iD (in-Browser editor)

04/05/2022 for student By: Oytisa O 40

You might also like