2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Exploiting Web Services for Exploiting Web Services for Meteorological ApplicationsMeteorological Applications
Jozef MatulaJozef [email protected]@iblsoft.com
IBL Software EngineeringIBL Software Engineering
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
OutlineOutline
• What we do…
• Building forecasting application – what protocols/formats to use?
• IBL’s contribution to future MetOceanDWG interoperability experiments.
• My goal is…
…to get the REAL meteorological forecasting tool into my boss’ iPhone!
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
WHAT WE DO...WHAT WE DO...
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
What is IBL Visual Weather?What is IBL Visual Weather?
• Strategic Weather Information Forecasting Tool – UK Met Office project for workstation upgrade
• Visual Weather = Meteorological Workstation SW:– Met. data processing and visualisation– Interactive forecasting tools– Forecast production and workflow
management– Batch production– Extensibility with Python API– Web services (WMS, WCS, WFS, JMBL, Python)
• Everything in one box or Client-Server• Highly configurable and integration-capable
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
OGC Web Services in Visual WeatherOGC Web Services in Visual Weather
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Python Web Services in Visual Python Web Services in Visual WeatherWeather
• Use of Visual Weather’s Python API together with scripting allow rapid development and instant deployment of web services in mod_python style
import IBL.Kernel; from IBL.Net import apache
def getTemperature(req, station):
e = K.Expression( "@station v6[5,2] Fsynop_latest$sv52$C")
e.setArgument("station", K.mkStation(station))
tSYNOP = e.eval()
req.write(str(tSYNOP["temperature"].
toValue(K.u.T_CELS)))
return apache.OK
http://my-server/service/getTemperature?station=LZIB
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
The missing pieceThe missing piece
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
COMMON REQUIREMENTSCOMMON REQUIREMENTS
We decided to build a web 2.0 based forecasting workstation but what are the
http://www.projectcartoon.com/cartoon/63775
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Decomposition of the met applicationDecomposition of the met application
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
How to meet requirements? (1)How to meet requirements? (1)
Synoptic map• Approx. 1500
observations in Europe (hourly)
• About 20 parameters needed
• WMS 100kB PNG• SOS/WFS 3MB GML:
– how to get time axis?
– complicated visualisation
• WCS ?
Miranda IM.lnk
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
How to meet requirements? (2)How to meet requirements? (2)Isolines from NWP
data• WMS this works –
tens of kBs.• WFS isoline could be
considered as feature• WCS
– Size effective output formats are hardly usable by simple clients
– Isolines algorithm is rather complicated.
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
How to meet requirements? (3)How to meet requirements? (3)
Meteograms & Cross-sections (graphs)
• WMS non-geospat. CRS
• SOS/WFS – tens of kB of GML
data– complexity of
visualisation depends on used client platform abilities
• WCS ?
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
How to meet requirements? (4)How to meet requirements? (4)
Thermodiagram (profile)• Single site• >5 parameters needed• WMS non-geospat.
CRS• SOS/WFS 10kB GML +
little bit of processing• WCS ?
– NWP profiles need hundreds MB of gridded data
• Size of image is approx. size of GML data.
Miranda IM.lnk
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
How to meet requirements? (5)How to meet requirements? (5)
Weather features• Single site• Tens of feature types
(single point or smooth polylines, text, areas)
• WMS Read only• WFS small GML, but
complicated visualisation.
• WCS no
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
THERE ARE MULTIPLE WAYSTHERE ARE MULTIPLE WAYSTo open a can
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Very simple conclusionsVery simple conclusions
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Dummy MAPsDummy MAPs in in the the Web Web MAP MAP ServiceService
• Map is ONLY a picture so once you get a picture you usually loose:– Metadata – you don’t know what you got -
(time, content description, etc.)– Spatial localisation – (except formats like
GeoTIFF, JPEG2000)
• Map is a picture, that’s why anyone can work with it simply.
• Reference system of the image is CRS:1!
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Pushing WMS behind its limits (1)Pushing WMS behind its limits (1)
TIME ISO8601DIM_RUN ISO8601DIM_FORECAST ISO8601 Duration or +XELEVATION Vertical level with unitDIM_STATION WMO station numberDIM_PLACE Place of time cross-section/meteogram: DIM_PLACE=EPSG:4326[1.5;43.7] DIM_PLACE=EPSG:54004[18627e3;4990e3] Horizontal route (space separated): DIM_PLACE=LZIB EPSG:4326[1;43] EHAM
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
GetMap with TIME dimension
HTML GetFeatureInfo with TIME
HTML empedded <img> GetMap with TIME & DIM_STATION
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Pushing WMS behind its limits (3)Pushing WMS behind its limits (3)
...&REQUEST=GetMap&CRS=CRS:1&BBOX=0,0,639,479&...
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Pushing WMS behind its limits (4)Pushing WMS behind its limits (4)
<Dimension name="PLACE“ units="CoordinateOrStationIdList“ default="LZIB EDDF"> LZIB EDDF, CRS:84[0;0] EPSG:4326[1e4;2.0e5]</Dimension>
There is infinite number of possible values for this dimension!
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Pushing WMS behind its limits (5)Pushing WMS behind its limits (5)
...&REQUEST=GetMap&CRS=IBL:SKEWT&BBOX=0,0,1,1&...
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
HOW WE PUT EVERYTHING HOW WE PUT EVERYTHING TOGETHERTOGETHER
Finally to get closer to what my boss wanted or...
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Decisions madeDecisions made
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
““Flexi Weather”Flexi Weather”
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
Future of Flexi WeatherFuture of Flexi Weather
2nd Workshop on the Use of GIS/OGC standards in Meteorology, 23rd-25th Nov 2009, Toulouse, France
IBL’s Contribution to MetOcean DWGIBL’s Contribution to MetOcean DWG