1 / 33

REST and WFS Interfaces

Learn about the use of Representational State Transfer (REST) and Web Feature Service (WFS) interfaces in the Digital SNOWTAM Trial, enabling query, display, and retrieval of geospatial data from multiple sources. Understand the basic functions, key principles, and implementation of REST and WFS. Discover how resources, representations, hypermedia, and uniform interfaces play a crucial role in interacting with resources. Explore the architecture, implementation, and workflow of the REST framework used.

samf
Download Presentation

REST and WFS Interfaces

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. REST and WFS Interfaces Usage in Digital SNOWTAM Trial

  2. AIXM 5.1 data WFS Trial – Application architecture soon REST and WFS Interfaces

  3. Contents REST and WFS WFS Introduction REST Introduction REST and WFS in the Digital SNOWTAM Trial Examples REST and WFS Interfaces

  4. WFS • Web Feature Service • Geographic information service implementation specification based on XML and GML • Allows a client to retrieve and update geospatial data encoded in GML from multiple Web Feature Services. • Specification from OGC and now ISO REST and WFS Interfaces

  5. WFS – What does it enable? • A client can query a data source and then display the result. Data can be combined from many different sources. The ability to display data from many sources allows the data to be combined in new and interesting ways. • Web Feature service has two functions: • First, it can implement geospatial data web service, data provider can establish a web feature service upon on spatial database to provide online data service. • Second, it can implement interoperability between heterogeneous system. Two different GIS software can realise heterogeneous data interoperability, including query, browse, update etc. REST and WFS Interfaces

  6. WFS – Basic Functions • GetCapabilities • operation describes capabilities of the WFS using XML, it indicates which feature types it can service and what operations are supported on each feature type • DescribeFeatureType • operation describes the structure of any feature type it can service • GetFeature • operation services a request to retrieve feature instances REST and WFS Interfaces

  7. REST Representational State Transfer An architectural style A technology agnostic abstraction The Web is RESTful REST and WFS Interfaces

  8. REST - Key principles Identifiable Resources Representations Hypermedia Uniform Interface Actions – Verbs Client-server Transparency and layering Type of data REST and WFS Interfaces

  9. REST - Resources A resource is a real thing that can be acted upon with a request Anything that can be named and identified can be a resource They are found/identified using URIs Unified Resource Identifier = network address ~ URL Collection URI (../airports) Member URI (/airports/732d64d4-cd11) REST and WFS Interfaces

  10. Contents REST and WFS WFS Introduction REST Introduction REST and WFS in the Digital SNOWTAM Trial Examples REST and WFS Interfaces

  11. WFS - Implementation REST and WFS Interfaces

  12. REST - Resources and time Resources can vary over time. The only thing that must be static is the semantic of the mapping (name). REST and WFS Interfaces

  13. REST - Representations Resources are always accessed through a representation Captures the current or intended state of the resource There can be more than one (html, xml, pdf…) HTTP provides well known/standardized content types and content negotiation REST and WFS Interfaces

  14. REST - Hypermedia Allows access to related resources Master-detail and other connections URIs in hypertext links Links should always be provided by the server Enables seemless evolution and distribution Different application and servers REST and WFS Interfaces

  15. REST - Uniform Interface Once you know a resource’s ID, you can interact with it in a single standard way Limited set of operations (verbs) in HTTP: GET, PUT, POST, DELETE Pre-defined semantics allows for optimizations REST and WFS Interfaces

  16. REST - Actions GET Used to read a resource or as a query Should be side-effect free POST Creates a new resource or invoke arbitrary processing PUT Updates the resource with new data and create it if necessary DELETE Removes the resource REST and WFS Interfaces

  17. REST - Client Server Interactions Interactions in both directions: from and to the server Interactions are stateless: no client context stored on the server between requests REST and WFS Interfaces

  18. REST - Transparency / Layering An application can interact with a resource by knowing two things: the identifier of the resource and the action required. That’s all! How the representation is found should be transparent to the user REST and WFS Interfaces

  19. REST - Why it is used Support the provision of AIXM 5.1 data to end-user applications The REST interface shall enable digital users to: Query the Digital SNOWTAM database for the list of airports contained in the database and select one of these airports; Get the list of airport’s features for a selected airport; Get the surface contamination records for each such feature; Get the related feature through xlink:href; Get the SNOWTAM text and the free text translation associated with an Airport. REST and WFS Interfaces

  20. REST - Architecture The REST framework used is Struts 2 REST plugin. See http://struts.apache.org/2.x/docs/rest-plugin.html for more information. REST and WFS Interfaces

  21. REST - Implementation Only GET is needed for the trial. REST and WFS Interfaces

  22. REST - Workflow In order to interrogate the database: request the list of airports select one airport and use the xlink:href to get the details about this airport select a related feature and use the corresponding xlink:href to get the details about it The xlink:href is a URL compliant to the Digital SNOWTAM REST request structure Use the UUID for subsequent calls REST and WFS Interfaces

  23. REST - Base URL Base: http://<server>/<app> E.g. http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept Then add a Suffix: /<REST suffix> REST and WFS Interfaces

  24. REST - Find Airports Suffix: /airportheliports[?designator=<pattern>] There are about 15000 airports/heliports in the database so… Optional Parameter: The pattern is of the form [A-Z*]{1,4} where * is the wildcard character. Pattern samples: EB* matches any designator beginning with EB *BBR matches any designator ending in BBR E*R matches any designator beginning with E and ending with R REST and WFS Interfaces

  25. REST - Query an Airport Suffix: /airportheliports/<gml:identifier>[?features=yes/no&contaminations=yes/no&date=<date&time>] Mandatory parameter: gml:identifier – UUID Optional parameters: date - <date&time> is the search date&time features - specify if xlink:href pointing to related features must be included in the results, e.g. runways, taxiways, etc contaminations - specify if contaminations must be included or not in the result REST and WFS Interfaces

  26. Contents REST and WFS WFS Introduction REST Introduction REST and WFS in the Digital SNOWTAM Trial Examples REST and WFS Interfaces

  27. REST - 1 – Create Contamination Use Bromma to create a contamination REST and WFS Interfaces

  28. REST - 2 – Use REST to find the airport http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/airportheliports?designator=ESSB <ResultList> <AirportHeliportFeature designator="ESSB" id="77a0de0e-277a-4824-a561-2ba779a3658c" href="http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/airportheliports/77a0de0e-277a-4824-a561-2ba779a3658c"/> </ResultList> REST and WFS Interfaces

  29. REST - 3 – Find SNOWTAM Text http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/airportheliports/77a0de0e-277a-4824-a561-2ba779a3658c?features=yes&contaminations=yes • <aixm:annotation> • <aixm:Note> • <aixm:definition>snowtam-icao</aixm:definition> • <aixm:translatedNote> • <aixm:LinguisticNote> • <aixm:note lang="eng"> • SW** ESSB 10090900 (SNOWTAM A)ESSB B)10090900 C)12 F)3/2/2 G)1/1/1 H)2/3/3 BRD ) • </aixm:note> • </aixm:LinguisticNote> • </aixm:translatedNote> • </aixm:Note> • </aixm:annotation> REST and WFS Interfaces

  30. REST - 4 – Get Airport data http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/airportheliports/77a0de0e-277a-4824-a561-2ba779a3658c?features=yes … <aixm:associatedRunways> <aixm:associatedRunway id="12/30" xlink:href="http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/runways/58ea128d-1bbe-47f6-92fe-a8961b4bf5ee"/> </aixm:associatedRunways> … REST and WFS Interfaces

  31. REST - 5- Get Runway contamination http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/runways/58ea128d-1bbe-47f6-92fe-a8961b4bf5ee?contaminations=yes • <aixm:areaContaminant> • <aixm:RunwaySectionContamination> • <aixm:observationTime>2009-10-09T09:00:00Z</aixm:observationTime> • <aixm:depth uom="MM">1</aixm:depth> • <aixm:frictionEstimation>MEDIUM</aixm:frictionEstimation> • <aixm:frictionDevice>BRD</aixm:frictionDevice> • <aixm:obscuredLights>NO</aixm:obscuredLights> • <aixm:layer> • <aixm:SurfaceContaminationLayer> • <aixm:layerOrder>1</aixm:layerOrder> • <aixm:type>WATER</aixm:type> • </aixm:SurfaceContaminationLayer> • </aixm:layer> • <aixm:section>2_THIRD</aixm:section> • </aixm:RunwaySectionContamination> • </aixm:areaContaminant> REST and WFS Interfaces

  32. REST - 6 - Time based http://l-accept-04.pulsar.be/ec-xsnowtam-rest-accept/runways/58ea128d-1bbe-47f6-92fe-a8961b4bf5ee?date=9/10/2009%2009:00&contaminations=yes REST and WFS Interfaces

  33. AIXM 5.1 TEMPDELTA and a BASELINE REST and WFS Interfaces

More Related