Download presentation
Presentation is loading. Please wait.
Published byPiers Gervase Higgins Modified over 9 years ago
1
David Blasby The Open Planning Project New York
2
Goals Explain what a WFS and WMS are, and when to use them Be able to create simple spatial web applications Understand a bit about Geoserver
3
1. Introduction to Open Web Services 2. WFS basics 3. WMS basics 4. Using WFS and WMS together 5. Example Web Services Dynamic Features - Custom SLD & making a WFS request to construct a SLD Dynamic adding of Features to the dataset
4
User Client application Request in known format Response in known format Base data Any server that implements the Service specification Known operation Basic Open Web Services An Open Web Service is a Web Services that: has a well known format for what the request looks like has a well defined meaning for how to execute the request has a well known format for the what the response looks like the definition is codified in a Specification Document
5
Open Web Services Underlying Datasets - Databases, Shapefiles, Imagery The WMS is concerned with rendering maps The WFS is concerned with accessing and updating the underlying datasets WMSWFS
6
Underlying Datasets - Databases, Shapefiles, Imagery GetCapabilities GetFeature GetFeatureWithLock DescribeFeatureType Transaction LockFeature WFS Requests GetCapabilities GetMap GetFeatureInfo DescribeLayer GetLegendGraphic WMS Requests Internet User The OGC Services - WFS and WMS WFSWMS
7
What to use the WFS services for A WFS allows uniform direct access to the features stored on a server. Use a WFS when you want to perform actions such as: query a dataset and retrieve the features find the feature definition (feature's property names and types) add features to dataset delete feature from a dataset update feature in a dataset lock features to prevent modification What to use the WMS services for A WMS allows for uniform rendering access to features stored on a server. Use a WMS when you want to perform actions such as: Producing Maps Very simple Querying of data WFS and WMS: when to use
8
WFS 1 WMS 1 User Spatial Web Application Base datasets 1 & 2 WFS 2 Base datasets 3 & 4 WMS 2 Using WFS and WMS together
9
The WFS Underlying Datasets - Databases, Shapefiles, GetCapabilities GetFeature GetFeatureWithLock DescribeFeatureType Transaction LockFeature WFS Requests Internet User WFSWMS
10
The GetFeature Service The GetFeature service allows you to treat your datasets like a spatial database and run queries on it. SELECT polygon_outline, population, area FROM USAstates WHERE stateName = ‘New York’; The request specifies three things: What dataset to query (also called a “FeatureType”) What columns to return A filter to select a subset of features
11
GetFeature - Feature 1 Feature 2 Feature 3 Feature 4 Feature 5 Feature 2 Feature 4 Feature Filter Evaluator XML Filter Expression pass fail Filter is the basis for most of the OGC specifications
12
WHERE Geometry Intersects BoundingBox Geometry 13.0983,31.589935.5472,42.8143 WHERE stateName = ‘New York’ stateName New York Constructing -
13
GetFeature requests FROM... SELECT... WHERE...
14
Interpreting GetFeature Results XML document XML Schema
15
Adding Functionality to Filters cfcc 0 1 A These Function are also available for use in SLD. Geoserver allows you to easily add any Java function or class.
16
Transaction Transactions allow you to update, delete, and insert features in a manner very similar to a spatial database. UPDATE USAstates SET population = 8000000 WHERE stateName = ‘New York’; DELETE FROM USAstates WHERE stateName = ‘New York’; INSERT INTO USAstates (stateName, population) VALUES (‘New York’,8000000);
17
UPDATE... SET... WHERE... Update
18
Insert GML Version of Feature
19
Delete
20
ACID A good WFS (like Geoserver) will execute the transactions in an ACID manner. This means that your command set will either completely succeed or completely fail - you do not have half-executed transactions. NOTE: A single can have any number of Inserts, Deletes, and Updates in it. Geoserver supports this for all the file and database formats.
21
Transaction Validation Check that the feature is internally consistent: Geometry is valid Properties are in the “accepted” range Check that the feature is external consistent: Topological rules No houses in the Ocean This is Geoserver specific
22
Feature Versioning Geoserver is currently adding support for automatically versioning features (and datasets) so changes can be rolled back or analyzed. This is Geoserver specific
23
The WMS Underlying Datasets - Databases, Shapefiles, Imagery GetCapabilities GetMap GetFeatureInfo DescribeLayer GetLegendGraphic WMS Requests Internet User WFSWMS
24
GetMap Features Renderer SLD Configuration User request (SLD?)
25
Styled Layer Descriptor (SLD) Basics In the most basic form (a SLD used to render a layer) will contain a set of elements. Each element contains two things: A to specify what Features this Rule applies to A set of Symbolizers that actually do the rendering. …. Deep water Lakes... …. Colour Dark Blue... …. Shallow water Lakes... …. Colour Light Blue...
26
SLD-POST A user can also send an SLD file to the WMS server as part of the GetMap request. In this manner, the SLD file will specify what layers to render and also how to render them. USAlakes lakeStyle Equivalent of LAYER= USAlakes,STYLE= lakeStyle USAlakes... …. Deep water Lakes... …. Colour Dark Blue......
27
SLD 1.1 InlineFeatures Normally, the SLD will refer to local (hosted inside the WMS) layers, but it can also communicate with remote WFS servers. The user can also supply small sets of features within the actual SLD GetMap Request. Inline Face... … … eyes... … face... …
28
Web Applications using WFS and WMS WFS 1 WMS 1 User Spatial Web Application Base datasets 1 & 2 WFS 2 Base datasets 3 & 4 WMS 2
29
Rendering Temporary Features in Maps using SLD InlineFeature Its quite difficult to interpret these numbers - why don’t we show it on a map?
32
Demonstration of BBOX application
33
Highlighting features using user specified SLD and WFS queries User Clicks on Map
34
User Clicks Query WFS Find Street Name Create SLD Convert to world coordinates XMLHttpRequest - GetFeature WFS GML WMS GetMap with SLD
35
GetFeature request GetFeature response Extract road name
36
SLD for GetMap request Highlight all feature with that name
37
Demonstration of click-to-highlight app
38
A simple web application using WFS and WMS popup preview for a mouse “hover” click on a feature; go to its website click on map; add a new feature
39
User Hovers Query WFS Anything returned? Convert to world coordinates XMLHttpRequest - GetFeature WFS GML no yes Extract thumbnail URL Execute Popup
40
User Clicks Query WFS Anything returned? Convert to world coordinates XMLHttpRequest - GetFeature WFS GML yes no Get Info From User Visit Site XMLHttpRequest - Transaction WFS Success/Fail
41
Demonstration of Web Application
42
TOPP Geoserver RoadMap Geotools improvements to handle more “advanced” data Validation and Feature Versioning GeoCollaborator - GeoWiki and tools for collaborative mapping OpenSDI Re-architecture for plugable services and configuration Hosting Data (i.e. TIGER) via WMS and WFS Web Coverage Server (WCS) - initial release available on branch. Improved performance WFS 1.1
43
Geoserver Users
44
Questions? David Blasby The Open Planning Project New York
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.