Web Feature Service – What and How? Ian Painter - Snowflake Software
From Yesterday ISO application schema UGAS Tools: ShapeChange: Full Moon Hollow World: ISO 191** encoded in UML
For Today Context Building an AIXM5.1 Datastore Introducing WFS Basic Queries Building and deploying a AIXM 5.1 WFS WFS 2.0 WFS for KML
OGC - Advancing Interoperability Interoperability Program (IP ) - a global, innovative, hands-on rapid prototyping and testing program designed to accelerate interface development and validation, and bring interoperability to the market Specification Development Program – Consensus standards process similar to other Industry consortia (World Wide Web Consortium, OMA, etc.) Outreach and Community Adoption Program – education and training, encourage take up of OGC specifications, business development, communications programs Demo & Reports 4 © 2009 Open Geospatial Consortium, Inc.
Some thoughts on AIXM … AIXM* is a Community Schema GML is an Exchange Format not a data format AIXM is all about Data Harmonisation Aka Cross Border Aka Schema Translation Aka Model Translation Other communities are solving similar problems … INSPIRE USING THE SAME STANDARDS
6 Data Harvesting Architecture “Changing the wheels on a moving car”
Building the DONLON AIXM5.1 Datastore
XSD to Relational Mapping
DEMO Parsing and Loading AIXM5.1 using GO Loader
What is a WFS “WFS offers direct fine grained access to geographic information over the internet at the feature and feature property level” Operations: –GetCapabilities, DescribeFeatureType, GetPropertyValue, GetFeature, GetFeatureWithLock, LockFeature, Transaction, CreateStoredQuery, DropStoredQuery, ListStoredQueries, DescribeStoredQueries Types of WFS –Simple – GetFeature with StoredQueries –Basic – Simple + FilterEncoding –Transactional – Basic + Transaction
The Web Feature Service Standard http Get (KVP), http Post (XML), & SOAP (XML) 3 versions: –1.0 – GML 2.2 –1.1 – GML 2.2, 3.1 –2.0 – GML 2.2, 3.1, (still in draft)
The Filter Encoding Specification The Filter Encoding Standard is the query language of WFS XML based Makes extensive use of XPATH Supports –Property –Geometry –Temporal –Xlink resolution (local and remote) Any combination of the above Primarily used in http post and SOAP
Basic Commands GetCapabilites – What can this WFS do and what data does it have GOPublisherWFS?service=wfs&version=1.1.0&request=GetC apabilitieshttp://demo.snowflakesoftware.com:8080/AIXM51_DONLON/ GOPublisherWFS?service=wfs&version=1.1.0&request=GetC apabilities DescribeFeatureType – What is the schema of the data GOPublisherWFS?service=wfs&version=1.1.0&request=Desc ribeFeatureType&typename=* GOPublisherWFS?service=wfs&version=1.1.0&request=Desc ribeFeatureType&typename=* GetFeature – Get me the data GOPublisherWFS?service=wfs&version=1.1.0&request=GetF eature&maxfeatures=10&typename=aixm:AirportHeliporthttp://demo.snowflakesoftware.com:8080/AIXM51_DONLON/ GOPublisherWFS?service=wfs&version=1.1.0&request=GetF eature&maxfeatures=10&typename=aixm:AirportHeliport
DEMO Basic WFS commands
Relational to XSD Mapping
DEMO Creating a AIXM5.1 WFS using GO Publisher Desktop
Basic Filter Queries Retrieve a BASELINE (Property Filter) Get all features within a rectangle (BBOX) Get all features with Property of value Get all features within a Buffer of a Point Get all features within a Buffer of a LineString
DEMO Basic Filter Queries using GO Publisher WFS
Schema Translation 20 Schema Translation Database Records GML Schema Translation WFS Client SQL Query Database Records Data Request Translation Configuration Database table information Graphical user interface is used to defined the translation from the storage model to the XML data model. Translations are uploaded to the server. GO Publisher can publish the same data in different XML formats for different clients. Data Store WFS Client Data Request SQL Query Desktop Server Query Translation - GO Publisher WFS
Temporal Queries Query on timeframe of flight and within 100 nautical miles of flight path
DEMO Temporal Queries using GO Publisher WFS
Geometry Operands (from Capabilities) gml:Envelope gml:Point gml:LineString gml:Polygon gml:Arc gml:Circle
Spatial Operators
Comparison Operators LessThan GreaterThan LessThanEqualTo GreaterThanEqualTo EqualTo NotEqualTo Like Between NullCheck
What Next for WFS WFS 2.0 aka ISO New functionality of Interest for AIXM –GML –Temporal Operators –wfs:AdditionalObjects –Stored Queries –Stronger SOAP Bindings ISO is still in DIS
A WFS is not just for GML KML is extensively being used in WFS KML is an OGC standard KML for Digital NOTAM visualisation Use of Google Network Tags streaming KML from WFS
Bad things you’ve probably already heard on WFS Its too slow Its too bloated Its too complicated The SOAP implementation is too loose
Good things you’ve probably not heard on WFS Its standard based Its mature Its stable Its testable Its off the shelf It can scale & perform
The WFS Specification WFS v , WFS v2.0 ISO Filter Encoding v or FES v2.0 ISO Implementing and compliant WFS: –
Example Snowflake Services AIXM AIXM General Information Ian Painter