WCS2.00_MetOcean_Profille_Frascati

advertisement
®
Hosted and Sponsored by ESA/ESRIN
The WCS2.0 Met-Ocean Profile
86th OGC Technical Committee
Frascati, Italy
Peter Trevelyan
23rd September 2013
Copyright © 2013 Open Geospatial Consortium
Agenda
• Agenda items
• Progress so far this year:
• An explanation of the WCS2.0 core profile:
• A brief description of each of the WCS2.0 operations:
• The key findings of the working group that met in Stennis
space centre;
• Specific encodings;
OGC
®
Copyright © 2013 Open Geospatial Consortium
The Route to a WCS2.0 profile for Met-Ocean?:•
•
•
•
•
A set of use cases has been created and was submitted
to the Met-Ocean dwg.
Formed a “working group” to look at creating a core Met
Ocean profile and if necessary propose changes to the
WCS2.0 core definition and if required extend the core
profile.
Work within the OGC WCS swg (chaired by Peter
Baumann);
The Met Ocean dwg group to ensure any proposals are
“fit for purpose”.
A workshop was held at USN (Stennis NASA USA) and
the outcomes of the meeting have been published.
OGC
®
Copyright © 2013 Open Geospatial Consortium
The Route to a WCS2.0 profile for Met-Ocean?:• List of Attendees:–
–
–
–
–
–
–
–
–
–
–
–
Dr Roy Ladner, US Navy, Naval Meteorology and Oceanography Command
Peter Baumann, Jacobs University
Pete Trevelyan, UK MetOffice
Jeremy Tandy, UK MetOffice
Yann Genin, Meteo-France
Eric Wise, US Air Force Weather Agency
Chris Kuhl, US Air Force Weather Agency (Northrup Grumman)
Joe Work, US Air Force Weather Agency (Raytheon)
Bryant Obando AFLCMC (Mitre)
Jason Pyron ()
Henry Pugh (USN)
Chris Moreau (GD
OGC
®
Copyright © 2013 Open Geospatial Consortium
What is The WCS2.0 Core ?:• The WCS interface supports retrieval of geospatial
coverage data – i.e. digital geospatial information
representing a space/time-varying phenomena.
• The WCS interface specifies the following operations that
may be invoked by a WCS client and performed by a WCS
server:
– GetCapabilities – This operation allows a client to request
information about the server’s capabilities and coverage's offered.
– DescribeCoverage – This operation allows a client to request
detailed metadata on a selected coverage's offered by a server.
– GetCoverage – This operation allows a client to request a coverage
comprised of selected range properties at a selected set of spatiotemporal locations, expedited in some coverage encoding format.
OGC
®
Copyright © 2013 Open Geospatial Consortium
Some Key Challenges:• A model run is not a coverage in itself as, for example, the
same parameter may well have different vertical
coordinates systems, e.g. isobaric, height above ground,
height of sea level, ICAO height, maximum wind level etc.
A model run is really a collection of coverage's.
• NWP output often being irregular in time so it is difficult to
even describe a coverage e.g. temperature on isobaric
levels as 4D coverage. The following diagram illustrates
this:-
OGC
®
Copyright © 2013 Open Geospatial Consortium
Some Key Challenges:200.0hPa
(8,6)
250.0hPa
300.0hPa
500.0hPa
850.0hPa
(1,1)
950.0hPa
1000.0hPa
(0,0)
(1,0)
T+0
T+6
Missing
Present
T+12 T+18
Time
T+24 T+30 T+36 T+42 T+48
Some Key Challenges:• The typical output of a NWP model run will have thousands
of fields, each of which can be considered to be “a
coverage”, this number is unmanageable and a method of
grouping them is needed.
• A concept was introduced that treats the contents of NWP
(a numerical weather prediction model) as a collection of
coverage's grouped by common vertical coordinate. This
will reduce the number of coverage's to a manageable
level. These “coverage collections” will have an identifier or
Collectionid’s, this identifier may have a semantic meaning,
e.g. a model name, it is used in GetCapabilities and
DescribeModelRun
• The vertical level types is based on the Met-Ocean WMS
best practice.
®
OGC
Copyright © 2013 Open Geospatial Consortium
Some Key Challenges:• These are expressed as “coverage Subtypes in the
DescribeModelRun response (see later),
–
–
–
–
ComputedSurface;
VerticalDependency;
NoVerticalDependency;
NamedRange;
• The grouping of coverage's by vertical level type enables
the description of a “4D” coverage.
• The GetCapabilities response to list the reference times for
each collectionId. The collectionId may be semantic.
• Models may be grouped together to indicate a common
characteristic e.g. Atmospheric models”, “Aviation services”
etc.
OGC
®
Copyright © 2013 Open Geospatial Consortium
Some Key Challenges:• A new service called “DescribeModelRun” is needed to list
the coverage’s contained (CoverageIds’) for a given a
CollectionId.
• A NWP model will have a “reference” time indicating a start
time . The forecast time is always relative to this time.
• A simple service e.g. “latest convection forecast” may be
considered as a forecast run with only one available
reference time.
• In order to overcome the problem of NWP output often
being irregular in time and in the vertical a mask will be
used in the “Describe Coverage response” to mask out
missing data.
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCapabilities Response
The following is a fragment showing the Met-Ocean
extension
<metocean:ModelrunSummary>
<metocean:memberList>
<metocean:ModelRunCollectionSummary>
<metocean:CollectionId>UK-Global_model</metocean:CollectionId>
<gml:name>The UK operational Global Model</gml:name>
<ows:WGS84BoundingBox>
<ows:LowerCorner>-180 -90</ows:LowerCorner>
<ows:UpperCorner>180 90</ows:UpperCorner>
</ows:WGS84BoundingBox>
<metocean:ReferenceTime>
<metocean:referenceTimeListProperty>
<metocean:ReferenceTimeList>
<metocean:referenceTime>2012-12-15T00:00:00Z</metocean:referenceTime>
<metocean:referenceTime>2012-12-15T12:00:00Z</metocean:referenceTime>
<metocean:referenceTime>2012-12-16T00:00:00Z</metocean:referenceTime>
Copyright © 2013 Open
<metocean:referenceTime>2012-12-16T12:00:00Z</metocean:referenceTime>
Geospatial Consortium
Describe Model Run :•
•
•
Example Request:– http://metofficeserver.gov.uk/demo/ows? service=wcs&version=2.0.0&
request=DescribeModelRun& ReferenceTime ="2012-05-15T00:00:00Z"&
collectionId=UK_Global_model
Note the use of the O&M model for the response document;
<metocean:ModelRunDescription>
<metocean:collectionId>UK_Global_model</metocean:collectionId>
<gml:name>The UK operational Global Model</gml:name>
<ows:WGS84BoundingBox>
<ows:LowerCorner>-180 -90</ows:LowerCorner>
<ows:UpperCorner>180 90</ows:UpperCorner>
</ows:WGS84BoundingBox>
<metocean:referenceTime>
<gml:TimeInstant>2013-05-15T12:00:00Z</gml:TimeInstant>
</metocean:referenceTime>
<metocean:sourceObservationProperty>
•
Copyright © 2013 Open
Geospatial Consortium
Describe Model Run :• Note the use of the coverage subtype for the CoverageId
• The CoverageId is a an identifier and should not be parsed as all the
qualifying information is encoded.
•
<metocean:coverageIdList>
<metocean:CoverageSummary>
<wcs:CoverageId>UK_GLOBAL_2013-05-15T12:00:00Z_ISBL</wcs:CoverageId>
<wcs:CoverageSubtype>VerticalDependency</wcs:CoverageSubtype>
<metocean:CoverageDescription coverageDescription="IsobaricSurface"
xlink:href="www.codes.wmo.int/GRIB2/table4.5/IsobaricSurface"/>
</metocean:CoverageSummary >
<wcs:CoverageSummary>
•
Copyright © 2013 Open
Geospatial Consortium
Describe Model Run Response
GML ModelRunDescription
SF_SamplingFeature
«FeatureType»
spatialSamplingFeature::SF_SpatialSamplingFeature
+
positionalAccuracy :DQ_PositionalAccuracy [0..2]
«FeatureType»
«FeatureType»
observ ation::OM_Observ ation
General Feature
+featureOfInterest
+propertyValueProvider
Domain
+ parameter :NamedValue [0..*]
Instance::GFI_Feature
1
0..* + phenomenonTime :TM_Object
+ resultQuality :DQ_Element [0..*]
+ resultTime :TM_Instant
+ validTime :TM_Period [0..1]
+sampled_Feature
«instanceOf»
«FeatureType»
samplingSurface::
SF_SamplingSurface
«instanceOf»
«metaclass»
General Feature Model::
GF_FeatureType
+featureOfInterest
+
+
+
AbstractGML
definition :CharacterString
isAbstract :Boolean = false
typeName :LocalName
«FeatureType»
feature::AbstractFeature
+
boundedBy :GM_Envelope [0..1]
«DataType»
ModelRunDescription
-
+sourceObservationProperty
«FeatureType»
SourceObserv ation
collectionid :NCName
gml:boundedby :gml:Envelope
referenceTime :gml:TimeInstant
«Composition»
+coverageIdList
«DataType»
ModelRunDescriptions
1..*
«DataType»
Cov erageSummary
«property»
- CoverageDescription :string
OGC
®
Copyright © 2013 Open Geospatial Consortium
«DataType»
w cs:Cov erageSummary
DescribeCoverage:• Example Request:– http://metofficeserver.gov.uk/demo/ows? service=wcs& version=2.0.0&
DescribeCoverage & subset=ReferenceTime("2013-05-01T00:00:00Z")&
CoverageId=Atmospheric_NWP_Models_2013-05-15T00:00:00Z_ISBL
request=
• The big addition is the use of data masks:
• A data mask is in fact a coverage (ReferenceableGridCoverage)
• The domain set is a ReferenceableGridByArray
• <metocean:dataMaskProperty>
<metocean:DataMasks>
<metocean:dataMasksProperty>
<metocean:DataMaskmemberList>
<metocean:fieldMask fieldName="sensibleTemperature" xlink:href="#maskId_AT">
<gmlcov:ReferenceableGridCoverage gml:id="maskId_AT">
OGC
®
Copyright © 2013 Open Geospatial Consortium
DescribeCoverage:• A field is associated with a data mask:• Note that a mask can be re-used:<metocean:MemberList>
<metocean:dataMask fieldName="airTemperature" xlink:href="#maskId_AT/">
<metocean:dataMask fieldName="airTemperature" xlink:href="#maskId_AT/">
<metocean:dataMask fieldName="relativeHumidity" xlink:href="#maskId_HP/">
</metocean:MemberList>
OGC
®
Copyright © 2013 Open Geospatial Consortium
Describe Coverage Response
GML DecribeCov erage
SF_SamplingFeature
«FeatureType»
«FeatureType»
observ ation::OM_Observ ation
General Feature
+featureOfInterest
Domain
Instance::GFI_Feature +propertyValueProvider
+ parameter :NamedValue [0..*]
1
0..* + phenomenonTime :TM_Object
+ resultQuality :DQ_Element [0..*]
+ resultTime :TM_Instant
+ validTime :TM_Period [0..1]
«FeatureType»
spatialSamplingFeature::SF_SpatialSamplingFeature
+
positionalAccuracy :DQ_PositionalAccuracy [0..2]
+sampled_Feature
«FeatureType»
samplingSurface::
SF_SamplingSurface
+featureOfInterest
«instanceOf»
«instanceOf»
AbstractGML
«FeatureType»
feature::AbstractFeature
+
«FeatureType»
SourceObserv ation
«metaclass»
General Feature Model::
GF_FeatureType
boundedBy :GM_Envelope [0..1]
+
+
+
definition :CharacterString
isAbstract :Boolean = false
typeName :LocalName
+sourceObservationProperty
«DataType»
Cov erageDescription
-
+gmlcov:metadata
«DataType»
gmlcov :extension
«DataType»
MetOceanCov erageMetadata
+extensionProperty
coverageid :NCName
-
dataMaskProperty :DataMasks
dataMaskReferenceProperty :DataMaskReferences
«Composition»
«DataType»
Cov erageDescriptions
«DataType»
DataMasks
+dataMasksProperty
«DataType»
DataMaskReferences
+dataMaskReferenceProperty
«DataType»
DataMaskmemberList
«property»
- fieldMask :gmlcov:ReferenceableGridCoverage [1..*]
OGC
®
Copyright © 2013 Open Geospatial Consortium
«DataType»
MemberList
-
dataMask :string [1..*]
Describe Coverage Data Mask
(metocean:dataMaskProperty)
ReferenceableGridByArray
1000.0 0
1000.0 6
1000.0 12
1000.0 18
1000.0 24
1000.0 30
1000.0 36
1000.0 42
1000.0 48
950.0 0
950.0 NaN
950.0 12
950.0 18
950.0 24
950.0 30
950.0 36
950.0 NaN
950.0 48
850.0 0
850.0 6
850.0 12
850.0 18
850.0 24
850.0 30
850.0 36
850.0 42
850.0 48
500.0 0
500.0 6
500.0 12
500.0 18
500.0 24
500.0 30
500.0 36
500.0 42
500.0 48
300.0 0
300.0 6
300.0 NaN
300.0 18
300.0 24
300.0 30
300.0 36
300.0 42
300.0 48
250.0 0
250.0 6
250.0 12
250.0 18
250.0 24
250.0 30
250.0 36
250.0 42
250.0 48
200.0 0
200.0 6
200.0 12
200.0 18
200.0 24
200.0 30
200.0 36
200.0 42
200.0 48
gml:rangeSet
1
1
0
0
1
0
0
1
1
0
1
1
1
1
1
1
0
1
0
1
0
1
1
0
1
0
0
1
0
1
0
1
0
1
1
1
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
Extra GetCoverage Operations:• The Met-Ocean community has made extensive use of a
data model used by NetCDF (CDM) that is closely related
to CSML (Climate Science Markup Language).
• The most common feature types are:-Point Collection,
GRID, GRID series, Trajectories, Profiles and Time/Cross
Sections.
• Many use cases are based on these feature types.
• The goal was to design a web interface (built on WCS2.0)
to support these feature types i.e. GetCoverage operations
need to support these feature types.
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCoverage:
• The GetCoverage request encodes the type of extraction
based on a simple trim or slice; it consists of:• The Coverage id (mandatory);
• A Trim operation that requires a low and high trim
point;
• A Slice operation that reduces the dimension by one
and requires the slice axis;
• The dimension or axis name that is to be trimmed or
sliced.
• Service Parameters;
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCoverage:
class GetCov erage
«Data Type»
RequestBase
+
+
+
service: string = WCS {readOnly}
version: string
extension: Any [0..*]
• The basic Trim and Slice
Operations
«DataType»
GetCov erage
+
+
request: CharacterString = GetCoverage {readOnly}
coverageId: NCName
+dimensionSubset
0..*
«DataType»
DimensionSubset
+
dimension: NCname
Trim
«DataType»
DimensionTrim
+
+
trimLow: Real [0..1]
trimHigh: Real [0..1]
OGC
«DataType»
DimensionSlice
+
slicePoint: Real
The primary use of
trimming is to sub-set the
data on the original grid
®
Copyright © 2013 Open Geospatial Consortium
Slice
Reducing the
dimensions i.e.
extracting a point,
profile or 2D level
using a simple
slice
GetCoverage MetOC:
• The extensions are designed to
– To extend the output feature types e.g.
• Cross sections;
• Vertical profiles;
• 2/3/4D trajectories;
• Time Series
– To extend operations e.g.
• Interpolation;
• Re-projection;
• Aggregation.
• It is not the intention to go thro each extension, but to
outline the principles.
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCoverage MetOC Adaption:
• Extending the simple slice and trim:– Add a UOM attribute to SlicePoint.
• SlicePoint has type “string” which is not easy to validate:
– Use Parameter Subset:• This allows the user to introduce extra output coverages such as
trajectory and cross sections that require a base line defines as a
set of way points.
• Introduce a new element fieldSubset:– fieldSubset allows the extraction of a specific parameter name
belonging to a Coverage identified by a unique CoverageId.
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCoverage MetOC:
• Interpolation and re-projection:
– Use the existing work from the image community to define a
subsetting CRS and output CRS.
• The subsetting CRS defines the CRS on which the subsetting
parameters are based. If it is omitted then the original CRS is used.
• The subsetting CRS may be compound e.g. Map CRS (54004)
combined with another axis e.g. a vertical CRS (isobaric)
• An output CRS that defines the re-projection CRS.
– New Element: TrimGridOffset:- Interpolation interval
• This is used to define the interpolation interval:
• <wcsmo:TrimGridOffset uomLabels=" Deg ">1.0</wcsmo:TrimGridOffset>
OGC
®
Copyright © 2013 Open Geospatial Consortium
GetCoverage MetOC:
• An example:- This trajectory has three dimensions i.e. a width, a
height and a specified number of sample points along the direction of
travel.
• The way points of the trajectory are defined (in this example) in latitude,
longitude, height and time. The sample points are equally spaced in
time i.e. Using the time of the first and last points.
OGC
®
Courtesy of NCAR
Copyright © 2013 Open Geospatial Consortium
GetCoverage MetOC:
• The fieldSubset is used to specify the parameters e.g. temperature
and wind
• The subsetting CRS is used to specify the CRS of the Trim bounds
e.g. epsg 4326 and Geographic height.
• The Trim bounds are used to specify the depth and lateral extents, in
this example the axis names are Corridor lateral (UOM Km), Corridor
vertical (UOM Km) and Corridor_Axis_Sample_Size i.e. the number of
sample points.
• The gridOffsets represent the resolution of the resulting corridor grid in
each of the three dimensions, in this example 0.5Km in the vertical and
5Km in the horizontal.
• The OutputFeatureDefinition that is used to specify the way points
specified in the subsetting CRS.
OGC
®
Courtesy of NCAR
Copyright © 2013 Open Geospatial Consortium
Questions:-
Thanks
OGC
®
Copyright © 2013 Open Geospatial Consortium
Download