OGC 13-026r8 - OpenSearch Extension for EO
License Agreement
Permission is hereby granted by the Open Geospatial Consortium, ("Licensor"), free of charge and subject to the terms set forth below, to any person obtaining a copy of this Intellectual Property and any associated documentation, to deal in the Intellectual Property without restriction (except as set forth below), including without limitation the rights to implement, use, copy, modify, merge, publish, distribute, and/or sublicense copies of the Intellectual Property, and to permit persons to whom the Intellectual Property is furnished to do so, provided that all copyright notices on the intellectual property are retained intact and that each person to whom the Intellectual Property is furnished agrees to the terms of this Agreement.
If you modify the Intellectual Property, all copies of the modified Intellectual Property must include, in addition to the above copyright notice, a notice that the Intellectual Property includes modifications that have not been approved or adopted by LICENSOR.
THIS LICENSE IS A COPYRIGHT LICENSE ONLY, AND DOES NOT CONVEY ANY RIGHTS UNDER ANY PATENTS THAT MAY BE IN FORCE ANYWHERE IN THE WORLD.
THE INTELLECTUAL PROPERTY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE DO NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE INTELLECTUAL PROPERTY WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE INTELLECTUAL PROPERTY WILL BE UNINTERRUPTED OR ERROR FREE. ANY USE OF THE INTELLECTUAL PROPERTY SHALL BE MADE ENTIRELY AT THE USER’S OWN RISK. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ANY CONTRIBUTOR OF INTELLECTUAL PROPERTY RIGHTS TO THE INTELLECTUAL PROPERTY BE LIABLE FOR ANY CLAIM, OR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM ANY ALLEGED INFRINGEMENT OR ANY LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR UNDER ANY OTHER LEGAL THEORY, ARISING OUT OF OR IN CONNECTION WITH THE IMPLEMENTATION, USE, COMMERCIALIZATION OR PERFORMANCE OF THIS INTELLECTUAL PROPERTY.
This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license shall require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party.
Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and shall at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications. This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement shall be deemed unenforceable, void or invalid, such provision shall be modified so as to make it valid and enforceable, and as so modified the entire Agreement shall remain in full force and effect. No decision, action or inaction by LICENSOR shall be construed to be a waiver of any rights or remedies available to it.
i. Abstract
This document is the specification for the OpenSearch extension for Earth Observation collections and products search.
This standard is intended to provide a very simple way to make queries to a repository that contains Earth Observation information and to allow syndication of repositories.
ii. Keywords
The following are keywords to be used by search engines and document catalogues.
ogcdoc, OGC document, OpenSearch, Earth Observation Extension, OpenSearch Earth Observation Service, EO Collection, EO Product, ISO19115, INSPIRE, OGC O&M EOP
iii. Preface
This document is the result of work undertaken within the GENESI-DR (Ground European Network for Earth Science Interoperations - Digital Repositories) project funded by the 7th Framework program of the European (EC Grant Agreement no. 212073), the follow-up project GENESI-DEC (Ground European Network for Earth Science Interoperations -Digital Earth Community) funded by the same program (Contract nº RI-261623). The document was initially produced during the ESA HMA (Heterogeneous Missions Accessibility) initiative [OR1] and related projects.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. The Open Geospatial Consortium (OGC) shall not be held responsible for identifying any or all such patent rights.
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the standard set forth in this document, and to provide supporting documentation.
iv. Submitting organizations
The following organizations submitted this Document to the Open Geospatial Consortium (OGC):
Terradue SRL
con terra GmbH
Spacebel s.a.
European Space Agency (ESA)
EADS Astrium
v. Submitters
All questions regarding this submission should be directed to the editor or the submitters:
Name
Affiliation
OGC Member?
Pedro Gonçalves
Terradue Srl
Yes
Uwe Voges
con terra GmbH
Yes
Yves Coene
Spacebel s.a.
Yes
1. Scope
The OpenSearch specification originated in a community effort built around Amazon’s A9.com. It was intended to allow syndication of search results that could then be aggregated by one large index. The OpenSearch specification is made available under the Creative Commons Attribution-Sharealike 2.5 license.
Earth Observation (EO) products have specific characteristics like the orbit number, processing center, and acquisition station that follow a specific logic inherent to the EO community of users of satellite datasets. Typically, an EO product contains information regarding the:
Platform or satellite from where it originates (e.g. SPOT, ENVISAT);
The sensor used to acquire the data;
The processing center responsible for its elaboration together with the date and software used for the processing; and
Specific satellite orbit information like the number, track, frame, and direction.
The OpenSearch Description document format allows the use of extensions that allow search engines to inform clients about specific and contextual query parameters. This OGC candidate standard specifies an Earth Observation extension to OpenSearch that defines query parameters that allow the filtering of search results with those fields.
This document incorporates feedback from developers in the open source geospatial community and includes several annexes showing result sets in several possible formats and giving details that reflect a sample implementation.
Services that support the OpenSearch Specification and the Earth Observation extension defined in this document are called OpenSearch Earth Observation Services (OpenSearch-EO).
2. Conformance
Conformance with this standard shall be checked using all the relevant tests specified in Annex A (normative) of this document. Annex B presents the different RELAX-NG schemas for the OpenSearch Description and the Atom Response Documents. The framework, concepts, and methodology for testing, and the criteria to be achieved to claim conformance are specified in the OGC Compliance Testing Policies and Procedures and the OGC Compliance Testing web site
[1]
In order to conform to this OGC™
interface standard, a software implementation shall choose to implement any one of the conformance classes specified in Table 1. The implementation can be validated with the conformance test defined in Annex A (normative). An implementation candidate to conformance shall minimally pass all applicable tests specified in the Abstract Test Suite belonging to core conformance class (minimal support).
The mappings between the requirements belonging to a requirements class and the associated conformance class are shown in the table below. All requirements-classes, conformance-classes and conformance tests described in this document are owned by the specification identified as http://www.opengis.net/spec/opensearcheo/1.0.
Table
: Conformance Classes
Conformance Class Name
Conformance Class URI
Requirements Class URI
Requirements
Core
/conf/Core
/req/Core
/req/osd (Req 1)
/req/namespaces (Req 2)
/req/atom (Req 3)
/req/request/parameters (Req 4)
/req/request/ kvpget (Req 8)
/req/response/atom (Req 9)
EOForeignElement
/conf/Earth ObservationForeignElement
/req/Earth ObservationForeignElement
/req/entry-eop (Req 10)
Suggestions
/conf/Suggestions
/req/Suggestions
/req/suggestions (Req 6)
/req/suggestions-range (Req 7)
INSPIRE
/conf/INSPIRE
/req/INSPIRE
/req/request/INSPIRE (Req
5)
3. References
The following normative documents contain provisions that, through reference in this text, constitute provisions of this document. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. For undated references, the latest edition of the normative document referred to applies.
IETF RFC4287,
Atom - The Atom Syndication Format
Media RSS,
OASIS OpenSearch,
searchRetrieve: Part 4. APD Binding for OpenSearch Version 1.0, OASIS Standard, 30 January 2013, http://docs.oasis-open.org/search-ws/searchRetrieve/ v1.0/os/part4-opensearch/searchRetrieve-v1.0-os-part4-opensearch.html
OGC 06-121r9,
OpenGIS® Implementation Standard: OGC Web Services Common Standard
OGC 06-103r4,
OpenGIS® Implementation Standard: Geographic information - Simple feature access - Part 1: Common architecture
OGC 10-032r8,
OpenGIS® Implementation Standard: OpenSearch Geo and Time Extensions
OGC 10-157r3,
OpenGIS® Implementation Standard: Earth Observation Metadata profile of Observations & Measurements, V 1.0
OGC 10-157r4,
OpenGIS® Implementation Standard: Earth Observation Metadata profile of Observations & Measurements, V 1.1
OGC 11-035r1,
OGC Best Practice: Implementation Standard EO Collection, Service and Sensor Discovery using the CS-W ebRIM Catalogue
OGC 06-131r6,
OGC Implementation Standard: OGC Catalogue Services Standard 2.0 Extension Package for ebRIM Application Profile: Earth Observation Products”
OGC 13-084r2,
OGC Extension Package Standard: OGC I15 (ISO19115 Metadata) Extension Package of CS-W ebRIM Profile 1.0.
OGC 09-163r2,
OGC Discussion Paper: OGC Catalogue Services Specification 2.0 Extension Package for ebRIM Application Profile: SensorML
OGC 07-122r2,
OpenGIS® SensorML Encoding Standard, version 1.0. Schema – Corrigendum 1
OGC 12-000,
OGC Encoding Standard: OGC® SensorML: Model and XML Encoding Standard
The Library of Congress,
Information Resource Retrieval Protocols:
SRU/SRW (Search and Retrieve URL/Web Service) DC Schema for SRU (
INSPIRE Metadata Implementing Rules: Technical Guidelines based on EN ISO 19115 and EN ISO 19119
Technical Guidance for the implementation of INSPIRE Discovery Services
ISO 19115:2003,
Geographic Information – Metadata
ISO 19115:2003/Cor 1:2006,
Geographic information – Metadata - Corrigendum 1
ISO/TS 19139:2007,
Geographic information – Metadata – XML schema implementation
ISO19115-2:2009,
Geographic information – Metadata – Part 2: Extensions for imagery and gridded data.
ISO/TS 19139-2:2012,
Geographic information - Metadata - XML schema implementation - Part 2: Extensions for imagery and gridded data
ISO 19115-1:2014,
Geographic information – Metadata – Part 1: Fundamentals
ISO/TS 19115-3,
Geographic information – Metadata – Part 3: XML schema implementation for fundamental concepts
OpenSearch Parameter Extension,
RFC 3339,
Date and Time on the Internet: Timestamps. Internet profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar. http://www.ietf.org/rfc/rfc3339.txt
RFC 5646,
Tags for Identifying Languages - http://tools.ietf.org/html/rfc5646
RFC 5988,
Web Linking - http://tools.ietf.org/html/rfc5988
3.1 Other References
HMA - Heterogeneous Missions Accessibility – Design Methodology, Architecture and Use of Geospatial Standards for the Ground Segment Support of Earth Observation missions ESA TM-21,
4. Terms and Definitions
This document uses the terms defined in Sub-clause 5.3 of [OGC 06-121r8], which is based on the ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards. In particular, the word “shall” (not “must”) is the verb form used to indicate a requirement to be strictly followed to conform to this standard.
For the purposes of this document, the following additional terms and definitions apply.
4.1
Collection
A Collection or a Dataset Series (in short
Series
) defines a container for a list of Products (or datasets) that have common properties. Products inherit all the Collection properties that are not explicitly overridden.
4.2
Product
A Product or a Dataset corresponds to an identifiable collection of data under one single identifier. It is independent of a physical form or an encoding even if it is normally distributed in a single file.
4.3
OpenSearch
Draft specification for web search syndication, originating from Amazon’s A9 project and given a corresponding interface binding by the OASIS Search Web Services working group.
4.4
OpenSearch Geospatial Service
Defines services that comply with the OpenSearch Specification and the Geo extension defined in OGC 10-032.
4.5
OpenSearch GeoTemporal Service
Defines services that comply with the OpenSearch Specification, the Geo and Time extensions defined in OGC 10-032.
4.6
OpenSearch Description Document
An XML document available at a consistent location describing metadata for the service and providing templates for queries.
4.7
OpenSearch Earth Observation Service
Defines services that comply with the OpenSearch Specification and the Earth Observation extension defined in this document.
4.8
Search feed
The response document of search service request containing zero or several entries.
4.9
Entry
An element of the search response representing a catalogued resource.
5. Conventions
5.1 Abbreviated terms
Some of the abbreviated terms listed in Subclause 5.1 of the OWS Common Implementation Specification [OGC 06-121] apply to this document, plus the following:
EC European Commission
EO Earth Observation
EOP Earth Observation Product
ESA European Space Agency
OASIS Advancing Open Standards for the Information Society
O&M Observations and Measurements
SRU Search/Retrieval via URL
SWS Search Web Services
5.2 Namespace prefix conventions
Table 2 lists the namespaces used in this document and the specifications in which they are defined. The prefixes are
not
normative and are merely chosen for convenience; they may appear in examples without being formally declared, and have no semantic significance. The namespaces to which the prefixes correspond are normative, however.
Table
: Namespace mappings
Prefix
Namespace URI
Specification
os
OpenSearch
1.1 Specification
geo
OpenSearch
Geo Extension
time
OpenSearch
Time Extension
atom
The
Atom Syndication Format Common 1.0 – RFC-4287
georss
GeoRSS
Specification
dc
Namespace
Policy for the DCMI
dct
Namespace Policy for the
DCMI
param
OpenSearch parameter
extension
sru
OpenSearch SRU Extension
media
Media RSS
eop
or
EO
product schema namespace defined in OGC 10-157r3 or
EO
product schema namespace defined in OGC 10-157r4
eo
OpenSearch
Extension for EO
gmd
ISO19115/ISO19139
gmi
ISO19115-2/ISO19139-2
mdb
ISO19115-1/ISO19115-3
sml
Sensor ML 2.0
srw_dc
info:srw/schema/1/dc-schema
Dublin Core Schema for
SRU
a See
6. Overview
As the OpenSearch specification is defined in the OASIS SWS bindings [OASIS OpenSearch], we confine ourselves here to the OpenSearch Earth Observation extension. This specification is complementary to the OpenSearch Geo and Time Extensions (OGC 10-032) and recommends its use for spatial and temporal queries.
The Earth Observation Extension specifies a series of parameters that can be used to constrain search results. These are discussed in more detail in Section 8.1. In short, provision is made to filter results by sensor information, acquisition, processing parameters and other information. The purpose of the OpenSearch Extension for Earth Observation is to make sure that OpenSearch parameters are aligned with OGC 10-157r4 that describes EO products metadata and with ISO19115(-1)/ISO19115-2 that is used for describing EO collection metadata. An OpenSearch Earth Observation Service is not expected to support all the elements defined here but use them in accordance with a given use case and search service contents.
6.1 Collections and Products
The parameters defined in this extension can be used both to search resources identifying EO Collections (i.e. dataset series) or EO Products (i.e. datasets)
although
different parameters are more suitable for one of the two
(see 8.1).
An EO Collection is defined as a set of EO Products sharing a common specification or characteristics. For example, an EO Collection can be defined as series of EO products of the same satellite (e.g. MSG) and the same sensor (detector, e.g. SEVIRI/optical) acquired at different times.
Within ESA´s Heterogeneous Missions Access (HMA) project [HMA] the EO Collection Metadata (describing an EO Collection) is differentiated from the EO Product Metadata (describing an EO Product) (see Figure 1). EO Collections are described by metadata that are focused on the general application area (usage scenarios), the dissemination channels, access and use constraints and on the producer of the data etc. Nevertheless, it also includes metadata that is equally applicable to EO Products like information on the acquisition type (e.g. satellite and instrument) or on spatial and temporal extents describing the covered area. This metadata shall be interpreted as common to all EO Products of the same collection so that it must not be repeated within the metadata of every single EO Product.
Figure:
: General UML model of EO Collection and EO Product Metadata
In contrast to EO Collection metadata, EO Product metadata is more geared to concrete technical details of the acquisition, quality, processing, archiving of the concrete EO Product.
6.2 Two Step Search
In a typical search scenario, a client will first search for the appropriate EO Collection with the parameters appropriate to EO Collections (see 8.1). In the search response he will find the details (e.g. the identifier or the link to the OpenSearch description document) to search for EO Products of that EO Collection that he identifies as most appropriate.
6.3 Search Optimization
In the case of a two-step search a possible search optimization is to follow an inheritance model as defined in ISO19115 where the product implicitly inherits the properties of the associated collection. Any discovery performed on the products will first validate the corresponding collection. Conversely, product inherits the metadata fields that are common to an entire collection (e.g. data access policies). For example, a collection may be defined to a specific geographical area or temporal range that aggregates all the associated products. This federated approach allows a strong optimization of the metadata storage and discovery mechanisms by distributing the server load in several logical or physical data servers.
6.4 Logical Collections
A given number of products from different collections can also be aggregated in special groups for specific applications. Using annotation or any other registry mechanism the
logical collection
will group products that have a special relation or domain specific usage. For example, a
logical collection
could be defined as a group of products from a given number of collections that cover a given spatial-temporal range by special annotation during product ingestion or my administrator configuration. This feature will also allow the definition of application-oriented collections that group the products of interest for that domain. For example, in a emergency situation instead of searching in all the collections for different satellite products, an operator will certainly value the existence of a dedicated feed that groups all past and currently available products of interest to the problem in hand. The logical collection is in its essence a server side classification or arrangement of entries and is seen by the client any other collection.
7. OpenSearch Description
The OpenSearch Description Document allows clients to retrieve service metadata from a server. The response to a request for a Description shall be an XML document in the form specified by the SWS OpenSearch bindings published by OASIS. A brief summary of the Description’s requirements is provided in OGC 10-032.
OpenSearch Earth Observation Extension is designed to provide a search facility of Earth Observation metadata to the OpenSearch protocol. One namespace is provided for use in URL templates that form part of the OpenSearch Description Document (see Example 1), published by the server in XML at a stable URL.
A server provides an OpenSearch description document that a client reads to determine the response formats available and how to formulate a search/retrieve request. The OpenSearch Description Document includes a mandatory URL element containing a mandatory request template. Where several request templates are provided, a client may choose the one offering the most useful format (specified by MIME-type defined in the
type
attribute of the element) as shown in Example 1.
An OpenSearch Earth Observation Service shall return a valid OpenSearch description document using the parameters from the EO Extension namespace as an Atom access point.
EXAMPLE 1 The following XML document provides a sample response to a request for an OpenSearch Description from a repository supporting the Earth Observation Extension. Note that the response type is given in the type attribute and not implicitly on the URL path.
Requirement 1 /req/osd
The server generates a valid OpenSearch description document
Requirement 2 /req/namespaces
This namespace and a corresponding namespace prefix
shall
be included when the extension is used in an OpenSearch Description document or any other XML document:
· http://a9.com/-/opensearch/extensions/eo/1.0/
Requirement 3 /req/atom
Any server supporting the Earth Observation extension
shall
provide an access point returning documents complying with the rules specified in IETF [RFC-4287] (Atom 1.0)
8. OpenSearch Earth Observation operation
8.1 Search operation request
8.1.1 Search request parameters
An OpenSearch Earth Observation Service should use the time and geo extensions defined in OGC10-032 when supporting the search respectively by acquisition times and acquisition footprint. This Earth Observation Extension defines in Table 3, Table 4, Table 5 and Table 6 an extensive list of OpenSearch parameters that can be supported by a search engine.
It is not expected or advisable for an OpenSearch Earth Observation Service to support all the elements defined in this specification. The elements defined should be used to constrain search results and their use is largely dependent on the search engine contents and capabilities (see also 6).
If a search engine use case is for the discovery of
collections
, it is recommended to use the elements of Table 3 and Table 4 that include parameters like:
platform, orbitType
instrument
sensorType
spectralRange, processingLevel, compositeType, organisationName, useLimitation or accessConstraint.
If the search engine is obliged to be aligned with
INSPIRE
requirements it SHALL support the elements of Table 4.
Conversely, if the search engine use case is for the discovery of
products
[2]
associated to a single collection, it is recommended to select additional relevant parameters e.g. from:
orbitNumber
orbitDirection
track
frame
archivingCenter
processingCenter
processingSoftware
processingDate
cloudCover
and
snowCover
as shown in Table 5. The specific parameters related to the acquisition of Earth Observation products are shown on Table 6.
Requirement 4 /req/request/parameters
The eo OpenSearch Parameters shall be used as specified in Table 3, Table 5 and Table 6
Table
: OpenSearch Parameters for Collection Search
OpenSearch
Parameter
Definition
Data
Type
productType
A string identifying the entry type (e.g.
ER02_SAR_IM__0P, MER_RR__1P, SM_SLC__1S, GES_DISC_AIRH3STD_V005)
String
doi
Digital Object Identifier identifying the product
(see http://www.doi.org)
String
platform
A string with the platform short name (e.g.
Sentinel-1)
String
platformSerialIdentifier
A string with the Platform serial identifier
String
instrument
A string identifying the instrument (e.g. MERIS,
AATSR, ASAR, HRVIR. SAR).
String
sensorType
A string identifying the sensor type. Suggested
values are: OPTICAL, RADAR, ALTIMETRIC, ATMOSPHERIC, LIMB
String
compositeType
Type of composite product expressed as time period
that the composite product covers
(e.g. P10D for a 10 day composite)
String
processingLevel
A string identifying the processing level applied to
the entry
String
orbitType
A string identifying the platform orbit type (e.g.
LEO, GEO)
String
spectralRange
A string identifying the sensor spectral range (e.g.
INFRARED, NEAR-INFRARED, UV, VISIBLE)
String
wavelength
A number, set or interval requesting the sensor wavelengths
in nanometers.
Integer
hasSecurityConstraints
A string informing if the resource has any security
constraints. Possible values: TRUE, FALSE
String
dissemination
A string identifying the dissemination method (e.g.
EUMETCast, EUMETCast-Europe, DataCentre)
String
sru:recordSchema
Metadata model in which additional metadata should
be provided inline (e.g. OGC O&M EOP, ISO19115(-1|-2|-3)/ISO19139(-2), Sensor
ML 1.0/2.0 or Dublin Core Schema for SRU. For further details see 8.2.4.
String (URI)
The name capitalization rules are specified in
Subclause 11.6.2 of [OGC 06-121].
It uses mathematical notation for ranges and sets to define the
intervals with:
n1
equal to field = n1,
{n1,n2,…}
equals to field=n1 OR
field=n2 OR …
[n1,n2]
equal to n1 <= field <= n2,
[n1,n2[
equals to n1 <= field < n2
]n1,n2[
equals to n1 < field < n2
]n1,n2]
equal to n1 < field <= n2.
[n1
equals to n1<= field
]n1
equals to n1 < field
n2]
equals to field <= n2 n2[ equals to field
< n2.
OpenSearch Earth Observation Services are recommended to suggest
the supported list of values on the OpenSearch Description document using the
OpenSearch Parameter Extension, standard values for lists are suggested in
OGC 10-157r4.
OpenSearch Earth Observation Services are recommended to suggest
the range of possible values of the element values on the OpenSearch
Description document using the OpenSearch Parameter Extension.
OpenSearch Earth Observation Services are recommended to suggest the
supported list of values on the OpenSearch Description document using the
OpenSearch Parameter Extension, standard values are e.g.:
info:srw/schema/1/dc-v1.1
[3]
(Dublin Core Schema for SRU,
This parameter relates to collection and product search
Table
: Additional INSPIRE obligated OpenSearch Parameters for Collection Search
OpenSearch
Parameter
Definition
Data
Type
title
A name given to the resource
String
topicCategory
Main theme(s)
of the dataset
String
keyword
Commonly used word(s) or formalised word(s) or phrase(s) used to
describe the subject.
String
abstract
Abstract.
String
resolution
Using this (optional) parameter
mandates the usage of one of the following 2 parameter groups within one
search request:
i.
denominator
Level of detail expressed as a scale factor or a ground distance. Here: the
number below the line in a vulgar fraction.
Only used, if distanceValue and distanceUOM are not
used.
Integer
b d
distanceValue
Sample ground distance. Here: the distance as decimal value.
distanceUOM
Sample ground distance. Here: the name of the unit of measure. CodeList, one
of: meter, km,…
Only used, if Denominator is not used.
Double
b d
String
organisationName
A string identifying the name of the organization
responsible for the resource
String
organisationRole
The function performed by the
responsible party
String
j,c
publicationDate
The date when the resource was
issued
Date time
lineage
General explanation of the data
producer’s knowledge about the lineage of a dataset.
String
useLimitation
A string identifying informing if the resource has
usage limitations
String
accessConstraint
Applied to assure the protection of
privacy or intellectual property, and any special restrictions or limitations
on obtaining the resource
String
e,c
otherConstraint
Other
restrictions and legal prerequisites for accessing and using the resource or
metadata.
String
classification
Name of the
handling restrictions on the resource or metadata
String
f,c
language
Language of the intellectual
content of the metadata record
String
g,c
specification
Using this
(optional) parameter mandates the usage of the following 4 parameters within
one search request:
i.
specificationTitle
: Title of the specification
i.
specificationDate
: Reference date of specification
specificationdateType
: Type reference date of specification
degree
: This is the degree of conformity of the resource
to the related specification.
Possible values: true (if
conformant), false (if not conformant), null (if not evaluated)
String
Date time
String
k,c
String
The name capitalization rules are specified in
Subclause 11.6.2 of [OGC 06-121].
It uses mathematical notation for ranges and sets to define the
intervals with:
n1
equal to field = n1,
{n1,n2,…}
equals to field=n1 OR
field=n2 OR …
[n1,n2]
equal to n1 <= field <= n2,
[n1,n2[
equals to n1 <= field < n2
]n1,n2[
equals to n1 < field < n2
]n1,n2]
equal to n1 < field <= n2.
[n1
equals to n1<= field
]n1
equals to n1 < field
n2]
equals to field <= n2 n2[ equals to field
< n2.
OpenSearch Earth Observation Services are recommended to suggest
the supported list of values on the OpenSearch Description document using the
OpenSearch Parameter Extension , standard values for lists are suggested in
OGC 10-157r4.
OpenSearch Earth Observation Services are recommended to suggest
the range of possible values of the element values on the OpenSearch
Description document using the OpenSearch Parameter Extension.
Codelist (MD_RestrictionCode), one of: copyright, patent,
patentPending, trademark, license, intellectualPropertyRights, restricted,
otherRestrictions
Codelist (MD_ClassificationCode),
one of: unclassified, restricted, confidential, secret,
topSecret
ISO 639-2, other parts may be used
Optional parameter, for INSPIRE mandatory: the use of one keyword
expressing the INSPIRE Data theme is required. Relevant INSPIRE data themes concerning EO
Product collections are “Land cover” and “Orthoimagery” (see [RD12] Table 15
and Table 21)
Optional parameter, mandatory for INSPIRE. For details see INSPIRE
Metadata Implementing Rules: Technical Guidelines based on EN ISO 19115 and
EN ISO 19119 and Technical Guidance for the implementation of INSPIRE
Discovery Services
Codelist (CI_RoleCode codelist), one of:
resourceProvider, custodian, owner, user, distributor, originator,
pointOfContact, principalInvestigator, processor, publisher, author
Codelist (CI_DateTypeCode), one of: creation,
revision or publication
Requirement 5 /req/request/INSPIRE
The OpenSearch Parameters relevant for INSPIRE shall be supported as specified in Table
4.
Table
: OpenSearch Parameters for Product Search
OpenSearch
Parameter
Definition
Data Type
parentIdentifier
A string identifying the parent of the entry in a
hierarchy of resources
String
productionStatus
A string identifying the status of the entry (e.g.
ARCHIVED, ACQUIRED, CANCELLED)
String
acquisitionType
Used to distinguish at a high level the
appropriateness of the acquisition for "general" use, whether the
product is a nominal acquisition, special calibration product or other.
Values: NOMINAL, CALIBRATION, OTHER
String
orbitNumber
A number, set or interval requesting the acquisition
orbit
Integer
orbitDirection
A string identifying the acquisition orbit
direction. Possible values are: ASCENDING, DESCENDING
String
track
A string identifying the orbit track
String
frame
A string identifying the orbit frame
String
swathIdentifier
Swath identifier (e.g. Envisat ASAR has 7 distinct
swaths (I1,I2,I3...I7) that correspond to precise incidence angles for the
sensor). Value list can be retrieved with codeSpace.
String
cloudCover
A number, set or interval of the cloud cover %
(0-100).
Integer
snowCover
A number, set or interval of the snow cover %
(0-100).
Integer
lowestLocation
A number,
set or interval of the bottom height of
datalayer (in meters).
Double
highestLocation
A number,
set or interval of the top height of
datalayer (in meters).
Double
productVersion
A string identifying the version of the Product
String
productQualityStatus
This optional field must be provided if the product
passed a quality check. Possible values: NOMINAL and DEGRADED
String
productQuality DegradationTag
Keywords giving information on the degradations
affecting the product. Possible values are mission specific and can be freely
define (e.g. "RADIOMETRY", "MISSING_LINES")
String
processorName
A string identifying the processor software name
String
processingCenter
A string identifying the processing center (e.g.
PDHS-E, PDHS-K, DPA, F-ACRI)
String
creationDate
The date when the metadata item was ingested for the
first time (i.e. inserted) in the catalogue
Date time
modificationDate
The date when the metadata item was last modified
(i.e. updated) in the catalogue.
Date time
processingDate
A date interval requesting entries processed within
a given time interval
Date time
sensorMode
A string identifying the sensor mode.
String
archivingCenter
A string identifying the archiving center.
String
processingMode
Processing mode. Often referred to as Real Time,
Near Real Time etc.
String
The name capitalization rules are specified in
Subclause 11.6.2 of [OGC 06-121].
It uses mathematical notation for ranges and sets to define the
intervals with:
n1
equal to field = n1,
{n1,n2,…}
equals to field=n1 OR
field=n2 OR …
[n1,n2]
equal to n1 <= field <= n2,
[n1,n2[
equals to n1 <= field < n2
]n1,n2[
equals to n1 < field < n2
]n1,n2]
equal to n1 <
field <= n2.
[n1
equals to n1<= field
]n1
equals to n1 < field
n2]
equals to field <= n2 n2[ equals to field
< n2.
OpenSearch Earth Observation Services are recommended to suggest
the supported list of values on the OpenSearch Description document using the
OpenSearch Parameter Extension, standard values for lists are suggested in
OGC 10-157r4.
OpenSearch Earth Observation Services are recommended to suggest
the range of possible values of the element values on the OpenSearch
Description document using the OpenSearch Parameter Extension.
Table
: OpenSearch Parameters for Acquistion Parameters Search
OpenSearch
Parameter
Definition
Data Type
availabilityTime
The time when the result became available (e.g. if
postprocessing or laboratory analysis is required, it might be different to
the phenomenonTime). dateTime in ISO 8601 format (CCYY-MM-
DDThh:mm[:ss[.cc]]Z)
Date Time
b d
acquisitionStation
A string identifying the station used for the
acquisition
String
acquisitionSub Type
Acquisition sub-type
String
startTimeFrom AscendingNode
Start time of acquisition in milliseconds from
Ascending node date.
Integer
completionTime FromAscending Node
Completion time of acquisition in milliseconds from
Ascending node date.
Integer
illumination AzimuthAngle
Mean illumination/solar azimuth angle given in
degrees. (i.e. uom='deg')
Double
illumination ZenithAngle
Mean illumination/solar zenith angle given in
degrees.
Double
illumination ElevationAngle
Mean illumination/solar elevation angle given in
degrees. (i.e. uom='deg')
Double
b d
polarisationMode
Polarisation mode taken from codelist: S (for
single), D (for dual), T (for twin), Q (for quad), UNDEFINED
String
polarization Channels
Polarisation channel transmit/receive configuration:
horizontal, vertical.
String
antennaLook Direction
LEFT or RIGHT
String
minimum IncidenceAngle
Minimum incidence angle given in degrees (i.e.
uom='deg')
Double
b d
maximum IncidenceAngle
Maximum incidence angle given in degrees (i.e.
uom='deg')
Double
b d
dopplerFrequency
Doppler Frequency of acquisition
Double
b d
incidenceAngle Variation
Incidence angle variation
Double
b d
The name capitalization rules are specified in
Subclause 11.6.2 of [OGC 06-121].
It uses mathematical notation for ranges and sets to define the
intervals with:
n1
equal to field = n1,
{n1,n2,
…}
equals to field=n1 OR field = n2 OR ..
[n1,n2]
equal to n1 <= field <= n2,
[n1,n2[
equals to n1 <= field < n2
]n1,n2[
equals to n1 < field < n2
]n1,n2]
equal to n1 < field <= n2.
[n1
equals to n1<= field
]n1
equals to n1 < field
n2]
equals to field <= n2 n2[ equals to field
< n2
OpenSearch Earth Observation Services are recommended to suggest
the supported list of values on the OpenSearch Description document using the
OpenSearch Parameter Extension, standard values for lists are suggested in
OGC 10-157r4
OpenSearch Earth Observation Services are recommended to suggest
the range of possible values of the element values on the OpenSearch
Description document using the OpenSearch Parameter Extension
To suggest clients of the possible values of a given parameter an OpenSearch Earth Observation Service should make use of the OpenSearch Parameter Extension.
EXAMPLE 2 The following XML document provides a sample response to a request for an OpenSearch Description from a repository supporting the Earth Observation and Temporal Extensions. The OpenSearch Parameter extension elements are used to suggest clients the possible values for temporal range and acquisition station names:
xmlns:param=“http://a9.com/-/spec/opensearch/extensions/parameters/1.0/”
xmlns:time=“http://a9.com/-/opensearch/extensions/time/1.0/”>
Requirement 6 /req/suggestions
The server implements a list of suggestions
for string parameters for the Earth Observation extension elements on the
OpenSearch Description document.
Requirement 7 /req/suggestions-range
The server implements a suggestion
of parameters range for the Earth Observation extension elements on the
OpenSearch Description document.
All parameters of the OpenSearch query
should
be mapped to the appropriate catalogue or metadata fields of the underlying metadata management system. Annex D shows the suggested mappings for
Earth Observation Metadata profile of Observations & Measurements (OGC 10-157)
ISO 19115 / ISO19115-2 Geographic information – Metadata
OGC Catalogue Services Standard 2.0 Extension Package for ebRIM Application Profile Earth Observation Products (OGC 06-131)
OGC I15 (ISO19115 Metadata) Extension Package of CS-W ebRIM Profile (OGC 13-084)
OGC Catalogue Services Specification 2.0 Extension Package for ebRIM Application Profile: SensorML (OGC 09-163)
8.1.2 Search request KVP encoding (mandatory)
Requirement 8 /req/request/kvpget
Servers shall implement HTTP GET transfer of the Search operation request, using KVP
encoding.
Note that for the given key-value pairs, the key can be an arbitrary string, specified by one given instance of an OpenSearch repository. For example, one Description may provide a URL template asking for platform={eo:platform}, another specifying plat={eo:platform}. It is the responsibility of the client application to parse the URL template and create the appropriate keys for each key-value pair. These parameter sets are templates from which URLs can be constructed. The search client must replace every instance of a template parameter with a value before the search request is performed. If a search engine wishes to indicate that a template parameter is optional and can be replaced with the empty string, then the “?” notation described in the section on optional template parameters should be used. Clients should take special consideration to the fact that according to the OpenSearch specification the OpenSearch parameters usage is not restricted to the URL query string and can be used as templates values in any of URL components (e.g. path, host).
EXAMPLE 3 A search operation URL template with the OpenSearch parameter as a query string parameter and the corresponding request:
EXAMPLE 4 A search operation URL template with one of OpenSearch Parameter as the URL path and the corresponding request:
8.2 Search operation response element atom:entry { atomEntryConstruct } namespace os = “http://a9.com/-/spec/opensearch/1.1/” osDocument = element os:OpenSearchDescription { osDocumentConstruct } osDocumentConstruct = osdUrlAttr = attribute template { text }, attribute type { text }, osdImage = attribute height {xsd:int}, attribute width {xsd:int}, include “osquery.rnc” osdRelationValues = “results” | “suggestions” | “self” | “collection” # Simple Extension # Structured Extension # Other Extensibility # EOF namespace os = “http://a9.com/-/spec/opensearch/1.1/” osQueryAttr = attribute role { osQueryRoleValues }, osQueryRoleValues = “request” | “example” | “related” | “correction” | “subset” | “superset” # EOF namespace georss=“http://www.georss.org/georss” georssElement = ( georssSimple | georssWhere) georssWhere = element georss:where { gmlAttribute*, gmlElement } georssSimple = georssPoint | georssLine | georssPolygon | georssBox | georssCircle georssPoint = element georss:point { list { xsd:decimal, xsd:decimal } } gmlAttribute = attribute (xml:base | xml:lang | local:* | gml:* ) { text } gmlElement = (gmlPointElement | gmlLineStringElement | gmlPointElement = gmlLineStringElement = element gml:LineString { gmlAttribute*, gmlPolygonElement = element gml:Polygon { gmlAttribute*, gmlEnvelopeElement = element gml:Envelope { gmlAttribute*, # EOF include “eo.rnc” # Redefine the foreign attribute to exclude eo:* elements osDocument = [ #EOF namespace eo = “http://a9.com/-/opensearch/extensions/eo/1.0/” # from Table 3 # from Table 4 # from Table 5 & attribute eo:processingDate { dateValueOrSetOrRange }? # from Table 6 osQueryAttr &= polarisationMode = “S” | “D” | “T” | “Q” | “UNDEFINED” # Ranges value|\{value(,value)*\}|[\]\[\(\)]value,value[\]\[\(\)] intValueOrSetOrRange = xsd:string { pattern =“[\+\-]?[\d]*|\{[\+\-]?[\d]*(,[\d]*)*\}|[\]\[\(\)]?[\+\-]?[\d]*,[\+\-]?[\d]*[\]\[\(\)]?” } floatValueOrSetOrRange = xsd:string { pattern =“[\+\-]?[\d]*(.[\d]+)?|\{[\+\-]?[\d]*(.[\d]+)?(,[\+\-]?[\d]*(.[\d]+)?)*\}|[\]\[\(\)]?[\+\-]?[\d]*(.[\d]+)?,[\+\-]?[\d]*(.[\d]+)?[\]\[\(\)]?” } dateValueOrSetOrRange = xsd:string { pattern=“[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[\+\-][0-9]{2}:[0-9]{2}))?|\{[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[\+\-][0-9]{2}:[0-9]{2}))?(,[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[\+\-][0-9]{2}:[0-9]{2}))?)*\}|[\]\[\(\)][0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[\+\-][0-9]{2}:[0-9]{2}))?,[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]+)?(Z|[\+\-][0-9]{2}:[0-9]{2}))?[\]\[\(\)]”} namespace s = “http://purl.oclc.org/dsdl/schematron” # Redefine atom:entry to include the EO elements defined in OGC 10-157r4 anyChildren = undefinedAttribute*, extensionElement* include “eo.rnc” # Replacing definitions on RFC4287 plus OpenSearch # Redefine the Structured Extension to exclude owc:* elements # Redefine Atom rules parameterConstruct = attribute name { xsd:token }?, paramMethod = “OPTIONS” | “GET” | “HEAD” | “POST” | “PUT” | “DELETE” | “TRACE” | “CONNECT” paramOption = attribute value { xsd:string }, paramUrl = attribute param:method { paramMethod }? #extend the Url definition here # Redefine the foreign attribute to exclude param:* elements # Other Extensibility osDocument = [ s:rule [ context = “os:OpenSearchDescription”
8.2.1 Normal response parameters
The normal response to a valid Search operation request
shall
be in one of several formats that are specified in the OpenSearch Description for a given instance. The mandatory response format is Atom but the server may support other formats.
8.2.2 Normal response XML encoding
The normative response format for an OpenSearch service using Earth Observation Extension
shall
be ATOM 1.0. The properties shown in the Atom and OpenSearch namespaces are those mandated by the core specification.
Following the Atom format the response is made of a
atom:feed
element that may contain several
atom:entry
elements. While the latter describe the returned resources that respect the query performed the first describes the discovery service or search engine.
Requirement 9 /req/response/atom
The server response in Atom encoding shall be in
accordance with the rules defined in Table 7 and Table 8.
In the
atom:feed
element the response
should
include the elements listed in Table 7and the atom:entry elements
should
include the elements listed in Table 8. The metadata for each item in the result set
should
provide a link to a “full” view of the result, where more detailed metadata according to OGC O&M EOP (OGC 10-157r3, OGC 10-157r4), ISO19115(-1|-2|-3)/ISO19139(-2), SensorML 1.0 (OGC 07-122r2), SensorML 2.0 (OGC 12-000) or Dublin Core Schema for SRU (http://www.loc.gov/standards/sru/recordSchemas/dc-schema.html) can be provided (see 8.2.4) and, when available, a direct link to the resource using the
atom:link
element.
Requirement 10 /req/entry-eop
The response includes an eop:EarthObservation element or a
more specialized element such as opt:EarthObservation, sar:EarthObservation
or other allowed by OGC 10-157r4 for each entry.
Table
: Elements of Search operation response in the
atom:feed
element
Term
OGC core returnable
Atom Element
Description
Mult.
Title
dc:title
atom:feed/
atom:title
A title for the search feed.
mandatory
Creator
dc:creator
atom:feed/
atom:author
An entity primarily responsible for making the
content of the search feed
mandatory
Subject
dc:subject
atom:feed/
atom:category
A topic of the search feed.
optional
Abstract
dct:abstract
atom:feed/
atom:subtitle
An account of the content of the search feed
optional
Publisher
dc:publisher
atom:feed/
atom:generator
An entity or agent responsible for making the
search feed.
optional
Contributor
dc:contributor
atom:feed/
atom:contributor
An entity responsible for making contributions to
the content of the search feed
optional
Modified
dc:date
atom:feed/
atom:updated
A date of a creation or update of the search feed
(RFC 3339)
1 optional
Identifier
dc:identifier
atom:feed/
atom:id
An IRI as a unique identifier of the feed (it
excludes relative references). Not to be assumed dereferenceable.
mandatory
atom:feed/
dc:identifier
The local identifier of the feed.
1 optional
Source
dc:source
atom:feed/atom:link[@rel=’search’][@type=‘application/opensearchdescription+xml‘]
A reference to a resource from which the present
feed is derived. This points to the OpenSearch document that describes the
search engine
mandatory
Language
dc:language
atom:feed/
@xml:lang
A language of feed’s content (RFC 5646)
optional
Envelope
dct:spatial
atom:feed/
georss:*
The maximal spatial extent of the search feed
(GEORSS).
optional
Rights
dc:rights
atom:feed/
atom:rights
Information about rights held in and over the
resource
optional
Relation
(first,next, last page and previous pages)
dc:relation
atom:feed/atom:link[@rel=
‘first‘]
Reference to the next page of the search feed
optional
atom:feed/atom:link[@rel=
‘next‘]
Reference to the next page of the search feed
optional
atom:feed/atom:link[@rel=
‘last‘]
Reference to the next page of the search feed
optional
atom:feed/atom:link[@rel=
‘previous‘ or @rel=”prev”]
Reference to the previous page of the search feed
optional
atom:feed/atom:link[@rel=’up’]
Refers to a parent resource in a hierarchy of
resources.
optional
Query
atom:feed/os:Query
Defines the search request query.
optional
Extent
(total results, start index and items per page)
dct:extent
atom:feed/
os:totalResults
OpenSearch element with the total number of feed’s
entries
mandatory
atom:feed/
os:startIndex
OpenSearch element with the index of the first
feed’s entry.
mandatory
atom:feed/
os:itemsPerPage
OpenSearch element with the number of entries
returned per page.
mandatory
Note: This table is equal Table 6 of OGC 10-032r8
Table
: Elements of Search operation response in the
atom:entry
elements describing each search result
Term
OGC
returnable
Atom
Element
Description
Mult.
Title
dc:title
atom:entry/
atom:title
A title given
to the resource.
mandatory
Creator
dc:creator
atom:entry/
atom:author
An entity
primarily responsible for making the content of the resource
optional
Subject
dc:subject
atom:entry/
atom:category
A topic of
the content of the resource (a topic category or other taxonomy can be
applied)
optional
Abstract
dct:abstract
atom:entry/
atom:summary
An account of
the content of the resource
optional
Contributor
dc:contributor
atom:entry/
atom:contributor
An entity
responsible for making contributions to the content of the resource
optional
Modified
dc:date
atom:entry/
atom:updated
A date of a
creation or update of the metadata resource (RFC-3339)
optional
Date
eop:EarthObservation
/om:phenomenonTime/gml:TimePeriod
atom:entry/
dc:date
A date or
range of dates relevant to the resource (RFC-3339)
optional
Identifier
dc:identifier
atom:entry/
atom:id
A unique
identifier of the entry. Its content MUST be an IRI (it excludes relative
references). It should not be assumed
that it can be dereferenced.
mandatory
atom:entry/
dc:identifier
The
identifier of the resource within the search engine context (local
reference).
mandatory
Source
dc:source
atom:entry/
atom:link[@rel=
‘via’]
A reference
to a document that is the source of the information provided in the entry
optional
Language
dc:language
atom:entry/
@xml:lang
A language of
the intellectual content of the resource as defined in RFC 5646
optional
Rights
dc:rights
atom:entry/
atom:rights
Information
about rights held in and over the resource
optional
Envelope
eop:Footprint
atom:entry/
georss:*
The spatial
extent or scope of the content of the resource defined with an GEORSS element
optional
Relation
dc:relation
atom:entry/
atom:link[@rel=’search’]
Reference to
the OpenSearch description document when the resource is search service or a
collection
optional
atom:entry/
atom:link[@rel=’enclosure’]
Reference to
the location of the data resource described in the entry
optional
atom:entry/atom:link[@rel=’icon’]
Reference to
a quicklook or browse image representing the entry
optional
atom:entry/
atom:link[@rel=’alternative’]
A reference
to a document with the entry information in an alternative format
c, d
For more
details see 8.2.4
optional
atom:entry/atom:link[@rel=’up’]
Refers to a
parent resource in a hierarchy of resources
optional
Format
dc:format
atom:entry/atom:link[@rel=’enclosure’]/@type
The MIME
types of the data resources available
optional
Additional
Metadata
OGC O&M EOP (http://www.opengis.net/eop/(2.0|2.1), root element “eop:EarthObservation” or one of the extensions (e.g. sar:EarthObservation))
ISO19115 (ISO19139) (http://www.isotc211.org/2005/gmd, root element “gmd:MD_Metadata”)
ISO19115-2 (ISO19139-2)(http://www.isotc211.org/2005/gmi, root element “gmi:MI_Metadata”)
ISO19115-1 (ISO19115-3)(http://standards.iso.org/iso/19115/-3/mdb/1.0, root element “mdb:MD_Metadata”)
SensorML http://www.opengis.net/sensorml/(1.0.1|2.0) (root element e.g.
sml:SimpleProcess
or
sml:PhysicalComponent
Dublin Core for SRU (root element srw_dc:dc)
For more details see 8.2.4
optional
When specifying a temporal range the element should contain two dates
separated by a slash, like:
The different images are
differentiated by type and size.
An atom:entry MUST NOT contain more than one atom:link element with a rel
attribute value of "alternate" that has the same combination of
type and hreflang attribute values
An atom:link element with a rel attribute value of "alternate" or
"via" may have one of the following link "types":
"application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1"
for OGC O&M EOP (OGC 10-157r4)
"application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0"
for OGC O&M EOP (OGC 10-157r3)
"application/vnd.iso.19139+xml" for
ISO19115/19139
"application/vnd.iso.19139-2+xml"
for ISO19115-2/19139-2
"application/vnd.iso.19115-3+xml"
for ISO19115-1/19115-3
"text/xml;subtype="sensorML/2.0"
for SensorML 2.0
"text/xml;subtype=sensorML/1.0.1"
for SensorML 1.0
"application/xml" for Dublin Core
schema for SRU
Note: Grey rows show differences with Table 7 of OGC 10-032r8
8.2.3 Search context propagation to external end points
If the resource described in the response entry aggregates other resources (e.g. is a collection or a search service) it should possess an atom:link with the relation “search” [RFC 5988]. This feature can be used to define recursive searches where the search context (e.g. queriables) is propagated to an internal or external service (see e.g. 6.2). It can also allow the aggregation of entries into collections or groups.
EXAMPLE 5 Defining access to the product file of the atom:entry
When an entry contains a link with the
rel
attribute equal to “search” and the
type
attribute equal to “application/opensearchdescription+xml” clients are recommended to propagate the query parameters to the search engine described by the OpenSearch description document located on the
href
attribute value using the original query parameters.
8.2.4 Linking entry with metadata
If possible, the access to the original authoritative metadata source of the entry should be given using one atom:link element with the atom:rel equal to “via” [RFC5988] with the corresponding format announced in the type attribute.
If the information of this entry is available in other metadata encodings, then a server can include atom:link elements for each format using the “alternate” [RFC 5988] relation name and corresponding format in the type attribute.
EXAMPLE 6 Defining the access to authoritative source and alternative representations of the atom:entry
If a server allows to obtain metadata inline, it can advertise that it supports the sru:recordSchema (see Table 3) and use the parameter extension to say which ones.
EXAMPLE 7 Defining metadata inline
eop:EarthObservation
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=
xmlns:eop=“http://www.opengis.net/eop/2.1” … gml:id=“eo_ASA_IM__0CNPDE20100122_014441_000000162086_00146_41282_7918.N1”>
EXAMPLE 8 Use of parameter extension for sru:recordSchema
Advertising sru:recordSchema means it can provide metadata inline in the Atom response. Not advertising it means it cannot do this but will provide the available alternative atom:links instead. A server supporting sru:recordSchema can also support providing alternate links instead - support for both mechanisms by a single server are not mutually exclusive (the client can then decide what he wants by using or not using the sru:recordSchema parameter).
8.2.5 Linking an entry with its thumbnail, quicklook or masks
To define the reference to a resource representing a quicklook, browse image or cloud mask that represents the entry, the “Media RSS Specification”
should
be used [Media RSS]. Each of the images should be included as a separate
media:content
element. Multiple elements (e.g. Quicklook and cloud mask) for the same entry single entry
should
be included in the same media:
group
element.
The scheme parameter in the media:category element should reflect a thesaurus/codelist covering the various possibilities, e.g. the values allowed in the OGC 10-157r4 codelist for browse/BrowseInformation/type (THUMBNAIL, QUICKLOOK, ALBUM) and mask/MaskInformation/type (SNOW, CLOUD, QUALITY).
EXAMPLE 9 Defining the reference to the quicklook image of the atom:entry
# EOF
B.3 OpenSearch Description Document Schema (schemas/opensearch/1.1/osdd.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for
# OpenSearch Description Document
namespace s = “http://purl.oclc.org/dsdl/schematron”
namespace local = “”
start = osDocument
element os:ShortName { xsd:string { maxLength = “16” } }
& element os:Description { xsd:string { maxLength = “1024” } }
& element os:Url { osdUrlAttr } *
& element os:Contact { xsd:string {pattern=“.+@.+”}}?
& element os:Tags { text }? & element os:LongName { xsd:string {maxLength=“48”}}?
& element os:Image { osdImage } *
& element os:Query { undefinedAttribute*, ( osQueryAttr ) }*
& element os:Developer { xsd:string { maxLength = “64” } }?
& element os:Attribution { xsd:string { maxLength = “256” } }?
& element os:SyndicationRight { osdSyndicationRightValues } ?
& element os:AdultContent { “false” | “true” } ?
& element os:Language {xsd:string { pattern=“[A-Za-z]{1,8}(-[A-Za-z0-9]{1,8})*”}}?
& element os:InputEncoding { text } ? & element os:OutputEncoding { text } ?
& undefinedAttribute*
& extensionElement*
attribute rel { osdRelationValues }?, attribute indexOffset { xsd:int }?,
attribute pageOffset { xsd:int }?, undefinedAttribute*, extensionElement*
attribute type {xsd:string}, text
osdSyndicationRightValues = “open” | “limited” | “private” | “closed”
simpleExtensionElement = element * - os:* { text }
structuredExtensionElement = element * - os:* {
(attribute * { text }+, (text|anyElement)*)
| (attribute * { text }*, (text?, anyElement+, (text|anyElement)*))}
extensionElement = simpleExtensionElement | structuredExtensionElement
undefinedAttribute = attribute * - (local:* ) { text }
undefinedContent = (text|anyForeignElement)*
anyElement = element * { (attribute * { text } | text | anyElement)* }
anyForeignElement = element * - os:* { (attribute * { text } | text | anyElement)* }
B.4 OpenSearch Query Element Schema (schemas/opensearch/1.1/osquery.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for
# OpenSearch Query element
namespace s = “http://purl.oclc.org/dsdl/schematron”
namespace local = “”
attribute title { xsd:string { maxLength=“256”}}?, attribute searchTerms { text }?,
attribute totalResults { xsd:int }?, attribute count { text }?,
attribute startIndex { text }?, attribute startPage { text }?,
attribute inputEncoding { text }?, attribute outputEncoding { text }?,
attribute language { text }?
B.5 GeoRSS Schema (schemas/georss/1.1/georss.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for the GEORSS
# This defines the conformance to the rules of GEORSS
namespace gml=“http://www.opengis.net/gml”
namespace local = “”
| georssFeatureTypeTag | georssFeatureName | georssElev | georssFloor
georssLine = element georss:line { list { (xsd:decimal, xsd:decimal)+ } }
georssPolygon = element georss:polygon { list { (xsd:decimal, xsd:decimal)+ } }
georssBox = element georss:box {
list { (xsd:decimal, xsd:decimal, xsd:decimal, xsd:decimal) } }
georssCircle = element georss:circle {
list { (xsd:decimal, xsd:decimal, xsd:decimal) } }
georssFeatureTypeTag = element georss:featureTypeTag { text }
georssRelationshipTag = element georss:relationshipTag { text }
georssFeatureName = element georss:featureName { text }
georssElev = element georss:elev {xsd:decimal}
georssFloor = element georss:floor {xsd:decimal}
georssRadius = element georss:radius {xsd:decimal}
gmlPolygonElement | gmlEnvelopeElement )
element gml:Point { gmlAttribute*,
element gml:pos { gmlAttribute*, list { xsd:decimal, xsd:decimal }}}
element gml:posList {gmlAttribute*, list { (xsd:decimal, xsd:decimal)+ }}}
element gml:exterior { gmlAttribute*,
element gml:LinearRing { gmlAttribute*,
element gml:posList { gmlAttribute*,
list { (xsd:decimal, xsd:decimal)+ }}}}}
( element gml:lowerCorner { gmlAttribute*,
list { xsd:decimal, xsd:decimal } }
& element gml:upperCorner { gmlAttribute*,
list { xsd:decimal, xsd:decimal } }) }
B.6 Earth Observation Extension Description Document Schema (schemas/opensearch/extensions/eo/1.0/osddeo.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for OpenSearch Description Documents
# as defined in OGC 13-026
namespace s = “http://purl.oclc.org/dsdl/schematron”
namespace local = “”
namespace os = “http://a9.com/-/spec/opensearch/1.1/”
namespace time = “http://a9.com/-/opensearch/extensions/time/1.0/”
namespace geo = “http://a9.com/-/opensearch/extensions/geo/1.0/”
namespace eo = “http://a9.com/-/opensearch/extensions/eo/1.0/”
# relative path schemas/opensearch/1.1/ folder
include “../../../1.1/osdd.rnc”{
undefinedAttribute = attribute * - (local:* | eo:* ) { text }
s:pattern [ name=“check Atom template”
s:rule [ context = “os:OpenSearchDescription”
s:assert [ test = “os:Url[@type=’application/atom+xml’]”
“An OpenSearch Description Document must have a Url template with”
~ " type of Atom document." ]]]]
element os:OpenSearchDescription { osDocumentConstruct }
B.7 Earth Observation Extension Query Element Schema (schemas/opensearch/extensions/eo/1.0/eo.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar
# OpenSearch Query Element as defined in OGC 13-026 for the eo extension
osQueryAttr &=
attribute eo:productType { text }?
& attribute eo:doi { text }?
& attribute eo:platform { text }?
& attribute eo:platformSerialIdentifier { text }?
& attribute eo:instrument { text }?
& attribute eo:sensorType { text }?
& attribute eo:compositeType { text }?
& attribute eo:processingLevel { text }?
& attribute eo:orbitType { text }?
& attribute eo:spectralRange { text }?
& attribute eo:wavelength {intValueOrSetOrRange }?
& attribute eo:hasSecurityConstraints { text }?
& attribute eo:dissemination { text }?
& attribute sru:recordSchema { text }?
osQueryAttr &=
attribute eo:title { text }?
& attribute eo:topicCategory { text }?
& attribute eo:keyword { text }?
& attribute eo:abstract { text }?
& attribute eo:denominator { intValueOrSetOrRange }?
& attribute eo:distanceValue { floatValueOrSetOrRange }?
& attribute eo:distanceUOM { text }?
& attribute eo:organisationName { text }?
& attribute eo:organisationRole { text }?
& attribute eo:publicationDate { dateValueOrSetOrRange }?
& attribute eo:lineage { text }?
& attribute eo:useLimitation { text }?
& attribute eo:accessConstraint { text }?
& attribute eo:otherConstraint { text }?
& attribute eo:classification { text }?
& attribute eo:language { text }?
& attribute eo:specificationTitle { text }?
& attribute eo:specificationDate { dateValueOrSetOrRange }?
& attribute eo:specificationdateType { text }?
& attribute eo:degree { text }?
osQueryAttr &=
attribute eo:parentIdentifier { text }?
& attribute eo:productionStatus { text }?
& attribute eo:acquisitionType { text }?
& attribute eo:orbitNumber { intValueOrSetOrRange }?
& attribute eo:orbitDirection { orbitDirection }?
& attribute eo:track { text }?
& attribute eo:frame { text }?
& attribute eo:swathIdentifier { text }?
& attribute eo:cloudCover { intValueOrSetOrRange }?
& attribute eo:snowCover { intValueOrSetOrRange }?
& attribute eo:lowestLocation { floatValueOrSetOrRange }?
& attribute eo:highestLocation { floatValueOrSetOrRange }?
& attribute eo:productVersion { text }?
& attribute eo:productQualityStatus { text }?
& attribute eo:productQualityDegradationTag { text }?
& attribute eo:processorName { text }?
& attribute eo:processingCenter { text }?
& attribute eo:creationDate { dateValueOrSetOrRange }?
& attribute eo:modificationDate { dateValueOrSetOrRange }?
& attribute eo:sensorMode { text }?
& attribute eo:archivingCenter { text }?
& attribute eo:processingMode { text }?
attribute eo:availabilityTime
& attribute eo:acquisitionStation { text }?
& attribute eo:acquisitionSubType { text }?
& attribute eo:startTimeFromAscendingNode { intValueOrSetOrRange }?
& attribute eo:completionTimeFromAscendingNode { intValueOrSetOrRange }?
& attribute eo:illuminationAzimuthAngle { floatValueOrSetOrRange }?
& attribute eo:illuminationZenithAngle { floatValueOrSetOrRange }?
& attribute eo:illuminationElevationAngle { floatValueOrSetOrRange }?
& attribute eo:polarisationMode { polarisationMode }?
& attribute eo:polarizationChannels { text }?
& attribute eo:antennaLookDirection { antennaLookDirection }?
& attribute eo:minimumIncidenceAngle { floatValueOrSetOrRange }?
& attribute eo:maximumIncidenceAngle { floatValueOrSetOrRange }?
& attribute eo:dopplerFrequency { floatValueOrSetOrRange }?
& attribute eo:incidenceAngleVariation { floatValueOrSetOrRange }?
antennaLookDirection = “LEFT” | “RIGHT”
orbitDirection = “DESCENDING” | “ASCENDING”
B.8 Earth Observation Extension Atom Response Schema (schemas/opensearch/extenstions/eo/1.0/atomeo.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for Atom encoding and foreign elements
# as defined in OGC 13-026 for the eo extension
namespace atom = “http://www.w3.org/2005/Atom”
namespace os = “http://a9.com/-/spec/opensearch/1.1/”
namespace eo = “http://a9.com/-/opensearch/extensions/eo/1.0/”
namespace eop = “http://www.opengis.net/eop/2.1”
namespace opt = “http://www.opengis.net/opt/2.1”
namespace sar = “http://www.opengis.net/sar/2.1”
namespace atm = “http://www.opengis.net/atm/2.1”
namespace alt = “http://www.opengis.net/alt/2.1”
namespace lmb = “http://www.opengis.net/lmb/2.1”
namespace ssp = “http://www.opengis.net/ssp/2.1”
namespace local = “”
atomEntryConstruct &= eopElements ?
eopElements = eopElement | optElement | sarElement | atmElement | altElement
| lmgElement | sspElement
eopElement = element eop:EarthObservation { anyChildren }
optElement = element opt:EarthObservation { anyChildren }
sarElement = element sar:EarthObservation { anyChildren }
atmElement = element atm:EarthObservation { anyChildren }
altElement = element alt:EarthObservation { anyChildren }
lmgElement = element lmb:EarthObservation { anyChildren }
sspElement = element ssp:EarthObservation { anyChildren }
# relative path schemas/opensearch/1.1/ folder
include “../../../1.1/osatom.rnc”{
undefinedAttribute = attribute * - (xml:base | xml:lang | local:* | eo:* ) { text }
# Redefine the Simple Extension to exclude owc:* elements
simpleExtensionElement = element * -
(atom:* | os:* | eop:EarthObservation| opt:EarthObservation |
sar:EarthObservation | atm:EarthObservation | alt:EarthObservation |
lmb:EarthObservation | ssp:EarthObservation) { text }
structuredExtensionElement = element * -
(atom:* | eop:EarthObservation | opt:EarthObservation | sar:EarthObservation |
atm:EarthObservation | alt:EarthObservation | lmb:EarthObservation |
ssp:EarthObservation | os:* ) {
(attribute * { text }+,(text|anyElement)*)
| (attribute * { text }*, (text?, anyElement+, (text|anyElement)*))}
atomFeed = element atom:feed { atomFeedConstruct }
atomEntry =element atom:entry { atomEntryConstruct }
# EOF
B.9 Parameter Extension Query Element Schema (schemas/opensearch/extensions/parameter/1.0/parameter.rnc)
# -*- rnc -*-
# RELAX NG Compact Syntax Grammar for
# OpenSearch Description Parameter Extension
namespace s = “http://purl.oclc.org/dsdl/schematron”
namespace local = “”
namespace os = “http://a9.com/-/spec/opensearch/1.1/”
namespace param = “http://a9.com/-/opensearch/extensions/param/1.0/”
attribute value { xsd:token }?,
attribute minimum { xsd:unsignedInt }?,
attribute maximum { xsd:unsignedInt }?,
attribute pattern { text }?,
attribute title { xsd:string { maxLength = “1024” } }?,
attribute minExclusive { xsd:decimal | xsd:dateTime }?,
attribute maxExclusive { xsd:decimal | xsd:dateTime }?,
attribute minInclusive { xsd:decimal | xsd:dateTime }?,
attribute maxInclusive { xsd:decimal | xsd:dateTime }?,
attribute step { xsd:decimal }?,
undefinedAttribute*,
element param:Option { paramOption }*
attribute label { xsd:string }, undefinedAttribute*
& attribute param:enctype { xsd:string { pattern = “.+/.+” } }?
& element param:Parameter { parameterConstruct } *
osdUrl &= paramUrl
# relative path schemas/opensearch/1.1/ folder
include “../../../1.1/osdd.rnc”{
# Simple Extension
simpleExtensionElement = element * - ( os:* | param:* ){ text }
# Structured Extension
structuredExtensionElement = element * - ( os:* | param:* ) {
(attribute * { text }+, (text|anyElement)*)
| (attribute * { text }*, (text?, anyElement+, (text|anyElement)*))}
undefinedAttribute = attribute * - ( local:* | param:* ) { text }
anyForeignElement = element * - ( os:* | param:* ) { (attribute * { text } | text | anyElement)* }
s:assert [ test = “os:Url/param:Parameter”
“This URL template does not contain a Parameter element.” ]]]
element os:OpenSearchDescription { osDocumentConstruct }
# EOF
Annex C (informative): Example XML Documents
C.1 OpenSearch Description with Earth Observation Extension
xmlns:param=“http://a9.com/-/opensearch/extensions/param/1.0/”
xmlns:time=“http://a9.com/-/opensearch/extensions/time/1.0/”
xmlns:geo=“http://a9.com/-/opensearch/extensions/geo/1.0/”>
C.2 Atom Output of Earth Observation Metadata
xmlns:georss=“http://www.georss.org/georss” xmlns:gml=“http://www.opengis.net/gml”
xmlns:geo=“http://a9.com/-/opensearch/extensions/geo/1.0/” >
<ul> <li> <b>Date</b>: 2010-01-22 <br/>
(2010-01-22T01:44:41.316Z / 2010-01-22T01:44:57.596Z) </li>
<li> <b>Orbit Number</b>: 41282 </li>
<li> <b>Processing Center</b>: PDHS-E </li>
<li> <b>Processing Date</b>: 2010-01-22 </li>
<br/>
<a href=“https://eo-virtual-archive4.esa.int/supersites/ASA_IM__0CNPDE20100122_014441_000000162086_00146_41282_7918.N1”>Product Download </a>
</ul>
xmlns:xlink=“http://www.w3.org/1999/xlink” xmlns:gml=“http://www.opengis.net/gml/3.2” xmlns:eop=“http://www.opengis.net/eop/2.1” xmlns:swe=“http://www.opengis.net/swe/1.0” xmlns:om=“http://www.opengis.net/om/2.0”
gml:id=“eo_ASA_IM__0CNPDE20100122_014441_000000162086_00146_41282_7918.N1”>
C.3 Atom Output of Earth Observation Collection Metadata
Metadata (HTML)
Metadata (ISO19139 XML)
ATOM
]]>
Annex D (informative): Metadata Mappings
D.1 Mapping for EO Metadata profile of Observations & Measurements
In the table below the informative mappings of the queryables for the Product Search to “
Earth Observation Metadata profile of Observations & Measurements
” (OGC 10-157r4) are defined.
OpenSearch Parameter
GML Metadata XPath
productType
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:productType
doi
/eop:EarthObservation/eop:metaDataProperty/eop:EarthObservationMetaData/eop:doi
creationDate
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:creationDate
modificationDate
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:modificationDate
platform
/om:procedure/eop:EarthObservationEquipment/eop:platform/eop:Platform/eop:shortName
platformSerialIdentifier
/om:procedure/eop:EarthObservationEquipment/eop:platform/eop:Platform/eop:serialIdentifier
instrument
/om:procedure/eop:EarthObservationEquipment/eop:instrument/eop:Instrument/eop:shortName
sensorType
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/eop:sensorType
compositeType
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:processing/eop:ProcessingInformation/eop:compositeType
processingLevel
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:processing/eop:ProcessingInformation/eop:processingLevel
orbitType
/om:procedure/eop:EarthObservationEquipment/eop:platform/eop:Platform/eop:orbitType
resolution
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/eop:resolution
spectralRange
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/
eop:wavelengthInformation/eop:WavelengthInformation/eop:spectralRange
wavelengths
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/
eop:wavelengthInformation/eop:WavelengthInformation/eop:discreteWavelengths
geo:box
to be
derived from: /eopr:EarthObservation/om:featureOfInterest/eop:Footprint
geo:name
N/A
time:start
/eop:EarthObservation/om:phenomenonTime/gml:TimePeriod/gml:beginPosition
time:end
/eop:EarthObservation/om:phenomenonTime/gml:TimePeriod/gml:endPosition
geo:uid
/eop:EarthObservation/eop:metaDataProperty/eop:EarthObservationMetaData/eop:identifier
useLimitation
N/A
hasSecurityConstraints
N/A
organisationName
N/A
publicationDate
N/A
dissemination
N/A
parentIdentifier
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:parentIdentifier
productionStatus
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:status
acquisitionType
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:acquisitionType
orbitNumber
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:orbitNumber
orbitDirection
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:orbitDirection
track
/om:procedure/eop:EarthObservationEquipment/
eop:acquisitionParameters/eop:Acquisition/eop:wrsLongitudeGrid
frame
/om:procedure/eop:EarthObservationEquipment/
eop:acquisitionParameters/eop:Acquisition/eop:wrsLatitudeGrid
swathIdentifier
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/eop:swathIdentifier
cloudCover
/om:result/opt:EarthObservationResult/opt:cloudCoverPercentage
or
/atm:EarthObservation/om:result/atm:EarthObservationResult/atm:cloudCoverPercentage
snowCover
/om:result/opt:EarthObservationResult/opt:snowCoverPercentage
or
/atm:EarthObservation/om:result/atm:EarthObservationResult/atm:snowCoverPercentage
lowestLocation
/atm:EarthObservation/om:resultOf/atm:EarthObservationRe
sult/atm:dataLayers/atm:DataLayer/atm:lowestLocation
highestLocation
/atm:EarthObservation/om:resultOf/atm:EarthObservationRe
sult/atm:dataLayers/atm:DataLayer/atm:highestLocation
productVersion
/eop:EarthObservation/om:result/eop:EarthObservationResult/eop:product/eop:ProductInformation/eop:version
acquisitionStation
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:downlinkedTo/eop:DownlinkInformation/eop:acquisitionStation
productQualityStatus
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:productQualityDegradation
productQualityDegradationTag
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:productQualityDegradationTag
processorName
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:processing/eop:ProcessingInformation/eop:processorName
processingCenter
/eop:metaDataProperty/eop:EarthObservationMetadata/eop:processing/eop:ProcessingInformation/eop:processingCenter
processingDate
/eop:metaDataProperty/eop:EarthObservationMetadata/eop:processing/eop:ProcessingInformation/eop:processingDate
sensorMode
/om:procedure/eop:EarthObservationEquipment/eop:sensor/eop:Sensor/eop:operationalMode
archivingCenter
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:archivedIn/eop:ArchivingInformation/eop:archivingCenter
processingMode
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:processing/eop:ProcessingInformation/eop:ProcessingMode
availabilityTime
om:resultTime/gml:TimeInstant/gml:timePosition
acquisitionSubType
/eop:metaDataProperty/eop:EarthObservationMetaData/eop:acquisitionSubType
startTimeFromAscendingNode
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:startTimeFromAscendingNode
completionTimeFromAscendingNode
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:completionTimeFromAscendingNode
illuminationAzimuthAngle
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:illuminationAzimuthAngle
illuminationZenithAngle
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:illuminationZenithAngle
illuminationElevationAngle
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/eop:Acquisition/eop:illuminationElevationAngle
polarisationMode
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:polarisationMode
polarisationChannels
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:polarisationChannels
antennaLookDirection
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:antennaLookDirection
minimumIncidenceAngle
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:minimumIncidenceAngle
maximumIncidenceAngle
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:maximumIncidenceAngle
dopplerFrequency
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:dopplerFrequency
incidenceAngleVariation
/om:procedure/eop:EarthObservationEquipment/eop:acquisitionParameters/sar:Acquisition/sar:incidenceAngleVariation
D.2 ISO 19115 / ISO19115-2 Geographic information – Metadata
In the table below the informative mappings of the queryables for the Collection Search to ISO19115(-2)/ISO19139(-2) are defined.
The table also includes the
mappings of the spatial and temporal
parameters of the OpenSearch Geo- and Time-Extension to the appropriate XPath in ISO 19115 / ISO 19115-2.
OpenSearch Parameter
ISO191(15|39) Metadata XPath
[5]
useLimitation
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_Data-Identification/gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:useLimitation/gco:CharacterString
accessConstraint
/gmi:MI_Metadata|gmd:MD_Metadata)/identificationInfo/MD_DataIdentification/resourceConstraints/MD_LegalConstraints/accessConstraints/MD_RestrictionCode/@codeListValue
Sample: license
otherConstraint
/gmi:MI_Metadata/gmd:identificationInfo/…/gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:otherConstraints
classification
/gmi:MI_Metadata/gmd:identificationInfo/…/gmd:resourceConstraints/gmd:MD_SecurityConstraints/gmd:classification
Sample: confidential
hasSecurityConstraints
/gmi:MI_Metadata/identificationInfo/MD_DataIdentification/resourceConstraints[2]/MD_SecurityConstraints/
If an
instance of the class MD_SecurityConstraint exists for a resource, the
“HasSecurityConstraints” is “true”, otherwise “false”
organisationName
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:pointOfContact/gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString
organisationRole
//(gmi:MI_Metadata|gmd:MD_Metadata)/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:pointOfContact/*/role
publicationDate
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date[../../gmd:dateType/gmd:CI_DateTypeCode/@codeListValue='publication']/text()
dissemination
/gmi:MI_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:transferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:name
or
/gmi:MI_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource/gmd:name
topicCategory
gmi:MI_Metadata/identificationInfo/MD_DataIdentification/topicCategory/gco:CharacterString
lineage
/gmi:MI_Metadata/gmd:dataQualityInfo/gmd:DQ_DataQuality/gmd:lineage/gmd:LI_Lineage/gmd:statement/gco:CharacterString
keyword
/gmi:MI_Metadata/gmd:identificationInfo//gmd:descriptiveKeywords/gmd:MD_Keywords
[gmd:type/gmd:MD_KeywordTypeCode/@codeListValue = 'theme']
doi
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:RS_Identifier/gmd:code/gco:CharacterString[../../codeSpace/gco:CharacterString='http://doi.org']
denominator
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:spatialResolution/MD_Resolution/gmd:equivalentScale/MD_RepresentativeFraction/gmd:denominator/gco:Integer
Sample:
distanceValue
distanceUOM
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:spatialResolution/MD_Resolution/gmd:distance/gco:Distance
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:spatialResolution/MD_Resolution/gmd:distance/gco:Distance/@uom
Sample 1:
language
/gmi:MI_Metadata/gmd:language
modificationDate
/gmi:MI_Metadata/gmd:dateStamp
title
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title
abstract
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract
searchTerms
Minimally this should be mapped to search on:
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:pointOfContact/gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString
/gmi:MI_Metadata/gmd:identificationInfo//gmd:descriptiveKeywords/gmd:MD_Keywords
[gmd:type/gmd:MD_KeywordTypeCode/@codeListValue = 'theme']
platform
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation /gmi:platform/gmi:MI_Platform/
gmi:description/gco:CharacterString
OR:
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/
gmi:MI_Platform/gmi:instrument/gmi:MI_Instrument/
gmi:mountedOn/gmi:MI_Platform/ gmi:description/gco:CharacterString
Sample: Meteosat8
platformSerialIdentifier
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/
gmi:MI_Platform/gmi:identifier/gmd:MD_Identifier/
gmd:code/gco:CharacterString
OR:
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/ gmi:MI_Platform/gmi:instrument/gmi:MI_Instrument/
gmi:mountedOn/gmi:MI_Platform/gmi:identifier/
MD_Identifier/code/gco:CharacterString
instrument
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/ /gmi:instrument/gmi:MI_Instrument/
gmi:citation/gmd:CI_Citation/gmd:identifier
/gmd:MD_Identifier/gmd:code/gco:CharacterString
OR:
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/
gmi:MI_Platform/gmi:instrument/gmi:MI_Instrument/ gmi:citation/gmd:CI_Citation/gmd:identifier
/gmd:MD_Identifier/gmd:code/gco:CharacterString
…..OR…..
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/ /gmi:instrument/gmi:MI_Instrument/
gmi:description/gco:CharacterString
OR:
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/
gmi:MI_Platform/gmi:instrument/gmi:MI_Instrument/
gmi:description/gco:CharacterString
Instrument name (sensor name). Used as ID for the instrument
Note: MI_Instrument/identifier not existent within XML schema of
ISO19115-2
Sample: SEVERI
sensorType
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:instrument/ gmi:MI_Instrument/
gmi:type/gmi:MI_SensorTypeCode/@id
OR:
/gmi:MI_Metadata/gmi:acquisitionInformation/
gmi:MI_AcquisitionInformation/gmi:platform/
gmi:MI_Platform/gmi:instrument/gmi:MI_Instrument/
gmi:type/gmi:MI_SensorTypeCode/@id
orbitType
N/A (not available in ISO19115(-2))
spectralRange
/gmi:MI_Metadata/gmd:contentInfo/gmi:MI_CoverageDescription/gmd:dimension/gmi:MI_Band
wavelengths
/gmi:MI_Metadata/gmd:contentInfo/gmi:MI_CoverageDescription/gmd:dimension/gmi:MI_Band/gmi:bandBoundaryDefinition
geo:box
/gmi:MI_Metadata/gmd:identificationInfo/*/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude
/gmi:MI_Metadata/gmd:identificationInfo/*/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude
/gmi:MI_Metadata/gmd:identificationInfo/*/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude
/gmi:MI_Metadata/gmd:identificationInfo/*/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude
geo:name
/gmi:MI_Metadata/gmd:identificationInfo/*/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicDescription/gmd:geographicIdentifier
time:start
/gmi:MI_Metadata/identificationInfo/MD_DataIdentification/extent/EX_Extent/temporalElement/EX_TemporalExtent/extent/gml:TimePeriod/beginPosition
time:end
/gmi:MI_Metadata/identificationInfo/MD_DataIdentification/extent/EX_Extent/temporalElement/EX_TemporalExtent/extent/gml:TimePeriod/endPosition
geo:uid
gmd:MD_Metadata/gmd:fileIdentifier
specificationTitle
//dataQualityInfo/*/report/*/result/*/specification/*/title
specificationDate
//dataQualityInfo/*/report/*/result/*/specification/*/date/*/date
specificationdateType
//dataQualityInfo/*/report/*/result/*/specification/*/date/*/dateType
degree
//dataQualityInfo/*/report/*/result/*/pass
processingLevel
N/A
compositeType
N/A
productType
N/A
D.3 Mapping for OGC CS Extension Package for ebRIM AP: EO Products
This mapping is based on information from “OGC Catalogue Services Standard 2.0 Extension Package for ebRIM Application Profile Earth Observation Products” (OGC 06-131r6).
OpenSearch Parameter
EOProduct ExtrinsicObject Attribute
productType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::productType”
]/rim:ValueList/rim:Value[1]
doi
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name=
”urn:ogc:def:slot:OGC-CSW-ebRIMEO::doi”]/rim:ValueList/rim:Value[1]
modificationDate
N/A
platform
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Name/rim:LocalizedString/@value
platformSerialIdentifier
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM- EO::platformSerialIdentifier” ]/rim:ValueList/rim:Value[1]
instrument
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM- EO::instrumentShortName” ]/rim:ValueList/rim:Value[1]
sensorType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM-EO::sensorType” ]/rim:ValueList/rim:Value[1]
compositeType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::compositeType”
]/rim:ValueList/rim:Value[*]
processingLevel
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::processingLevel”
]/rim:ValueList/rim:Value[*]
orbitType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM- EO::platformOrbitType” ]/rim:ValueList/rim:Value[1]
resolution
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM- EO::sensorResolution” ]/rim:ValueList/rim:Value[1]
spectralRange
N/A
wavelengths
N/A
geo:box
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-bRIMEO::EOProduct”]/rim:Slot[@name=”urn:ogc:def:slot:OGC-CSW-ebRIMEO::multiExtentOf”]/wrs:ValueList/wrs:AnyValue[1]
geo:name
N/A
time:start
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-bRIMEO::EOProduct”]/rim:Slot[@name=”urn:ogc:def:slot:OGC-CSW-ebRIMEO::beginPosition”]/rim:ValueList/rim:Value[1]
time:end
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIMEO::EOProduct”]/rim:Slot[@name=”urn:ogc:def:
geo:uid
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIMEO::EOProduct”]/@id
or
/rim:ExternalIdentifier/@value (linked
to the EOProduct ExtrinsicObject by the ExternalIdentifier’s registryObject
attribute)
useLimitation
N/A
hasSecurityConstraints
N/A
organisationName
N/A
publicationDate
N/A
dissemination
N/A
parentIdentifier
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::parentIdentifier”
]/rim:ValueList/rim:Value[1]
productionStatus
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::status”
]/rim:ValueList/rim:Value[1]
acquisitionType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::acquisitionType”
]/rim:ValueList/rim:Value[1]
orbitNumber
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::orbitNumber” ]/rim:ValueList/rim:Value[1]
orbitDirection
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::orbitDirection”
]/rim:ValueList/rim:Value[1]
track
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::wrsLongitudeGrid”
]/rim:ValueList/rim:Value[1]
frame
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::wrsLatitudeGrid”
]/rim:ValueList/rim:Value[1]
swathIdentifier
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-EO::
EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-
CSW-ebRIM-EO::swathIdentifier” ]/rim:ValueList/rim:Value[1]
cloudCover
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::cloudCoverPercentage”
]/rim:ValueList/rim:Value[1]
snowCover
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::snowCoverPercentage”
]/rim:ValueList/rim:Value[1]
lowestLocation
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGCCSW-
ebRIM-EO::EODataLayer”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIMEO::lowestLocation”]/rim:ValueList/rim:Value[1]
highestLocation
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGCCSW-
ebRIM-EO::EODataLayer”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIMEO::highestLocation”]/rim:ValueList/rim:Value[1]
productVersion
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGCCSW-
ebRIMEO::EOProductInformation”]/rim:Slot[@name=”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::version”]/rim:ValueList/rim:Value[1]
acquisitionStation
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::acquisitionStation”
]/rim:ValueList/rim:Value[1]
productQualityStatus
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name =
”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::imageQualityDegradation”
]/rim:ValueList/rim:Value[1]
productQualityDegradationTag
N/A
processorName
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::processorName”
]/rim:ValueList/rim:Value[*]
processingCenter
N/A
processingDate
N/A
sensorMode
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOAcquisitionPlatform” ]/rim:Slot[ @name = ”urn:ogc:def:slot:O
GC-CSW-ebRIM- EO::sensorOperationalMode” ]/rim:ValueList/rim:Value[1]
archivingCenter
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM-
EO::EOArchivingInformation” ]/rim:Name/rim:LocalizedString/@value
processingMode
N/A
availabilityTime
N/A
acquisitionSubType
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::acquisitionSubType”
]/rim:ValueList/rim:Value[1]
startTimeFromAscendingNode
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name =
”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::startTimeFromAscendingNode”
]/rim:ValueList/rim:Value[1]
completionTimeFromAscendingNode
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC-CSW-ebRIM-EO::EOProduct”
]/rim:Slot[ @name =
”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::completionTimeFromAscendingNode”
]/rim:ValueList/rim:Value[1]
illuminationAzimuthAngle
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-
EO::illuminationAzimuthAngle” ]/rim:ValueList/rim:Value[1]
illuminationZenithAngle
N/A
illuminationElevationAngle
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-
EO::illuminationElevationAngle” ]/rim:ValueList/rim:Value[1]
polarisationMode
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::polarisationMode”
]/rim:ValueList/rim:Value[1]
polarisationChannels
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::polarisationChannels”
]/rim:ValueList/rim:Value[1]
antennaLookDirection
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::antennaLookDirection”
]/rim:ValueList/rim:Value[1]
minimumIncidenceAngle
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name =
”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::minimumIncidenceAngle”
]/rim:ValueList/rim:Value[1]
maximumIncidenceAngle
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name =
”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::maximumIncidenceAngle”
]/rim:ValueList/rim:Value[1]
dopplerFrequency
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct”
]/rim:Slot[ @name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::dopplerFrequency”
]/rim:ValueList/rim:Value[1]
incidenceAngleVariation
/rim:ExtrinsicObject[
@objectType = ”urn:ogc:def:objectType:OGC- CSW-ebRIM- EO::EOProduct” ]/rim:Slot[
@name = ”urn:ogc:def:slot:OGC-CSW-ebRIM-EO::incidenceAngleV ariation”
]/rim:ValueList/rim:Value[1]
D.4 Mapping for OGC CS Extension Package for ebRIM AP: I15
In the table below the informative mappings of the queryables for the Collection Search to the CSW ebRIM I15 Extension Package (OGC 13-084) are defined.
The table also includes the
mapping of the spatial and temporal
parameters of the OpenSearch Geo- and Time-Extension to the CSW ebRIM I15 Extension Package.
OpenSearch Parameter
I15 Extension Package Elements (OGC 13-084)
useLimitation
<
-> <
accessConstraint
<
(the classification is classified with RestrictionType “access”)
otherConstraint
<
LegalConstraints -> <
classification
<
SecurityConstraints -> <
ClassificationCode
hasSecurityConstraints
Map to a
check for availability of any of the predefined constraints
organisationName
<
publicationDate
<
<
dissemination
N/A
abstract
<
ResourceMetadata ->
<
topicCategory
<
ResourceMetadata -> <
TopicCategory
lineage
<
ResourceMetadata ->
<
parentIdentifier
<
<
Identifier
keyword
Classification with KeywordSchemeUntyped or KeywordSchemeTheme
doi
N/A
distanceValue
distanceUOM
<
denominator
<
language
<
modificationDate
<
title
<
searchTerms
Minimally this should be mapped to the corresponding
mappings of:
abstract
title
organisationName
keyword
platform
<
platformSerialIdentifier
<
Identifier
instrument
<
Identifier
…..OR…..
<
sensorType
<
orbitType
N/A
spectralRange
N/A
wavelengths
N/A
specificationTitle
<
ReferenceSpecification -> <
specificationDate
specificationdateType
<
ReferenceSpecification ->
<
<
<
degree
<
ReferenceSpecification -> <
organisationRole
Handled
through the CitedResponsibleParty classification on the CitedResponsibleParty
association.
processingLevel
N/A
compositeType
N/A
productType
N/A
geo:box
<
gml:Envelope):
The WestBoundLongitude corresponds to the
longitude of “lowerCorner” in gml:Envelope
The EastBoundLongitude corresponds to the
longitude of “upperCorner” in gml:Envelope
The SouthBoundLatitude corresponds to the
latitude of “lowerCorner” in gml:Envelope.
The NorthBoundLongitude corresponds to the
latitude of “upperCorner” in gml:Envelope
geo:name
<
ResourceMetadata -> <
time:start
<
<
time:end
<
<
geo:uid
<
D.5 Mapping for OGC CS Extension Package for ebRIM AP: SensorML
In the table below the informative mappings of the queryables to “OGC Catalogue Services Specification 2.0 Extension Package for ebRIM Application Profile: SensorML” (OGC 09-163) is defined.
OpenSearch Parameter
ExtrinsicObject Attribute
Section in OGC 09-163r2
platform
wrs:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot
/rim:ValueList/rim:Value[1]
13.1
instrument
wrs:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot
/rim:ValueList/rim:Value[1]
13.1
orbitType
Use
Classification to the Corresponding ClassificationNode of the “
urn:ogc:def:
classificationScheme:OGC-CSW-ebRIM-Sensor::OrbitTypes
ClassificationScheme
B.6.1
sensorType
Use
Classification to the Corresponding ClassificationNode of the
“urn:ogc:def:classificationScheme:OGC-CSW-ebRIM-Sensor::SystemTypes:SensorType:EOInstrumentType”
ClassificationScheme
B.6.2
pointingAcrossTrackAngle
rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor::
AcrossTrackPointingLowerBound”]/rim:ValueList/rim:Value[1]
rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor::
AcrossTrackPointingUpperBound”]/rim:ValueList/rim:Value[1]
B.6.2
pointingAlongTrackAngle
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor::
AlongTrackPointingLowerBound”]/rim:ValueList/rim:Value[1]
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor:: AlongTrackPointingUpperBound”]/rim:ValueList/rim:Value[1]
B.6.2
resolution
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor::
AlongTrackGroundResolution”]/rim:ValueList/rim:Value[1]
B.6.4
spectralRange
/rim:ExtrinsicObject[@objectType=”urn:ogc:def:objectType:OGC-CSW-ebRIM-Sensor::System”]/rim:Slot[@name=”
urn:ogc:def:slot:OGC-CSW-ebRIM-Sensor::SpectralRange”]/rim:ValueList/rim:Value[1]
B.6.4
D.6 Response Mapping: EOP O&M / EOP EP to ATOM
Response mapping for Atom encoding to the EO Metadata profile of O&M (OGC 10-157r4)
Atom
Element
Mapping to EO O&M
atom:entry/
atom:title
eop:metaDataProperty/eop:EarthObservationMetaData/eop:identifier
atom:entry/
atom:author
N/A
atom:entry/
atom:category
N/A
atom:entry/
atom:summary
N/A
atom:entry/
atom:updated
om:resultTime
atom:entry/
dc:date
om:phenomenonTime
atom:entry/
atom:id
N/A
atom:entry/
dc:identifier
eop:metaDataProperty /
eop:EarthObservationMetaData / eop:identifier
atom:entry/
@xml:lang
N/A
atom:entry/
atom:rights
N/A
atom:entry/ georss:*
om: featureOfInterest
atom:entry/
atom:link[@rel=’search’]
N/A
atom:entry/
atom:link[@rel=’icon’]
om:result/eop:EarthObservationResult/eop:product/eop:
BrowseInformation/eop:fileName
atom:entry/
atom:link[@rel=’alternate’]
N/A
atom:entry/
atom:link[@rel=’enclosure’]
om:result/eop:EarthObservationResult/eop:product/eop:ProductInformation/eop:fileName
D.7 Response Mapping: ISO191(15|39)[-2] / I15 EP to ATOM
The following table defines the mappings from ISO191(15|39)[-2] and I15 EP (OGC 13-084) to ATOM response elements.
Atom
Element
Mapping from
ISO19139-2
Mapping
from I15
atom:entry/
atom:title
gmd:MD_Metadata/gmd:identificationInfo/
<
ResourceMetadata -> Name
atom:entry/
atom:author
The organization name and email of the
corresponding field in ISO19139-2: mapped from /gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:pointOfContact/->
/gmd:organisationName/ gco:CharacterString
and
/gmd:contactInfo/
gmd:CI_Contact/gmd:address/ gmd:CI_Address/ gmd:electronicMailAddress/
gco:CharacterString
<
-> Name
And
<
Organization -> EmailAddress
atom:entry/
atom:category
Shall include:
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:topicCategory
and
gmd:identificationInfo//gmd:descriptiveKeywords/gmd:MD_Keywords
[gmd:type/gmd:MD_KeywordTypeCode/@codeListValue = 'theme']
and possibly entries from:
/gmi:MI_Metadata/gmd:hierarchyLevelName/gco:CharacterString
<
-> <
and
Classifications with KeywordSchemeUntyped or
KeywordSchemeTheme
and possibly
<
-> <
atom:entry/
atom:summary
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract
<
ResourceMetadata -> <
atom:entry/
atom:contributor
N/A
atom:entry/
atom:updated
gmd:MD_Metadata/gmd:identificationInfo/
<
-> <
atom:entry/
dc:date
DateTime or DateTime Interval (aka:
2007-03-01T13:00:00Z/2008-05-11T15:30:00Z) -> to be mapped from
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/extent/EX_Extent/temporalElement/EX_TemporalExtent/extent/gml:TimePeriod/gml:beginPosition
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/extent/EX_Extent/temporalElement/EX_TemporalExtent/extent/gml:TimePeriod/gml:endPosition
<
ResourceMetadata -> <
<
ResourceMetadata -> <
atom:entry/
atom:id
The identifier shall be created
(as already done in the I15ToISO-Bridge) in a way that it can be used as
parentIdentifier parameter for a subsequent EOP product search. Sample:
urn:ogc:def:EOP:EUM:acronym:ASCxxx1A:satellite:M02:fileid:EO:EUM:DAT:METOP:ASCSZO1B
see notes column left
atom:entry/
dc:identifier
To be mapped from:
/gmd:MD_Metadata/gmd:fileIdentifier
<
MetadataInformation -> <
atom:entry/
@xml:lang
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:language
<
ResourceMetadata -> <
atom:entry/
atom:rights
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_Data-Identification/
gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:useLimitation/gco:CharacterString
[6]
<
-> <
atom:entry/ georss:*
Polygon -> to be mapped from the
/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent//gmd:geographicElement/gmd:EX_GeographicBoundingBox
[7]
<
ResourceMetadata -> <
atom:entry/
atom:link[@rel=’search’]
The
atom/link[@rel='search'] element should provide a link to a search engine
(OSDD document) to search for specific products of the collection described
in the atom:entry. In this OSDD a link with @rel='results' should be found
that provides gives the template for the product query (e.g. …&parentIdentifier=
see notes column left
atom:entry/atom:link[@rel=’icon’]
Per 8.2.5 the media:content@url should be mapped
from /gmd:MD_BrowseGraphic/gmd:filename, the media:content@type from
/gmd:MD_BrowseGraphic/gmd:filetype.
<
MD_BrowseGraphic
atom:entry/atom:link[@rel=’via’]
[8]
atom:entry/atom:link[@rel=’alternate’]
For the rel “via” a link to the
original/native source (from which the other metadata types are derived by
conversion or translation) shall be provided.
For the rel “alternate” links to
alternative formats/representations of the original source shall be provided.
E.g. link to the GetRecordById operation:
Reference (Link) to the data source (e.g. original ISO19139 collection
metadata).
The “type” attribute set to
“application/vnd.iso.19139+xml”.
Example:
title="ISO 19139 Metadata" href="
It may also make sense to include other links, e.g. a
link (with rel=”alternate”) to the HTML-based metadata-representation – but
now with the “type” attribute set to “text/html” and the "href"
attribute set to the additional HTML representation of the metadata.
Example:
href="http://46.51.189.235:80/discovery/Start/DirectSearch/DetailResult.do?f(r0)=EO:EUM:DAT:METOP:OAS025"
rel="alternate" title="ASCAT Winds and Soil Moisture at 25 km
Swath Grid - Metop" type=" text/html "/>
atom:entry/
atom:link[@rel=’enclosure’]
Provide here the dissemination endpoints: atom:link
elements reference every single dissemination endpoint of the data resource.
Proposal: Link element includes a "rel"
attribute with value "enclosure", a "type" attribute with
"text/html" and a "title" attribute with the name of the
dissemination point. Example:
href="http://eoportal.eumetsat.int/userMgmt" rel="enclosure"
title="EO Portal Registration" type="text/html"/>
The XPaths in ISO19139 are as
follows:
The link
itself:
/gmd:MD_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor[1]/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine[2]/gmd:CI_OnlineResource/gmd:linkage/gmd:URL
The title:
/gmd:MD_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor[1]/gmd:MD_Distributor/gmd:distributorTransferOptions/gmd:MD_DigitalTransferOptions/gmd:onLine[1]/gmd:CI_OnlineResource/gmd:name/gco:CharacterString
atom:entry/atom:link[@rel=’up’]
N/A
atom:content[@type=’html’]
An atom:content element may be added to the
atom:entry to allow to visualization links to the additional metadata
presentations and the dissemination links. The content element of the
atom:entry
includes a “type”
attribute with “html”. Example:
href="http://46.51.189.235:80/discovery/Start/DirectSearch/DetailResult.do?f(r0)=EO:EUM:DAT:METOP:ASCAT25">Metadata
(HTML)</a> <br/><a
href="http://46.51.189.235:80/soapServices/CSWStartup?service=CSW&version=2.0.2&request=GetRecordById&outputSchema=http://www.isotc211.org/2005/gmi&Id=EO:EUM:DAT:METOP:ASCAT25">Metadata (ISO19139 XML)</a> <br/> <a
href="http://46.51.189.235:80/soapServices/OpenSearch?format=atom&id=EO:EUM:DAT:METOP:ASCAT25">Metadata
(ATOM)</a> <br/>
<a
href="http://eoportal.eumetsat.int/userMgmt/protected/dataCentre.faces?acronym=OASW025">EUMETSAT
Data Centre (until 28/02/2011) </a> <br/> <a
href="/discovery/Start/DirectSearch/Extended.do?freeTextValue(resourceidentifier)=EO:EUM:DAT:METOP:OAS025">Please
order from ASCAT Winds and Soil Moisture for data from 28/02/11 onwards</a> <br/> <a
href="http://www.osi-saf.org">OSI SAF Archive and
FTP</a> <br/>
The
content without URL-encoding looks as follows:
href="http://46.51.189.235:80/discovery/Start/DirectSearch/DetailResult.do?f(r0)=EO:EUM:DAT:METOP:ASCAT25">Metadata
(HTML)
href="http://46.51.189.235:80/soapServices/CSWStartup?service=CSW&version=2.0.2&request=GetRecordById&outputSchema=http://www.isotc211.org/2005/gmi&Id=EO:EUM:DAT:METOP:ASCAT25">Metadata
(ISO19139 XML)
href="http://46.51.189.235:80/soapServices/OpenSearch?format=atom&id=EO:EUM:DAT:METOP:ASCAT25">Metadata
(ATOM)
href="http://eoportal.eumetsat.int/userMgmt/protected/dataCentre.faces?acronym=OASW025">EUMETSAT
Data Centre (until 28/02/2011)
href="/discovery/Start/DirectSearch/Extended.do?freeTextValue(resourceidentifier)=EO:EUM:DAT:METOP:OAS025">Please
order from ASCAT Winds and Soil Moisture for data from 28/02/11
onwards
href="http://www.osi-saf.org">OSI SAF Archive and FTP
Annex E: Revision history
Date
Release
Author
Paragraph
modified
Description
2013-03-15
0.0.1
Pedro Gonçalves
Consolidation
of Earth Observation Extension
2013-08-12
0.0.2
Pedro Goncalves
Annex B
and C
All
Addition
of Schemas and examples
Revision and
typo correction
2013-12-13
0.0.3
Pedro Goncalves
Annexes
Reorganization of Annexes. Correction of
example values on tables 3, 4 and 5.
2014-06-02
0.0.4
Uwe Voges
All
Included definitions of Collection,
Product etc, included additional queryables for Collection Discovery,
included informative mappings of all Collection queryables to ISO19115/1939
and to CSW ebRIM EP I15, included all informative response mappings from
ISO19115/1939 and CSW ebRIM EP I15 to ATOM,….
2014-06-26
0.0.4
Uwe Voges
All
Added
an INSPIRE conformance class, updated rnc file regarding additional query
parameters, resolved some comments, mainly in "Response Mapping:
ISO191(15|39)[-2] / I15 EP to ATOM", renamed platformShortName now
platform, uniquely named "productQualityStatus" and
"productQualityDegradationTag" in the whole doc and added those to
rnc schema definition, fixed the "resolution" for Collections as
follows:
Splitted
resolution into 2 (groups) of parameters (see my mapping in annex D2):
denominator
AND
distanceValue
+ distanceUOM (for resolution an UOM
is needed)
This is the only useful way it can be
done (this was done in the same way in CSW AP ISO).
2014-07-11
0.0.4
Uwe Voges
All
Added
reference to INSPIRE specifications. Added requirement for INSPIRE.
2014-07-25
0.0.4
Uwe Voges
All
Split
parameters table for collections into 2 tables: one for INSPIRE conformance
In the
INSPIRE table: degree now has possible values of "true",
"false", "null" and I grouped queryables which make only
sense if used together.
Extended
the “Overview” section. Added 6.2 "Two step search" for a better
understanding how search for collections and products may work.
Reorganized
the requirements in the text and their mappings to conformance classes in
table 1.
Reorganized
and extended the ATS: organized the ATS so that tests are grouped related to
conformance classes and assigned requirement(s) to the tests.
Corrected
specification references, added SensorML EP Ref
Updated
response mappings to ATOM
Added
comments to: B.7. Earth Observation Extension Query Element Schema
(schemas/opensearch/extensions/eo/1.0/eo.rnc) which must be solved by Pedro
2014-07-28
0.0.4
Pedro Gonçalves
Conformance
Classes
Schemas
Content
review of requirements and their mappings to conformance classes / test
classes
Review
of EO Schemas
2014-10-27
0.0.5
Yves Coene
All
Corrected
eop entry in Table 2 and Annex B.8.
Updated
requirement /req/entry-eop.
Added
eo:creationDate and eo:modificationDate mapping in Table 5, Annex B.7 and
Annex D.1.
Reworded
Conformance Test Class A.2.1 to allow also derived types such as
opt:EarthObservation or sar:EarthObservation etc.
Updated
OGC 10-032r7 references to OGC 10-032r8 and updated its title.
2016-05-25
0.0.7 (0.0.6 was only internal)
Uwe Voges
All
Included
the changes solving all comments received on the OGC OpenSearch Extension for
Earth Observation candidate standard during the TC voting period:
Comment
2.1:
Added
new queryables highestLocation and lowestLocation to table 5, B7, mappings to
D1 and D3 (not applicable to collections).
Extended
mappings for cloudCover and snowCover in D1
Comment
2.2:
We now
use (in all tables) "organisation" instead "organization"
for:
organisationName
organisationRole
Comment
2.3:
Made
the type of eo:frame and eo:track equal to "string" in Table 5, B7,
Comment
2.5:
“doi”
was added as queryable.
Added
definition to table 3 and B7.
Added
mappings for collection and products to D1, D2, D3, D4
Comment
2.6:
“publicationDate”
was added as queryable.
The
type of the queryable is now of type date.
Added
definition to table 4.
Added
definition to B7.
Added
mappings for collection and products to D1, D2, D3, D4
Comment
2.7
Product
Identifier is not defined as new queryable but is mapped to OGC 10-032
geo:uid
Added
to table D1 and D3.
Comment
2.8:
“productVersion”
was added as queryable.
The
type of the queryable is now of type string.
Added
definition to table 5 and B7.
Added
mappings for products to D1, D3
Comment
2.9:
recordSchema
was added as queryable.
The
type of the queryable is now of type string.
Standard
values are e.g. http://www.opengis.net/eop/2.1 (OGC O&M EOP),
(ISO19115)
Added
definition to table 3
Added
definition to B7.
Comment
2.10:
Modified
not added as queryable: this is already covered by queryable
modificationDate.
But
mappings were added in D2, D3, D4.
Comment
2.11:
Mapping
of the basic OGC 10-032 queryables geo:box, geo:name, geo:uid, time:start, time.end in D1
and D3
Editorial:
Added
keywords
Hints
on "alternative" representations in atom response entries
Editorial changes
2016-05-30
0.0.7 (0.0.6 was only internal)
Uwe Voges
All
Table
2: added media namespace from example 7. Added param namespace used in Annex
C.
Instead
of adding recordSchema in the eo: namespace, we keep it in the sru: namespace
and added a note in the same way as for the Parameter extension where also
the param: namespace is kept instead of moving everything to the eo:
namespace.
Table
7: added relation to first and last page in ATOM response
2016-05-31
0.0.7 (0.0.6 was only internal)
Uwe Voges
All
Added
links to first and last entry to atom feed.
atom:entry/dc:identifier
now mandatory
Added
root nodes to be provided for every recordSchema
Added
hint to the official Atom.XSD file used by NASA CWICSmart conformance tests
2016-06-01
0.0.7 (0.0.6 was only internal)
Uwe Voges
Table-2
Chapter 8.1, 8.2
all
Added
namespaces for ISO19115(-2)
Added
recordSchemas for Sensor ML 2.0 and Dublin Core
Editorial
2016-07-06
0.0.8
Uwe Voges, Yves Coene
Table-3
Chapter 8.2.2
Table 8
Chapter 8.2.4
In
summary the inclusion and linking to additional/alternative metadata in the
ATOM response was clarified and updated. Metadata model references
(namespaces, identifier, media types,..) were updated (ISO19115-1/ISO19115-3
was added), the list of reference documents was updated, document references
were added in different positions and examples were updated and clarified
clarified
sru:recordSchema
improved
text on detailed metadata
Clarified
atom:entry/atom:link[@rel= ’alternative’] and Additional Metadata.
Extended
chapter 8.2.4 with additional explanations
2016-09-06
1.0.0
Uwe Voges
Requirements / Conformance
Classes
Conformance Tests
Table 6
Improved
explanation for what kind of search which parameters should be used
Definitions
of requirements / conformance classs aligned with usual OGC definitions
Updated
references
Definition of availabilityTime
improved
[1]
www.opengeospatial.org/cite
[2]
Including products of logical collections (e.g. containing items of different types, sensor, sensor mode, platforms)
[3]
For the identifier see:
[4]
Note: the official Atom.XSD file used by NASA CWICSmart conformance tests is stricter than this RELAX NG which allows more flexibility. See https://tools.oasis-open.org/version-control/browse/wsvn/cmis/trunk/SchemaProject/schema/ATOM.xsd
[5]
Can be applied to gmd:MD_Metadata (ISO19139) and gmi:MI_Metadata (ISO19139-2)
[6]
the semantic of atom:rights is not 100%: therefore other mappings (accessConstraints, otherConstraints, useConstratints, classification) may make sense.
[7]
Note: it makes sense to provide a gml:Polygon/gml:exterior/gml:LinearRing/gml:posList entry as different clients are able to render this.
[8]
An alternative (or in addition to this) is to include gmd:MD_Metadata into the ATOM response (see below).