Rest and wfs interfaces
Download
1 / 33

REST and WFS Interfaces - PowerPoint PPT Presentation


  • 144 Views
  • Uploaded on

REST and WFS Interfaces. Usage in Digital SNOWTAM Trial. AIXM 5.1 data WFS. Trial – Application architecture. soon. Contents. REST and WFS WFS Introduction REST Introduction REST and WFS in the Digital SNOWTAM Trial Examples. WFS. Web Feature Service

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'REST and WFS Interfaces' - argyle


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Rest and wfs interfaces

REST and WFS Interfaces

Usage in Digital SNOWTAM Trial


Trial application architecture

AIXM 5.1 data

WFS

Trial – Application architecture

soon

REST and WFS Interfaces


Contents
Contents

REST and WFS

WFS Introduction

REST Introduction

REST and WFS in the Digital SNOWTAM Trial

Examples

REST and WFS Interfaces


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


Wfs what does it enable
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


Wfs basic functions
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


REST

Representational State Transfer

An architectural style

A technology agnostic abstraction

The Web is RESTful

REST and WFS Interfaces


Rest key principles
REST - Key principles

Identifiable Resources

Representations

Hypermedia

Uniform Interface

Actions – Verbs

Client-server

Transparency and layering

Type of data

REST and WFS Interfaces


Rest resources
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


Contents1
Contents

REST and WFS

WFS Introduction

REST Introduction

REST and WFS in the Digital SNOWTAM Trial

Examples

REST and WFS Interfaces


Wfs implementation
WFS - Implementation

REST and WFS Interfaces


Rest resources and time
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


Rest representations
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


Rest hypermedia
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


Rest uniform interface
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


Rest actions
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


Rest client server interactions
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


Rest transparency layering
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


Rest why it is used
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


Rest architecture
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


Rest implementation
REST - Implementation

Only GET is needed for the trial.

REST and WFS Interfaces


Rest workflow
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


Rest base url
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


Rest find airports
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


Rest query an airport
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


Contents2
Contents

REST and WFS

WFS Introduction

REST Introduction

REST and WFS in the Digital SNOWTAM Trial

Examples

REST and WFS Interfaces


Rest 1 create contamination
REST - 1 – Create Contamination

Use Bromma to create a contamination

REST and WFS Interfaces


Rest 2 use rest to find the airport
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


Rest 3 find snowtam text
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


    Rest 4 get airport data
    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


    Rest 5 get runway contamination
    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


    Rest 6 time based
    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


    Aixm 5 1
    AIXM 5.1

    TEMPDELTA and a BASELINE

    REST and WFS Interfaces


    ad