SWIM MasterClass - Building SWIM B2B web services using Open Standards
-
Upload
debbie-wilson -
Category
Business
-
view
2.414 -
download
3
Transcript of SWIM MasterClass - Building SWIM B2B web services using Open Standards
Building SWIM B2B web services using Open Standards
Debbie Wilson
Snowflake Software
The Problem
• Development of SWIM is going to be complex and time consuming
• To realise the benefits, organisations need to freely exchange ATM data in a interoperable manner– Both within and outside the industry
• The AIRM and ISRM provide the conceptual blueprint– Data exchange models (AIRM)– Service operations (ISRM)
• SWIM must be developing using Open Standards:– OGC/ISO– W3C
Prototype Primary Goals
• Reduce costs of creating and consuming SWIM services– Replicate the NOP B2B Airspace Activation services
• OGC web services backbone• Provide flexible, open API• Chain tailored services for specific ATM application• Pave the way for ‘model driven’ service creation from the ISRM
• Encourage a dynamic eco-system around ATM data– Demonstrate multiple ways of deploying NOP services
• One logical service, many implementations• Implementations designed for communities consuming them• Demonstrate the benefits of existing open standards
SESAR SWIM B2B Airspace
Service
SWIM Master Class
Download Java Client
EAUP CDR/RSA AIXM 5.1 Response
Data MaintenanceData Maintenance
Oracle 11g Express Edition
OGC WFS 2.0OGC WFS 2.0
RESTful ServicesRESTful Services
SWIM NOP Services
SWIM NOP Services
Airspace Management
Flight Planning
Airspace Design
EAUP CDR/RSA Request/Response
ATM Viewer
Data PublicationData Publication
WFS Stored QueriesWFS Stored QueriesWFS Filter Query
WFS Filter Query
Data Maintenance Architecture• The prototype connected to the EAUP
Condition Routes (CDR) and Restricted Airspace (RSA) web services
• A custom Java client was developed to connect to the B2B Services
• An AIXM 5.1 extension was developed to store EAUP Change Date and Sequence Number
• GO Loader was configured to load BASELINEs & TEMPDELTAs into Oracle
SESAR SWIM B2B Airspace
Service
SWIM Master Class
Download Java Client
EAUP CDR/RSA
Loading data using GO Loader
Configure database schema mapping from
AIXM 5.1 Schema
AIXM 5.1 Extension to support• chainDate• sequenceNumber
Data Publication Architecture
• Two tier web services architecture
Oracle 11g Express Edition
OGC WFS 2.0OGC WFS 2.0
RESTful ServicesRESTful Services
SWIM NOP Services
SWIM NOP Services
Airspace Management
Flight Planning
Airspace Design
EAUP CDR/RSA Request/Response
ATM Viewer
WFS Stored QueriesWFS Stored QueriesWFS Filter Query
WFS Filter Query
OGC Web Feature Service (WFS)
• An OGC WFS is a generic web service that allows users to submit requests to retrieve and maintain features or properties using queries that contain XPath and filter expressions:
IdentifierLogical Comparison
Spatial Temporal
Example Retrieval Requests: • Get all CDR for the EAUP Chain 2012-04-25”, sequence number = 2
• Get all active FIR airspaces that are valid between 2012-04-12 to 2012-04-22 that intersect Route “abc1234”
WFS Stored Queries• Stored queries can be used to limit or tailor the request
for specific applications
• Stored queries were developed to replicate the EAUP requests:– EAUPCDR– EAUPRSA
• Stored queries defined using the CreateStoredQuery operation containing a standard wfs:Query and fes:Filter
CreateStoredQuery Request
and contains request parameters:
• chainDate• sequenceNumber
Each Stored query has an identifier and title
Swim EAUPCDR request
• HTTP Get - KVP request
http://demo.snowflakesoftware.com:8081/SwimEAUPCDR/GOPublisherWFS?
service=WFS&
version=2.0.0&
request=GetFeature&
STOREDQUERY_ID=EAUPCDR&
chainDate=2012-04-25&
sequenceNumber=4
SwimEAUPCDR WFS response
Data Publication Architecture
• Stored queries are used by the RESTful API and SWIM SOAP Wrapper
Oracle 11g Express Edition
OGC WFS 2.0OGC WFS 2.0
RESTful ServicesRESTful Services
SWIM NOP Services
SWIM NOP Services
Airspace Management
Flight Planning
Airspace Design
EAUP CDR/RSA Request/Response
ATM Viewer
WFS Stored QueriesWFS Stored QueriesWFS Filter Query
WFS Filter Query
RESTful API
• REST is a lightweight, loosely couple API • Requests are simply URIs • EAUP RESTful URI Design
– /SwimEAUPCDR/{chainDate}/{sequenceNumber}– /SwimEAUPRSA/{chainDate}/{sequenceNumber}
• RESTful URI pattern was designed to ensure it is "hackable up the tree":
• /SwimEAUPCDR/2012-04-22/
return all EAUPs for specified chainDate
SWIM SOAP Wrapper
• Designed to replicate SWIM B2B Airspace SOAP Service
Transform request into a WFS HTTP Get request (stored query) and submit
Receive WFS Response
If response contains a set of features, extract feature and insert into relevant
SWIM response document (EAUPCDRReply or EAUPRSAReply)
If response contains no features, generate relevant response document
SWIM SOAP Wrapper
Transform request into a WFS HTTP Get request (stored query) and submit
Receive WFS Response
If response contains a set of features, extract feature and insert into relevant
SWIM response document (EAUPCDRReply or EAUPRSAReply)
If response contains no features, generate relevant response document
SWIM SOAP Wrapper
Transform request into a WFS HTTP Get request (stored query) and submit
Receive WFS Response
If response contains a set of features, extract feature and insert into relevant
SWIM response document (EAUPCDRReply or EAUPRSAReply)
If response contains no features, generate relevant response document
Visualising data using ATM Viewer• EAUP CDR & RSA
Visualising data using ATM Viewer• Baseline Points
Technology Benefits
• Single Conceptual service deployed in many styles: SOAP Services, RESTful Services, OGC Services– One logical service, many types of end-point to encourage an eco-
system around ATM data– Fit for purpose services removing barriers for data consumers– Standards based services enabling off the shelf clients– Richer services for finer grained access
• All deployed through standards based configuration– Minimal software development required– Reduced costs and timeframe of implementing SWIM Web Services– Proving the way towards model driven service generation directly
from the ISRM
Experiment with the Services
http://wiki.snowflakesoftware.com/display/LAB/Resources
Download the viewer
http://www.snowflakesoftware.com/2012/10/atm-viewer-for-aixm/
Contact:Ian Painter : [email protected] Debbie Wilson : [email protected]