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

JavaScript Object Notation (JSON) [NR1] has been gaining in popularity for encoding data in Web-based applications. JSON consists of sets of objects described by name/value pairs.  This OGC standard describes a GeoJSON [NR2] and JSON-LD [NR3] encoding for Earth Observation (EO) metadata for datasets (granules).  This standard can be applied to encode metadata based on the Earth Observation Metadata Profile of Observations and Measurements (O&M) OGC 10-157r4 [OR1] or as an encoding of the Unified Metadata Model for Granules (UMM-G) conceptual model [OR2].

The GeoJSON encoding defined in this document is defined as a compaction[1] through a normative context, of the proposed JSON-LD encoding, with some extensions as presented in section 8 of this document.  Therefore, the JSON-LD encoding can also be applied to other RDF [OR8] encodings including RDF XML [OR11] and RDF Turtle [OR12].

This document makes no assumptions as to the "service" interfaces through which the metadata are accessed and applies equally well to a Service Oriented Architecture as well as a Resource Oriented or RESTful Architecture.  The documented approach can be applied in combination with the following technologies:

  • OGC OpenSearch extensions [OR19], [OR20], [OR25],
  • W3C Linked Data Platform [OR21], [OR22],
  • OASIS searchRetrieve [OR23],
  • OASIS OData [OR24].

GeoJSON is a format for encoding collections of simple geographical features along with their non-spatial attributes using JSON. GeoJSON objects may represent a geometry, a feature, or a collection of features. GeoJSON supports the following geometry types derived from the OGC Simple Features specification: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon and GeometryCollection. Features in GeoJSON contain a geometry object and additional properties, and a feature collection represents a list of features.

JSON is human readable and easily parseable. However, JSON is schemaless.  JSON and GeoJSON documents do not include an explicit definition of the structure of the JSON objects contained in them.  Therefore, this standard is based on a normative JSON-LD context which allows each property to be explicitly defined as a URI.  Furthermore, the JSON encoding is defined using JSON Schema [OR18] which allows validation of instances against these schemas.

ii.   Keywords

The following are keywords to be used by search engines and document catalogues

ogcdoc, ogc documents, Earth Observation, EO, Linked Data, Datasets, GeoJSON, JSON, JSON-LD, Metadata

iii.   Preface

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 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 when possible.

iv.   Submitting organisations

The following organisations will submit the original document or its revisions to the Open Geospatial Consortium (OGC):

  • CEOS – Committee on Earth Observation Satellites
  • CGI
  • Con terra
  • ESA – European Space Agency
  • EUMETSAT
  • Spacebel s.a.

 

The editors would like to acknowledge that this work is the result of collaboration and review of many organisations and would like to thank for the comments and contributions from:

  • DLR
  • GeoSolutions
  • VITO

Note: this acknowledgement does not imply an endorsement by these organisations.

v.   Submitters

All questions regarding this submission should be directed to the editor or the submitters:

Name Affiliation

Yves Coene

Spacebel s.a.

Uwe Voges

con terra

Olivier Barois

ESA

Andrea Della Vecchia

ESA

John Taylor

CGI

Michael Schick

EUMETSAT

 


         

1        Scope

This OGC standard defines a GeoJSON [NR2] and JSON-LD [NR3] encoding of Earth Observation (EO) metadata for datasets (i.e., products or granules).  The standard provides document models for the exchange of information describing EO datasets, both within and between different organisations.

The document model is derived from the conceptual models defined in the Earth Observation Metadata Profile of Observations and Measurements (O&M) OGC 10-157r4 [OR1], and the Unified Metadata Model for Granules (UMM-G) [OR2], depicted below.

EO Metadata Profile of O&M Conceptual Model from [OR1]
Figure : EO Metadata Profile of O&M Conceptual Model from [OR1]

Please note that the proposed encoding can also be applied to EO dataset metadata originally encoded according to other models, including ISO-19139 [OR27], ISO-19139-2 [OR28], etc.  The mapping between UMM-G to these encodings can be found in [OR2] while this document defines the GeoJSON to UMM-G model.  Future versions of this document may contain mappings to ISO models as annexes.

Unified Metadata Model for Granules [OR2]
Figure : Unified Metadata Model for Granules [OR2]

1.1       Design Approach and Rationale

This section is non-normative.

The metadata encoding defined in the document satisfies the following design goals.

  •   Feature-based GeoJSON model: The model maximizes reuse of pre-existing standardized property names.  Wherever possible, existing properties from GeoJSON [NR2] and OWS Context [NR5] are used for modeling EO product properties instead of new EO-specific property names.  These are then are grouped under either feature.properties, feature.properties.[acquisitionInformation], or feature.properties.productInformation.
  •   Simplicity: This document does not describe the full information models or XML encodings referred to above.  The above standards (i.e., OGC 10-157r4 and UMM-G) should be referred to for these details.  This standard intends to provide a simpler, overarching exchange format integrating comments from the Committee on Earth Observation Satellites (CEOS) Working Group on Information Systems and Services (WGISS) community, which supported the submission of this standard to the OGC.
  •   Multiple use cases: The metadata model supports metadata for an acquisition (e.g., planned or acquired), for a simple product derived from one acquisition (planned, acquired or archived), or for a synthesis product (i.e., derived from multiple acquisitions over a certain period of time or from acquisitions by multiple sensors).

 

1.2       Document Outline

Hereafter a brief outline of the document content allows readers to jump directly to the topic of their interest.

  •   Chapter 3 lists the normative and informative references used in this document.
  •   Chapter 4 defines the main terms used in the document.
  •   The conventions used in this document are explained in Chapter 5.
  •   Chapter 6 gives an overview.
  •   Chapter 7 specifies the proposed GeoJSON encoding.
  •   Chapter 8 describes how the encoding can be extended with additional properties and describes the extension to JSON-LD which allows for describing multi-dimensional arrays as allowed by GeoJSON.
  •   Chapter 9 provides information about the expected MIME media types which correspond to the proposed encodings.
  •   Chapter 10 describes future work.

Finally, the following information is provided in the Annexes:

  •   Annex A defines the Abstract Test Suite for the standard.
  •   Annex B includes normative JSON-LD @context definitions that allow interpreting the GeoJSON encoding as JSON-LD. It also formally defines the EO vocabulary (i.e., RDF properties and classes) in RDF Schema format.
  •   Annex C presents the mapping of the EO properties proposed in this specification to the OGC 10-157r4 and UMM-G conceptual models. 
  •   Annex D contains the complete listing of examples illustrating the encodings defined in this document.
  •   Annex E includes the JSON schema definitions defining the GeoJSON encoding.
  •   Annex F explains where the schema file, context files and examples can be found in the OGC schema repository.
  •   Annex G provides the revision history of this document.

 


2        Conformance

2.1       Conformance to base specifications

This section describes the compliance testing required for an implementation of this standard.

2.2       Conformance classes

The framework, concepts, and methodology for testing and the criteria to be achieved in order to claim conformance are specified in the OGC Compliance Testing Policies and Procedures and the OGC Compliance Testing web site[2].

Annex A defines a set of tests and conformance classes that will support various applications with a range of different requirements.  The following conformance classes are distinguished. Testing is based on data validation. In order to conform to this OGC standard, an implementation shall choose to implement one or more of the conformance classes specified in Annex A (normative).

Table : Conformance classes related to data instances
Conformance Class Description Clause

/conf/core

Single EarthObservation object or collection of EarthObservation objects.

Sections  7.1 and Section 7.8

/conf/earthobservation

EarthObservation objects.

Section 7.1

/conf/properties

Properties objects.

Section 7.1.1

/conf/links

Links objects.

Section 7.1.2

/conf/offering

Offering objects.

Section 7.1.4

/conf/metadata-information

MetadataInformation objects.

Section 7.2

/conf/data-identification

DataIdentification objects.

Section 7.3

/conf/geometry

Geometry objects.

Section 7.4

/conf/acquisition-information, /conf/acquisition-parameters

AcquisitionInformation and AcquisitionParameters objects.

Section 7.6

/conf/product-information

ProductInformation objects.

Section 7.7

/conf/earthobservation-collection

EarthObservationCollection objects.

Section 7.8


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.

3.1       Normative references

 

[NR1]          RFC 7159, The JavaScript Object Notation (JSON) Data Interchange Format, 2014, http://www.ietf.org/rfc/rfc7159.txt

[NR2]          RFC 7946, The GeoJSON Format, 2016, https://tools.ietf.org/html/rfc7946

[NR3]          JSON-LD 1.0, A JSON-based Serialisation for Linked Data, W3C Recommendation, 2014, http://www.w3.org/TR/json-ld/

[NR5]          OGC 14-055r2, OGC OWS Context GeoJSON Encoding, 2017,  http://docs.opengeospatial.org/is/14-055r2/14-055r2.html

[NR6]          OGC 06-121r9, OGC Web Services Common Standard, Version 2.0.0, 2010, http://portal.opengeospatial.org/files/?artifact_id=38867

[NR7]          RFC 3986, Uniform Resource Identifiers (URI): Generic Syntax, 2005 http://www.ietf.org/rfc/rfc3986.txt

[NR8]          RFC 3987, Internationalised Resource Identifiers (IRIs), 2005, https://tools.ietf.org/html/rfc3987.

[NR9]          RFC 2616, Hypertext Transfer Protocol – HTTP/1.1, 1999, http://www.ietf.org/rfc/rfc2616.txt

[NR11]         RFC 5988, Web Linking, 2010, http://www.ietf.org/rfc/rfc5988.txt

[NR12]         ECMA International, "ECMAScript Language Specification, Edition 5.1", Standard ECMA-262, 2011, http://www.ecma-international.org/publications/standards/Ecma-262.htm

[NR13]         The JSON Data Interchange Format, 2017, http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf        

 

3.2       Other references

 

[OR1]          OGC 10-157r4, Earth Observation Metadata profile of Observations & Measurements, Version 1.1, 2016, http://docs.opengeospatial.org/is/10-157r4/10-157r4.html.

[OR2]          Unified Metadata Model for Granules (UMM-G), Version 1.3, 2015, https://wiki.earthdata.nasa.gov/display/CMR/CMR+Documents.

[OR3]          Unified Metadata Model Common Elements, Version 1.4, 2016, https://wiki.earthdata.nasa.gov/display/CMR/CMR+Documents.

[OR4]          Unified Metadata Model for Collections (UMM-C), Version 1.3, 2015, https://wiki.earthdata.nasa.gov/display/CMR/CMR+Documents.

[OR5]          OGC 12-084r2, OWS Context Atom Encoding Standard, 2013, http://docs.opengeospatial.org/is/12-084r2/12-084r2.html 

[OR6]          OGC 15-053, Implementing JSON/GeoJSON in an OGC Standard ER, 2015

[OR7]          OGC 11-052r4, OGC GeoSPARQL – A Geographic Query Language for RDF Data, Version 1.0, 2012, https://portal.opengeospatial.org/files/?artifact_id=47664

[OR8]          RDF 1.1 Primer, W3C Working Group Note 2014, http://www.w3.org/TR/rdf11-primer/

[OR9]          RDF 1.1 Concepts and Abstract Syntax, W3C Recommendation, 2014, http://www.w3.org/TR/rdf11-concepts/

[OR10]        RDF Schema 1.1, W3C Recommendation, 2014, http://www.w3.org/TR/rdf-schema/

[OR11]        RDF 1.1 XML Syntax, W3C Recommendation, 2014, http://www.w3.org/TR/rdf-syntax-grammar/

[OR12]        RDF 1.1 Turtle, Terse RDF Triple Language, W3C Recommendation, 2014, http://www.w3.org/TR/turtle/

[OR13]        JSON-LD 1.0 Processing Algorithms and API, W3C Recommendation, 2014, https://www.w3.org/TR/json-ld-api/

[OR14]        RFC 4287, The Atom Syndication Format, 2005, https://tools.ietf.org/html/rfc4287 

[OR15]        Building JSON-LD APIs: Best Practices, Draft Community Group Report, 2016, http://json-ld.org/spec/latest/json-ld-api-best-practices/

[OR16]        Google JSON Style Guide, Revision 0.9, https://google.github.io/styleguide/jsoncstyleguide.xml

[OR17]        RDF Calendar - an application of the Resource Description Framework to iCalendar Data, W3C Interest Group Note, 2005, http://www.w3.org/TR/rdfcal/

[OR18]        JSON Schema, https://tools.ietf.org/html/draft-zyp-json-schema-04.

[OR19]        OGC 10-032r8, OGC OpenSearch Geo and Time Extensions, 2014, http://www.opengeospatial.org/standards/opensearchgeo

[OR20]        OGC 13-026r8, OGC OpenSearch Extension for Earth Observation Products, 2016, http://docs.opengeospatial.org/is/13-026r8/13-026r8.html.

[OR21]        Linked Data Platform 1.0, W3C Recommendation, 2015, http://www.w3.org/TR/ldp/

[OR22]        Linked Data Platform Paging 1.0, W3C Working Group Note, 2015, http://www.w3.org/TR/ldp-paging/

[OR23]        OASIS searchRetrieve: Part 0. Overview, OASIS Standard, 2013, http://docs.oasis-open.org/search-ws/searchRetrieve/v1.0/os/part0-overview/searchRetrieve-v1.0-os-part0-overview.html.

[OR24]        OASIS OData Version 4.0 : Part 1. Protocol, OASIS Standard, 2014, http://docs.oasis-open.org/odata/odata/v4.0/os/part1-protocol/odata-v4.0-os-part1-protocol.html

[OR25]        OpenSearch 1.1 draft 5, http://www.opensearch.org/Specifications/OpenSearch/1.1.

[OR26]        ISO 19115:2003/Cor 1:2006, Geographic Information – Metadata – Implementation specification, 2006, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=44361

[OR27]        ISO 19139, Geographic Information – Metadata XML (ISO 19139:2007), 2007, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=32557

[OR28]        ISO 19139-2:2012, Geographic information – Metadata – XML schema implementation – Part 2: Extensions for imagery and gridded data, 2012, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=57104

[OR29]        Dublin Core Metadata Initiative term declarations represented in RDF schema language, http://dublincore.org/schemas/rdfs/.

[OR30]        Media RSS Specification, Version 1.5.1, 2009,  http://www.rssboard.org/media-rss

[OR31]        SKOS Simple Knowledge Organization System Reference, W3C Recommendation, 2009, http://www.w3.org/TR/skos-reference/.

[OR32]        JSON-LD 1.1, "A JSON-based Serialisation for Linked Data", W3C Editor’s Draft, 2018, https://www.w3.org/TR/json-ld11/.

[OR33]        GeoJSON-LD Vocabulary, 2017, http://geojson.org/geojson-ld/, http://geojson.org/geojson-ld/vocab.rdf

[OR34]        http://goessner.net/articles/JsonPath/index.html

 

 

4        Terms and definitions

This document uses the terms defined in Sub-clause 5.3 of OGC 06-121r9 [NR6], 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   compaction

While expansion removes context from a given input, compaction’s primary function is to perform the opposite operation: to express a given input according to a particular context. Compaction applies a context that specifically tailors the way information is expressed for a particular person or application. This simplifies applications that consume JSON or JSON-LD by expressing the data in application-specific terms, and it makes the data easier to read by humans [OR13].

4.2   context

A set of rules for interpreting a JSON-LD document as specified in the section "The Context" of the JSON-LD specification [NR3].

4.3   dataset

Observation obtained by satellite instruments (OGC 10-140).  See granule and product.

4.4   datastrip

A satellite acquisition.  May consists of multiple scenes.

 

4.5   Domain (RDF)

Domain (rdfs:domain) is used to state that any resource that has a given property is an instance of one or more classes  [OR10].

4.6   expansion

The algorithm that removes [JSON-LD] context is called expansion [OR13].

4.7   GeoJSON

A geospatial data interchange format based on Javascript Object Notation (JSON) [NR2].

4.8   granule

The smallest aggregation of data that can be independently managed. Granule usually matches the individual file of EO satellite data.

4.9   identifier

A character string that may be composed of numbers and characters that is exchanged between the client and the server with respect to a specific identity of a resource.

4.10   JSON

A lightweight, text-based, language-independent data interchange format, based on the Javascript programming language.

4.11   JSON Schema

JSON Schema is a JSON media type for defining the structure of JSON data.  JSON Schema provides a contract for what JSON data is required for a given application and how to interact with it [OR18]. 

4.12   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.13   Range (RDF)

Range (rdfs:range) is used to state that values of a property are instances of one or more classes  [OR10].

4.14   RDF Triple

An RDF triple consists of three components: the subject, the predicate and the object.  An RDF triple is conventionally written in the order subject, predicate, object.  [OR9].

4.15   scene

The result of cutting a datastrip into multiple parts

4.16   service interface

Shared boundary between an automated system or human being and another automated system or human being [ISO 19101].

4.17   swath

Area imaged on the surface by an Earth observation instrument.

4.18   synthesis products

Synthesis (or composite) products are products that are generated by combining information from multiple EO Products that are acquired over a certain period of time.


5        Conventions

This section provides details and examples for any conventions used in the document. Examples of conventions are symbols, abbreviations, use of XML schema, or special notes regarding how to read the document.

5.1       Abbreviated terms

Some frequently used abbreviated terms:

ALT                 ALTimetry

API                  Application Programming Interface

ATM                ATMospheric

ATS                 Abstract Test Suite

CEOS               Committee on Earth Observation Satellites

EO                   Earth Observation

EOP                 Earth Observation Product

GML                Geography Markup Language

HMA               Heterogeneous Missions Accessibility

HTTP               HyperText Transfer Protocol

IRI                   Internationalised Resource Identifier

ISO                  International Organisation for Standardisation

JSON               JavaScript Object Notation

JSON-LD         JavaScript Object Notation for Linked Data

LDP                 Linked Data Protocol

LMB                LiMB looking

OASIS             Organization for the Advancement of Structured Information Standards

OGC                Open Geospatial Consortium

O&M               Observations and Measurements

OPT                 OPTical

OWC               OGC Web Services Context

RDF                 Resource Description Framework

RDFS               RDF Schema

REST               Representational State Transfer

SAR                 Synthetic Aperture Radar

SI                     International System of Units (French: Système international d’unités)

SSP                  Synthesis and Systematic

UML                Unified Modeling Language

UMM               Unified Metadata Model

UMM-G           Unified Metadata Model for Granules

URI                  Uniform Resource Identifier

URL                 Uniform Resource Locator

URN                Uniform Resource Name

W3C                World Wide Web Consortium

WGISS             Working Group on Information Systems and Services

WKT                Well-Known Text

XML                eXtensible Markup Language

XSD                 XML Schema Definition Language

 

5.2       Symbols

5.2.1       JSON Schema diagrams

The schema diagrams[3] included in the document show the GeoJSON structure expressed in JSON Schema [OR18] and documented in Annex E.1.

 

Table : JSON Schema diagram symbols
JSON Schema Entity Representation Description

Definition

Definitions are shown as blue rectangles with solid borders.

Mandatory property

Mandatory properties are shown with solid borders.

Optional property

Optional properties are shown with dashed borders.

Property of type "Object" referring to a "Definition" of the Object.

The "Def" attribute inside a rectangle representing a property of type Object refers to the corresponding Object definition.

"All Of" operator

Contains one or more sub-schemas (definitions), added as children of the operator. An instance is valid if it is valid against all these sub-schemas.

"Any Of" operator

Contains one or more sub-schemas (definitions), added as children of the operator. An instance is valid if it is valid against at least one of these sub-schemas.

"One Of" operator

Contains one or more sub-schemas (definitions), added as children of the operator. An instance is valid if it is valid against exactly one of these sub-schemas.

Subschema (definitions)

The "Def" attribute inside a rectangle representing a (Sub) Schema refers to the corresponding Object definition.

 

5.2.2       JSONPath

The data dictionary tables in the current document use the JSONPath notation [OR34].  A brief overview of this notation is included in the table below which is taken from [OR34].

 

XPath JSONPath Description

/

$

the root object/element

.

@

the current object/element

/

. or []

child operator

//

..

recursive descent. JSONPath borrows this syntax from E4X.

*

*

wildcard. All objects/elements regardless their names.

[]

[]

subscript operator. XPath uses it to iterate over element collections and for predicates. In Javascript and JSON it is the native array operator.

|

[,]

Union operator in XPath results in a combination of node sets. JSONPath allows alternate names or array indices as a set.

[]

?()

applies a filter (script) expression.

 

5.3       Namespace abbreviations

The following namespace abbreviations will be used in this document:

 

Table : Namespace abbreviations
Abbreviation Full namespace URI Reference

alt

http://www.opengis.net/alt/2.1/

[OR1]

atm

http://www.opengis.net/atm/2.1/

[OR1]

atom

http://www.w3.org/2005/Atom/

[OR14]

dct

http://purl.org/dc/terms/

[OR29]

eop

http://www.opengis.net/eop/2.1/

[OR1]

gj

https://purl.org/geojson/vocab#

[OR33]

gsp

http://www.opengis.net/ont/geosparql#

[OR7]

iana

http://www.iana.org/assignments/relation/

[NR11]

ical

http://www.w3.org/2002/12/cal/ical#

[OR17]

lmb

http://www.opengis.net/lmb/2.1/

[OR1]

media

http://search.yahoo.com/mrss/

[OR30]

opt

http://www.opengis.net/opt/2.1/

[OR1]

owc

http://www.opengis.net/ont/owc/1.0/

[OR5]

owl

http://www.w3.org/2002/07/owl#

 

rdf

http://www.w3.org/1999/02/22-rdf-syntax-ns#

[OR11]

rdfs

http://www.w3.org/2000/01/rdf-schema#

[OR10]

sar

http://www.opengis.net/sar/2.1/

[OR1]

skos

http://www.w3.org/2004/02/skos/core#

[OR31]

xs

http://www.w3.org/2001/XMLSchema-datatypes#

 

xsd

http://www.w3.org/2001/XMLSchema#

 

 

5.4       Layout and identifiers

The normative provisions in the current document are denoted by the URI http://www.opengis.net/spec/eo-geojson/1.0.  All requirements and conformance classes that appear in this document are denoted by relative URIs which are relative to this base URI.

5.5       Style

This document applies the "double quote" guideline defined in [OR16]:  "If a property requires quotes, double quotes must be used. All property names must be surrounded by double quotes. Property values of type string must be surrounded by double quotes. Other value types (like boolean or number) should not be surrounded by double quotes."

5.6       Data dictionary tables

This document includes data dictionary tables with information as per sub-clause 5.5 of OGC 06-121r9 [NR6].  The following comments apply.

  • The mapping of property names (column 1) on properties of the abstract metadata models (OGC 10-157r4 and UMM-G) is included in Annex C.  Column 1 provides the JSON property name as well as the corresponding JSONPath [OR34] expression.
  • Properties representing measurements (e.g., gml:measureType) are encoding in a simplified way.  Only the value is represented as a numeric property.  The unit of measure is implied and shall correspond to the SI[4] base unitor derived unit without prefix.

 

6        Overview

This standard defines a GeoJSON-based [NR2] serialization syntax for the Earth Observation Vocabulary (Annex B) that conforms to a subset of [NR3] syntax constraints but does not require JSON-LD processing. While other serialization forms are possible, such alternatives are not discussed in this document.

When serialized, absent properties are represented by either (a) setting the property value to null, or (b) by omitting the property declaration altogether at the option of the publisher. These representations are semantically equivalent. If a property has an array value, the absence of any items in that array shall be represented by omitting the property entirely or by setting the value to null. The appropriate interpretation of an omitted or explicitly null value is that no value has been assigned as opposed to the view that the given value is empty or nil.

JSON does not have a formal class model. JSON objects are just sets of properties. However, the JSON encoding described in this standard features a "type" property on each JSON object.

An  EO Dataset Metadata Document conforming to this standard is a GeoJSON document whose root value is a Feature or FeatureCollection object, and whose MIME media type corresponds to one of the media types described in chapter 9.

6.1       JavaScript Object Notation

JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format that defines a small set of formatting rules for the portable representation of structured data.  JSON is derived from the object literals of JavaScript, as defined in the ECMAScript Programming Language Standard [NR12] and can represent four primitive types (strings, numbers, boolean values, and null) and two structured types (objects and arrays).  The ordering of the members or properties of any JSON object is considered irrelevant. Even though JSON is based on a subset of the JavaScript Programming Language it is currently well supported by nearly all programming languages, including Java, Python, and C#.

The JSON format is currently described by two competing standards, RFC7159 [NR1] and ECMA-404 [NR13]. Both standards documents are consistent, but the latter defines mainly the grammatical syntax where the former provides some additional semantic and security points.

6.2       GeoJSON Format Specification

GeoJSON [NR2] is a format for encoding collections of simple geographical features along with their non-spatial attributes using JSON. GeoJSON consists of a single object representing a geometry, feature, or collection of features. The geometries supported are Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and Geometry Collections.

 

7        GeoJSON Encoding Specification

7.1       Requirements class: Earth Observation

 

Requirements Class
/req/earthobservation

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Dependency

/req/geometry

Dependency

/req/properties

Requirement

/req/earthobservation/properties

 

Requirement 1

/req/earthobservation/properties

An "EarthObservation" object shall implement the properties shown in Table 4, with the value matching the type shown, and with the obligation shown.

The EarthObservation block inherits all properties of the GeoJSON Feature object.  In addition, it may contain an optional @context property.  The @context properties shall typically be absent in the GeoJSON encoding and implicitly refer to the normative @context defined in Annex B.

EarthObservation Schema (GeoJSON)
Figure : EarthObservation Schema (GeoJSON)

Complete description of EarthObservation is given in Table 4.  Most properties are inherited from the Feature object defined in [NR2].

 

Table : EarthObservation object properties
JSON Property Definition Data type and values Multiplicity and use

@context

$.@context

Optional context property either embedding an actual context or a reference to the normative JSON-LD context defined in Annex B: "normative JSON-LD @context definition".

See Annex B.1.1.

Property

Zero or one

(optional)

type

$.type

Type of the EarthObservation metadata element.    This property is a string with fixed value "Feature"[5].

Property

Range: String

Fixed values: "Feature"

One (mandatory)

id

$.id

Unique identifier for the EarthObservation element (IRI).

Property

Range: String

One
(mandatory)

bbox

$.bbox

Information on the coordinate range of the geometry object representing the footprint (See [NR2]). The value is an array of length 4 (assuming the number of dimensions represented in the contained geometries is 2).  Typically, south-west point and north-east point.  The value defines a shape with edges that have constant longitude and latitude.

Property [NR2]

Domain: Feature

Range: Array

Zero or one (optional)

geometry

$.geometry

Contains the description of the target location observed during the EarthObservation. See section 7.4.

The value shall be either a Geometry object or a JSON null value.

Property [NR2], [OR33]

Domain: Feature

Range: Geometry or null value (See section 7.4)

One
(mandatory)

properties

$.properties

Groups all other properties of the EarthObservation not covered by the properties higher in this table as imposed by [NR2]. See section 7.1.1

Property [NR2], [OR33]

Domain: Feature

Range Properties (See Table 5)

One
(mandatory)

Example 1: GeoJSON encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P
          &uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "bbox": [
      -2.69574,
      61.965195,
      0.135472,
      63.261372
   ],
   "geometry": {…},
   "properties": {…}
}


 

Example 2: GeoJSON encoding example (with explicit normative @context property)


{
   "@context": "https://www.opengis.net/eo-geojson/1.0",
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P
          &uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "bbox": [
      -2.69574,
      61.965195,
      0.135472,
      63.261372
   ],
   "geometry": {…},
   "properties": {…}
}


In the remainder of the document, we will not include the @context property in the GeoJSON encoding in which case it is implied as explained in Annex B.1.1.

7.1.1       Properties

Requirements Class
/req/properties

Target type

Data instance

Dependency

/req/acquisition-information

Dependency

/req/product-information

Dependency

/req/data-identification

Dependency

/req/metadata-information

Dependency

/req/links

Dependency

/req/offering

Requirement

/req/properties/properties

Requirement

/req/properties/metadata-information

Requirement

/req/properties/data-identification

 

Requirement 2

/req/properties/properties

A "Properties" object shall implement the properties shown in Table 5, with the value matching the type shown, and with the obligation shown.

 

Requirement 3

/req/properties/metadata-information

A "Properties" object shall implement the properties of a MetadataInformation object (Table 8).

 

Requirement 4

/req/properties/data-identification

A "Properties" object shall implement the properties of a DataIdentification object (Table 9).

The Properties block contains the EO properties and hypermedia links to related objects.  It inherits all MetadataInformation and DataIdentification properties.  The EO properties are in two main groups, i.e., "acquisitionInformation" and "productInformation" with multiplicity shown below.  This allows having metadata:

  • Only consisting of "acquisitionInformation" and no productInformation, and
  • Consisting of multiple "acquisitionInformation" elements and 0 or 1 "productInformation" elements as occurs for synthesis products.

 

Properties Schema
Figure : Properties Schema

Complete description of Properties is given in Table 5 and Table 9.  For the inherited DataIdentification properties, we refer to Table 9.  These properties are not repeated here.

Table : Properties object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.type

Type of the element.  This property has the fixed value "Properties".

Domain: Properties

Range: String

Fixed value: "Properties"

Zero or one (optional)

links

$.properties.links

Refers to related, actionable resources including download location, quicklook, original or alternative metadata representations etc...  See Table 6.

Domain: Properties

Range: Links.  (See Table 6)

One (mandatory)

offerings

$.properties.offerings

Service or online content offering for the resource targeted at OGC compliant clients.  See OGC 14-055r2 [NR5].

Domain: Properties

Range: Array of Offering. 

Zero or more (optional)

status

$.properties.status

Refers to product status.

Fixed Values :

 - ARCHIVED

 - ACQUIRED

 - CANCELLED

 - FAILED

 - PLANNED

 - POTENTIAL

 - REJECTED

 - QUALITYDEGRADED

Domain: Properties

Range: String

 

One (mandatory)

acquisitionInformation

$.properties.acquisitionInformation

Contains product information as presented in Table 14.

Domain: Properties

Range: Array of AcquisitionInformation (See Table 14)

One or more (mandatory)

productInformation

$.properties.productInformation

Contains product information as presented in Table 20.

Domain: Properties

Range: ProductInformation (See Table 20)

Zero or one (optional)

The example below contains also inherited DataIdentification properties defined in Table 9.

Example 3: Properties encoding example


{
  "properties": {
        "status": "ACQUIRED",
        "parentIdentifier": "SEA_GEC_1P",
        "doi": "",
        "title": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
        "identifier": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
 
        "date": "2016-07-02T18:13:41.34Z/2016-07-02T18:14:06.34Z",
        "updated": "2017-01-26T11:30:18Z",
 
        "links": { }
        "acquisitionInformation": [
            { }
        ],
        "productInformation": { }
    }
}


 

 

7.1.2       Links

 

Requirements Class
/req/links

Target type

Data instance

Dependency

/req/link

Requirement

/req/links/properties

 

Requirement 5

/req/links/properties

A "Links" object shall implement the properties shown in Table 6, with the value matching the type shown, and with the obligation shown.

The Links block contains references to related resources as hypermedia links.  They include references to quicklooks, data download links or alternative representations of the metadata.  For the GeoJSON encoding of the Links object, we use the property names adopted by section 7.1.2 of the GeoJSON encoding for OWS Context OGC 14-055r2 [NR5].  An alternative[6] JSON model with the "rel" attribute modelled as property of the Link object would allow to have a single array with all Link instances, but would not be compliant with OGC 14-055r2 and was thus not withheld.

Although the Links object below allows implementers to refer to original metadata, implementations are encouraged to use the JSON properties defined in the current document to provide metadata for EO products encoded in JSON instead of, or in addition to relying solely on hypermedia links referencing the original (e.g. XML-based) metadata as explained below.

Links Schema
Figure : Links Schema

Complete description of Links is given in Table 6.

Table : Links object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.links.type

Type of the element.  This property has the fixed value "Links".

String

Fixed value: Links

Zero or one (optional)

alternates

$.properties.links.alternates

Reference to a description of the resource in an alternative format.

Is defined by [NR5] §7.1.2.

Range: array of link as defined in Table 7.

Zero or more (optional)

via

$.properties.links.via

Reference to a description of the resource in its original format.

 

Range: array of link as defined in Table 7.

Zero or more (optional)

previews

$.properties.links.previews

Reference to a quicklook or browse image representing the resource.

Is defined by [NR5] §7.1.2.

Range: array of link as defined in Table 7.

Zero or more (optional)

data

$.properties.links.data

Reference to the location of the data resource.

Is defined by [NR5] §7.1.2.

Range: array of link as defined in Table 7.

Zero or more (optional)

qualityReport

$.properties.links.qualityReport

Reference to the location of a related quality report.

Range: array of link as defined in Table 7.

Zero or more (optional)

related

$.properties.links.related

Reference to the location of a related resource, e.g. cloud mask, snow mask.

Range: array of link as defined in Table 7.

Zero or more (optional)

up

$.properties.links.up

Reference to the metadata of higher-level resource (e.g., Collection, also identified by parentIdentifier).

 

Range: array of link as defined in Table 7.

Zero or more (optional)

Example 4: GeoJSON encoding example


{
    "type": "Feature",
    "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
    "geometry": { … },
    "properties": {
        "links": {
            "data": [
                {
                    "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
                    "type": "application/binary",
                    "title": "Download"
                }
            ],
            "previews": [
               {
                   "href": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
                   "type": "image/png",
                   "title": "Quicklook"
               }
            ],
            "alternates": [
                {
                    "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
                    "type": "application/atom+xml",
                    "title": "Atom format"
                }
            ]
 
        }
    }
}


 

7.1.3       Link

Requirement 6

/req/link

A "Link" object shall implement the properties shown in Table 7, with the value matching the type shown, and with the obligation shown.

The Link block contains the properties of a hypermedia link to a resource identified by its URI [NR5] and may be extended with media properties from [OR30].

Link Schema
Figure : Link Schema

For the GeoJSON encoding of each Link object, we use the encoding defined in section 7.1.10 of the GeoJSON encoding for OWS Context OGC 14-055r2 [NR5].  The equivalent JSON-LD encoding is consistent with section 6.1.2.2 of OGC 15-053 [OR6].

Complete description of Link is given in Table 7.

Table : Link object properties
JSON Property Definition Data type and values Multiplicity and use

href

$.properties.links.*[*].href

URI describing the related resource.

Is defined by [NR5] §7.1.10.

Range: String

One (mandatory)

type

$.properties.links.*[*].type

Hint about the type of the representation that is expected to be returned when the value of href is dereferenced.

Range: String (contains a media type).

Zero or one (optional)

title

$.properties.links.*[*].title

Human readable information about the link. Is defined by [NR5] §7.1.10.

Range: String

Zero or one (optional)

length

$.properties.links.*[*].length

Hint about the content length (in bytes) of the representation that is expected to be returned when the value of href is dereferenced.  Is defined by [NR5] §7.1.10.

Range: Integer

Zero or one (optional)

category [7]

$.properties.links.*[*].category

Media category [OR30] of the related resource which corresponds to a preview or mask:

- THUMBNAIL

- QUICKLOOK

- ALBUM

- SNOW

- CLOUD

- QUALITY

Only applicable for media resources $.properties.links.previews[*] or $.properties.links.related[*]

Range: String

Zero or one (optional)

expression7

$.properties.links.*[*].expression

Determines if the related resource is a sample or the full version of the product. See [OR30].  Use "full" for "product/ProductInformation/".  Use "sample" for "browse/BrowseInformation/" or "mask/MaskInformation/".

Only applicable for media resources $.properties.links.previews[*] or $.properties.links.related[*]

Range: String

Zero or one (optional)

conformsTo7

$.properties.links.*[*].conformsTo

Indicates if resource is geo-referenced, (in which case should point to a code space for the CRS), when not supplied it is assumed that the resource is provided in "raw" satellite frame of reference.

E.g.http://www.opengis.net.def/crs/EPSG/0/4326.

Range: String (URI)

Zero or one (optional)

 

Example 5: JSON encoding example (Data – external access)


{
   "data": [
      {
         "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
         "type": "application/binary",
         "title": "Download",
         "expression": "full",
         "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
      }
   ]
}


The example below illustrates the use of a data link which provides access to a local directory in addition to an HTTP download link.  Note the use of the "file" URI scheme as per RFC8089.

Example 6: JSON encoding example (Data – local access)


{
   "data": [
      {
         "href": "http://finder.eocloud.eu/download/a9bfbbab-c06f-587a-8c09-12fa76da2c32",
         "type": "application/x-binary",
         "title": "Download"
      },
      {
         "href": "file:///eodata/Sentinel-1/SAR/GRD/2017/05/16/S1B_IW_GRDH_1SDV_20170516T052808_20170516T052832_005619_009D73_623B.SAFE",
         "type": "text/directory",
         "title": "Download"
      }
   ]
}


 

Example 7: JSON encoding example (Previews)


{
   "previews": [
      {
         "href": "http://gs.mdacorporation.com/browse/RADARSAT-2/2012/08/01/GATN_RS2_210731_1_1015_1.jpg",
         "type": "image/jpeg",
         "title": "Quicklook",
         "category": "QUICKLOOK",
         "expression": "sample",
         "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
      },
      {
         "href": "http://gs.mdacorporation.com/browse/RADARSAT-2/2012/08/01/GATN_RS2_210731_1_1015_1_thumbnail.jpg",
         "type": "image/jpeg",
         "title": "Quicklook",
         "category": "THUMBNAIL",
         "expression": "sample",
         "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
      }
   ]
}


 

 

Example 8: JSON encoding example (Masks)

 


{
   "related": [
      {
         "href": "http://daliis.spotimage.fr/wsTools/img/getImage.aspx?ST=S&SN=37998313&IT=CLD&CP=N&SD=T&FT=BMP&CM=75",
         "type": "image/jpeg",
         "title": "Cloud Mask",
         "category": "CLOUD",
         "expression": "sample",
         "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
      }
   ]
}


7.1.4       Offering

Requirements Class
/req/offering

Target type

Data instance

Dependency

/req/operation

Requirement

/req/offering/properties

 

Requirement 7

/req/offering/properties

An "Offering" object shall implement the properties defined in OGC 14-055r2 [NR5], with the value matching the type shown, and with the obligation shown.

The Offering block is fully defined in OGC 14-055r2 [NR5].  It describes a service or inline content offering for the EO product and is intended to be consumed by clients that support OGC standards. In the context of the current specification, an Offering can be used to describe:

  • View services allowing visualisation via OGC WMS or WMTS service interfaces,
  • Reference to download or ordering services according to specific OGC protocols (e.g., WCS), and
  • Reference to processing resources including WPS or hosted processing services.

Offering Schema
Figure : Offering Schema

A number of examples for typical offerings (e.g., WMS, WCS and WMTS) are included below.

Example 9: JSON encoding example (WMS)


    {
         "code":"http://www.opengis.net/spec/owc-geojson/1.0/req/wms",
         "operations": [
           {
              "code":"GetCapabilities",
              "method":"GET",
              "type":"application/xml",
              "href":"http://eumetview.eumetsat.int/geoserv/wms?REQUEST=GetCapabilities&version=1.3.0&service=WMS"
           },
           {
              "code":"GetMap",
              "method":"GET",
              "type":"image/jpeg",
              "href":"http://eumetview.eumetsat.int/geoserv/wms?SERVICE=WMS&REQUEST=GetMap&TRANSPARENT=TRUE&EXCEPTIONS=INIMAGE&VERSION=1.3.0&LAYERS=meteosat%3Amsg_ir108%2Coverlay%3Ane_10m_coastline%2Coverlay%3Ane_10m_admin_0_boundary_lines_land&STYLES=raster%2C%2C&SRS=EPSG%3A4326&WIDTH=1161&HEIGHT=693&BBOX=-107.41500082612,-180,107.41500082612,180&FORMAT=image%2Fjpeg&TIME=2017-02-21T12%3A00%3A00.000Z&"                                              
           },
         ]
      }


 

Example 10: JSON encoding example (WCS)


    {
         "code":"http://www.opengis.net/spec/owc-geojson/1.0/req/wcs",
         "operations": [
           {
              "code":"GetCapabilities",
              "method":"GET",
              "type":"application/xml",
              "href":"http://fedeo.esa.int/geoserver/wcs?REQUEST=GetCapabilities&version=2.0.1&service=WCS"
           },
           {
              "code":"GetCoverage",
              "method":"GET",
              "type":"application/x-binary",
              "href":"http://fedeo.esa.int/geoserver/wcs?service=wcs&version=2.0.1&request=getcoverage&coverageid=ASA_IMM_1PNIPA20080308_183226_000001722066_00371_31487_2902"                          
           }
         ]
      }


 

Example 11: JSON encoding example (WMTS)


{
   "code": "http://www.opengis.net/spec/owc-geojson/1.0/req/wmts",
   "operations": [
      {
         "code": "GetCapabilities",
         "method": "GET",
         "type": "application/xml",
         "href": "http://www.opengis.uab.es/cgi-bin/ICCTiled/MiraMon.cgi?REQUEST=GetCapabilities&SERVICE=WMTS"
      },
      {
         "code": "ServiceMetadata",
         "method": "GET",
         "type": "application/xml",
         "href": "http://www.opengis.uab.es/SITiled/ICC/1.0.0/WMTSCapabilities.xml"
      },
      {
         "code": "GetTile",
         "method": "GET",
         "type": "image/jpeg",
         "href": "http://www.opengis.uab.es/cgi-bin/ICCTiled/MiraMon.cgi?REQUEST=GetTile&SERVICE=WMTS&version=1.0.0&format=image/jpeg&layer=Topo250k_Vers5_ICC&TileMatrixSet=Cat_topo250k_v5_EPSG23031&TileMatrix=200m&TileRow=1&TileCol=0"
      },
      {
         "code": "Tile",
         "method": "GET",
         "type": "image/jpeg",
         "href": "http://www.opengis.uab.es/SITiled/ICC/Topo250k_Vers5_ICC/default/Cat_topo250k_v5_EPSG23031/200m/1/0.jpg"
      }
   ]
}


 

 

In the example below, line breaks were added inside the string literals containing XML content for readability purposes only. In the actual JSON objects, such line breaks inside string literals are not allowed.

Example 12: JSON encoding example (WPS)


{
   "code": "http://www.opengis.net/spec/owc-geojson/1.0/req/wps",
   "operations": [
      {
         "code": "GetCapabilities",
         "method": "GET",
         "type": "application/xml",
         "href": "http://tep.esa.int/wps/processing?REQUEST=GetCapabilities&SERVICE=WPS",
            "result": {
           "type": "application/xml",
             "content": "<wps:Capabilities>…</wps:Capabilities>"
            }
      },
      {
         "code": "DescribeProcess",
         "method": "POST",
         "type": "application/xml",
         "href": "http://tep.esa.int/wps/processing",
            "request": {
           "type": "application/xml",
             "content": "
<wps:DescribeProcess
  xmlns:ows=\"http://www.opengis.net/ows/2.0\"
  xmlns:wps=\"http://www.opengis.net/wps/2.0\"
  xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
 
  service=\"WPS\"
  version=\"2.0.0\">
 
   <ows:Identifier>LandCoverMapping</ows:Identifier>
  
</wps:DescribeProcess>
"
            },
            "result": {
                "type": "application/xml",
                "content": "
<wps:ProcessOfferings
   xmlns:wps=\"http://www.opengis.net/wps/2.0\"
   xmlns:ows=\"http://www.opengis.net/ows/2.0\"
   xmlns:xlink=\"http://www.w3.org/1999/xlink\"
   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
   xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">
  
   <wps:ProcessOffering jobControlOptions=\"async-execute dismiss\" outputTransmission=\"value reference\">
      <wps:Process>      
         <ows:Title>Land Cover Mapping</ows:Title>
         <ows:Abstract>Land Cover Mapping is based on the Sentinel-2 processing workflow generated for the F-TEP platform.</ows:Abstract>
         <ows:Identifier>LandCoverMapping</ows:Identifier>
        
         <wps:Input>
           <ows:Title>Sentinel-2 Image</ows:Title>
           <ows:Abstract>URL of Sentinel-2 Level 1C image product in the format offered by AWS or IPT, with a size of up to multiple gigabytes.</ows:Abstract>
           <ows:Identifier>Image</ows:Identifier>
           <wps:LiteralData>
              <wps:Format mimeType=\"text/xml\" default=\"true\"/>
              <LiteralDataDomain default=\"true\">
                 <ows:AnyValue/>
                 <ows:DataType ows:reference=\"xs:string\">string</ows:DataType>
              </LiteralDataDomain>
           </wps:LiteralData>
         </wps:Input>
 
         <wps:Input>
           <ows:Title>Reference Data</ows:Title>
           <ows:Abstract>Representative training data set with land cover class attributes, in OGR vector format supported by GDAL, such as ESRI shapefile, in a flat zip structure containing .shp and the supporting files.</ows:Abstract>
           <ows:Identifier>ReferenceData</ows:Identifier>
           <wps:ComplexData>
              <wps:Format mimeType=\"application/zip\" encoding=\"base64\" default=\"true\"/>
           </wps:ComplexData>
         </wps:Input>
        
         <wps:Output>
           <ows:Title>GeoTIF Image</ows:Title>
           <ows:Abstract>Labeled GeoTIFF file, containing for each pixel one of the class codes specified in the training reference data.</ows:Abstract>
           <ows:Identifier>Image</ows:Identifier>
           <wps:ComplexData>
              <wps:Format mimeType=\"image/tiff\" encoding=\"base64\" default=\"true\"/>
           </wps:ComplexData>
         </wps:Output>
        
      </wps:Process>
   </wps:ProcessOffering>
  
</wps:ProcessOfferings>
"
             }
      },
      {
          "code": "Execute",
          "method": "POST",
          "type": "application/xml",
          "href": "http://tep.esa.int/wps/processing",
             "request": {
                 "type": "application/xml",
                 "content": "
<wps:Execute
   xmlns:wps=\"http://www.opengis.net/wps/2.0\"
   xmlns:ows=\"http://www.opengis.net/ows/2.0\"
   xmlns:xlink=\"http://www.w3.org/1999/xlink\"
   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
  
   service=\"WPS\"
   version=\"2.0.0\"
   response=\"document\"
   mode=\"async\">
  
   <ows:Identifier>LandCoverMapping</ows:Identifier>
  
   <wps:Input id=\"Image\">
      <wps:Data>http://finder.eocloud.eu/download/d7748f2f-0663-55e6-a32d-2399f40c295a</wps:Data>
   </wps:Input>
   <wps:Input id=\"ReferenceData\">
      <wps:Data>VGhpcyBpcyBhIFppc … CBmaWxlLg==</wps:Data>
   </wps:Input>
  
   <wps:Output id=\"Image\"/>
  
</wps:Execute>"
            },
            "result": {
                 "type": "application/xml",
                "content": "
<wps:StatusInfo
    xmlns:wps=\"http://www.opengis.net/wps/2.0\"
    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
   
   <wps:JobID>9843939e-c947-4d75-b3f3-6820d2ad4cd1</wps:JobID>
   <wps:Status>Accepted</wps:Status>
   <wps:NextPoll>2017-05-15T09:30:47Z</wps:NextPoll>
   <wps:PercentCompleted>0</wps:PercentCompleted>
  
</wps:StatusInfo>
"
             }
       },
      {
         "code": "GetResult",
         "method": "GET",
         "type": "application/xml",
        "href": "http://tep.esa.int/wps/processing?REQUEST=GetResult&SERVICE=WPS&jobid=9843939e-c947-4d75-b3f3-6820d2ad4cd1",
            "result": {
                 "type": "application/xml",
                 "content": "
<wps:Result
   xmlns:wps=\"http://www.opengis.net/wps/2.0\"
   xmlns:xlink=\"http://www.w3.org/1999/xlink\"
   xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
  
   <wps:JobID>9843939e-c947-4d75-b3f3-6820d2ad4cd1</wps:JobID>
   <wps:ExpirationDate>2017-09-15T24:00:00Z</wps:ExpirationDate>
   <wps:Output id=\"Image\">
      <wps:Reference xlink:href=\"http://result.data.server/wps/9843939e-c947-4d75-b3f3-6820d2ad4cd1/image.TIFF\"/>
   </wps:Output>
</wps:Result>
"
           }
      },
      {
         "code": "GetStatus",
         "method": "GET",
         "type": "application/xml",
         "href": "http://tep.esa.int/wps/processing?service=WPS&version=2.0.0&request=GetStatus&jobid=9843939e-c947-4d75-b3f3-6820d2ad4cd1",
            "result": {
                 "type": "application/xml",
                 "content": "
 
<wps:StatusInfo
    xmlns:wps=\"http://www.opengis.net/wps/2.0\"
    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">
   
   <wps:JobID>9843939e-c947-4d75-b3f3-6820d2ad4cd1</wps:JobID>
   <wps:Status>Accepted</wps:Status>
   <wps:NextPoll>2017-05-15T09:40:47Z</wps:NextPoll>
   <wps:PercentCompleted>20</wps:PercentCompleted>
  
</wps:StatusInfo>
"
           }
      }   
   ]
}


 

7.1.5       Operation

 

Requirement 8

/req/operation

An "Operation" object shall implement the properties of "Operation" defined in OGC 14-055r2 [NR5], with the value matching the type shown, and with the obligation shown.

The Operation block is fully defined in OGC 14-055r2 [NR5].  It describes an operation of a service or inline content offering for the EO product and is intended to be consumed by OGC-compliant clients.  The "code" property identifies the OGC operation name, e.g., GetCapabilities, GetMap, etc.

Operation Schema
Figure : Operation Schema

For examples, we refer the examples of Offering given in section 7.1.4.

7.2       Requirements class: Metadata Information

 

Requirements Class
/req/metadata-information

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Requirement

/req/metadata-information/properties

 

Requirement 9

/req/metadata-information/properties

A "MetadataInformation" object shall implement the properties shown in Table 8, with the value matching the type shown, and with the obligation shown.

The MetadataInformation properties are inherited by the Properties block (Table 5).

MetadataInformation Schema
Figure : MetadataInformation Schema

Complete description of the MetadataInformation properties is given in Table 8 .

Table : MetadataInformation properties
JSON Property Definition Data type and values Multiplicity and use

updated

$.properties.updated

Date of creation or last update of the EO Metadata Document. 

DateTime representation, as defined by RFC 3339, section 5.6. 10

Domain: Properties

Range: DateTime

One (mandatory[8])

published

$.properties.published

Date of first availability of the EO Metadata Document.

 

Domain: Properties

Range: DateTime

Zero or one (optional)

creationDate

$.properties.creationDate

Date of creation of the EO Metadata Document.

 

Domain: Properties

Range: DateTime

Zero or one (optional)

lang

$.properties.lang

Metadata language, not empty with an RFC-3066 code as defined in [NR5].

Domain: Properties

Range: string

Zero or one (optional)

Example 13: MetadataInformation encoding example


{ 
      "updated": "2017-01-26T11:30:18Z",
      "lang": "en"
}


7.3       Requirements class: Data Identification

 

Requirements Class
/req/data-identification

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Requirement

/req/data-identification/properties

 

Requirement 10

/req/data-identification/properties

A "DataIdentification" object shall implement the properties shown in Table 9, with the value matching the type shown, and with the obligation shown.

The DataIdentification properties are inherited by the Properties block (Table 5).

DataIdentification Schema
Figure : DataIdentification Schema

Complete description of the DataIdentification properties is given in Table 9.

Table : Data Identification properties
JSON Property Definition Data type and values Multiplicity and use

parentIdentifier

$.properties.parentIdentifier

Collection identifier.

Domain: Properties

Range: String

Zero or one (optional)

doi

$.properties.doi

Digital Object Identifier identifying the product (see http://www.doi.org)

Domain: Properties

Range: String

Zero or one (optional)

title

$.properties.title

Human readable title given to the resource, use-case dependent.

Typical examples:

·       productType + date + swathIdentifier + polarisationMode  (e.g., SAR)

·       productType + date + tileId (e.g. Sentinel-2)

·       productType + date + orbitNumber

·       identifier

Domain: Properties

Range: String

One (mandatory)

identifier

$.properties.identifier

Identifier given to the resource, typically the dataset (producer) identifier.

Domain: Properties

Range: String

One (mandatory)

date

$.properties.date

Range[9] of dates relevant for the resource (RFC-3339).  Formatted as <datetime> "/"<datetime> or "<datetime>/" or "/<datetime> or <datetime> or "/".

Domain: Properties

Range: String or  DateTime

One (mandatory)

created

$.properties.created

Date of creation of the resource.

Domain: Properties

Range: DateTime

Zero or one (optional)

available

$.properties.available

Date range during which the resource will be available (RFC-3339).  Formatted as <datetime> "/"<datetime> or "<datetime>/" or "/<datetime> or <datetime> or "/".

Domain: Properties

Range: String or  DateTime

Zero or one (optional)

additionalAttributes

Container for ad-hoc additional metadata attributes which are organisation or mission specific.

Domain Properties

Range: Object  (See Section  8.1).

Zero or one (optional)

The above date property is to contain the following values:

  • For synergetic products (derived from multiple acquisitions done at different times), the date property (start/stop) shall be an aggregation of the various acquisition start/stop times.; and
  • For simple products (derived from a single acquisition), or an acquisition only, the date property (start /stop) shall be the same as the acquisition begin and end dates found in the (unique) acquisitionInformation element.

Example 14: Data Identification encoding example


{
      "parentIdentifier": "SEA_GEC_1P",
      "doi": "",
      "title": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "identifier": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "date": "2016-07-02T18:13:41.34Z/2016-07-02T18:14:06.34Z"
}


7.4       Requirements class: Spatial Information

7.4.1       Horizontal Spatial Domain

The spatial information is encoded as a Geometry object as defined by GeoJSON. There are requirements for Position, Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, Geometry Collection as described in the following subsections.

Requirements Class
/req/geometry

Target type

Data instance

Dependency

/req/point

Dependency

/req/multi-point

Dependency

/req/linestring

Dependency

/req/multi-linestring

Dependency

/req/polygon

Dependency

/req/multi-polygon

Requirement

/req/geometry/properties

 

Requirement 11

/req/geometry/properties

Objects in a data instance that describe 0-D, 1-D, or 2-D geometries with positions in the WGS-84 system shall be encoded using the GeoJSON geometry encoding [NR2].

 

7.4.1.1        Geometry

The Geometry object contains a type property and coordinates property.   The object can be any of the specialisations described below. The expected value for the coordinates property depends on the type of the geometry.

Geometry Schema (GeoJSON)
Figure : Geometry Schema (GeoJSON)

Complete description of the Geometry properties is given in Table 10.  The possible specialisations are explained in subsequent subsections.

Table : Geometry object properties
GeoJSON Property Definition Data type and values Multiplicity and use

type

$.geometry.type

Type of the geometry representing the footprint.  Can be one of the geometry types:  Point, LineString, Polygon, MultiPoint, MultiLineString or MultiPolygon.

Property [NR2], [OR33]

Range: String

One (mandatory)

coordinates

$. geometry.coordinates

Array with structure determined by the geometry type to be represented.  Note that a position (array of numbers) is indicated by longitude, latitude (in that order).

Property [NR2], [OR33]

Range: See section 3.1 of [NR2].

One (mandatory)

Note that consumers who wish to use the standard JSON-LD Processing Algorithms may need to use an alternative representation for the geometry objects as explained in section 8.2 and avoid the use of multi-dimensional arrays.

 

7.4.1.2        Point

 

Point Schema (GeoJSON)
Figure : Point Schema (GeoJSON)

Example 15: GeoJSON Point encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:GPOD-EO:MIP_NL__2P&uid=MIP_NL__2PRDPA20110126_012048_000060443099_00003_46569_3966.N1",
   "geometry": {
      "type": "Point",
      "coordinates":
         [
           -42.949837,
           -23.24841
         ],      
   },
   "properties": {}
}


 

7.4.1.3        MultiPoint

 

MultiPoint Schema (GeoJSON)
Figure : MultiPoint Schema (GeoJSON)

Example 16: GeoJSON MultiLineString encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:GPOD-EO:MIP_NL__2P&uid=MIP_NL__2PRDPA20110126_012048_000060443099_00003_46569_3966.N1",
   "geometry": {
      "type": "MultiPoint",
      "coordinates": [
         [
            -42.949837,
           -23.24841
         ],
         [
           -43.143765,
           -22.411628
         ],
         [
           -43.431962,
           -21.269959
         ],
         [
           -44.354582,
           -17.921265
         ],
         [
           -44.541317,
           -17.084588
         ],
        
         [
           -70.944332,
           -23.337905
         ]
      ]
   },
   "properties": {}
}


 

7.4.1.4        LineString

LineString Schema (GeoJSON)
Figure : LineString Schema (GeoJSON)

 

Example 17: GeoJSON LineString encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_OFFL_SIR_GOP_1B_20161020T190953_20161020T191105_B002",
   "geometry": {
      "type": "LineString",
      "coordinates": [
         [
           10.029876,
           52.316888
         ],
         [
           9.358614,
           47.976653
         ]
      ]
   },
   "properties": {}
}


7.4.1.5        MultiLineString

 

MultiLineString Schema (GeoJSON)
Figure : MultiLineString Schema (GeoJSON)

 

Example 18: GeoJSON MultiLineString encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:GPOD-EO:RA2_MW__1P&uid=RA2_MW__1PRF-P20021231_223147_000062162012_00316_04378_8883.N1",
   "geometry": {
      "type": "MultiLineString",
      "coordinates": [
         [
           [
              -136.878,
              79.2342
           ],
           [
              -144.624,
              77.9061
           ],
           [
              -151.347,
              76.2577
           ],
           [
              -156.744,
              74.4313
           ],
           [
              -161.56,
              72.2376
           ],
           [
              -163.746,
              71.0004
           ],
           [
              -167.679,
              68.2576
           ],
           [
              -171.171,
              65.0765
           ],
           [
              -174.36,
              61.3181
           ],
           [
              -177.3,
              56.8761
           ],
           [
              -180,
              51.7103
           ]
         ],
         [
           [
              180,
              51.7103
           ],
           [
              176.173,
              42.1564
           ],
           [
              174.33,
              36.458
           ],
           [
              172.381,
              29.6249
           ],
           [
              170.728,
              23.2156
           ],
           [
              146.971,
              -58.7512
           ]
         ]
      ]
   },
   "properties": {}
}


7.4.1.6        Polygon

 

Polygon Schema (GeoJSON)
Figure : Polygon Schema (GeoJSON)

Note that according to [NR2], Polygon rings shall follow the right-hand rule for orientation (counter-clockwise external rings, clockwise internal rings). 

Example 19: GeoJSON Polygon encoding example


{
    "type": "Feature",
 
    "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
    "geometry": { 
         "coordinates": [
           [
              [-2.682513, 63.261372],
              [-2.695740, 61.997604],
              [0.005087, 61.965195],
              [0.135472, 63.227173],
              [-2.682513, 63.261372]
           ]
         ],
         "type": "Polygon"
      },
 
    "properties": { }
}


 

7.4.1.7        MultiPolygon

 

MultiPolygon Schema (GeoJSON)
Figure : MultiPolygon Schema (GeoJSON)

 

Example 20: GeoJSON MultiPolygon encoding example


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:GPOD-EO:TLM_MIRA1A&uid=SM_REPR_TLM_MIRA1A_20131113T223626_20131113T234029_620_001_1",
   "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
         [
           [
              [
                 -79.972572,
                  -40.051556
              ],
              . . .
              [
                 -72.717911,
                 -41.413269
              ],
              [
                 -79.972572,
                 -40.051556
              ]
           ]
         ],
         [
           [
              [
                 180,
                 -78.232643
              ],
              [
                 165.665065,
                 -76.886392
              ],
              . . .
              [
                 180,
                 -84.111229
              ],
              [
                 180,
                 -78.232643
              ]
           ]
         ]
      ]
   },
   "properties": {}
}


7.4.2       Vertical Spatial Domain

 

Requirement 12

/req/vertical-spatial-domain

A "VerticalSpatialDomain" object shall implement the properties shown in Table 11 with the value matching the type shown, and with the obligation shown.

The VerticalSpatialDomain object contains the properties related to the spatial extent in the vertical dimension.   Its properties are inherited by the AcquisitionParameters object.

VerticalSpatialDomain Schema
Figure : VerticalSpatialDomain Schema

Complete description of the VerticalSpatialDomain properties is given in Table 11. 

Table : Vertical Spatial Domain object properties
JSON Property Definition Data type and values Multiplicity and use

lowestLocation

$.properties.acquisitionInformation[*].acquisitionParameters.lowestLocation

Lower bound of measurements in vertical dimension (in meter or bar).

Unit of measure defined by locationUnit property.

Domain:
VerticalSpatialDomain

Range: Double

Zero or one (optional)

 

highestLocation

$.properties.acquisitionInformation[*].acquisitionParameters.highestLocation

Upper bound of measurements in vertical dimension (in meter or bar).

Unit of measure defined by locationUnit property.

Domain: VerticalSpatialDomain

Range: Double

Zero or one (optional)

 

locationUnit

$.properties.acquisitionInformation[*].acquisitionParameters.locationUnit

Unit of measure used to express lowestLocation and highestLocation: meter (m) or bar (bar). Default is meter (m).

Domain: VerticalSpatialDomain

Range: String ("m", "bar")

Zero or one (optional)

 

Example 21: VerticalSpatialDomain encoding example


{
         "lowestLocation": 40000,
         "highestLocation": 50000, 
         "locationUnit": "m"
}


 

7.4.3       Orbit Parameters

 

Requirement 13

/req/orbit-parameters

An "OrbitParameters" object shall implement the properties shown in Table 12.    with the value matching the type shown, and with the obligation shown.

The OrbitParameters block contains the properties related to the orbit.  Its properties are inherited by the AcquisitionParameters object.

OrbitParameters Schema
Figure : OrbitParameters Schema

Complete description of the OrbitParameters properties is given in Table 12. 

Table : OrbitParameters object properties
JSON Property Definition Data type and values Multiplicity and use

orbitDirection

$.properties.acquisitionInformation[*].acquisitionParameters.orbitDirection

Acquisition orbit direction at the start of the acquisition/product.

Values:

·       ASCENDING

·       DESCENDING

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

lastOrbitDirection

$.properties.acquisitionInformation[*].acquisitionParameters.lastOrbitDirection

Acquisition orbit direction at the end of the acquisition/product. Assumed to be identical to orbitDirection if not present.

Values:

·       ASCENDING

·       DESCENDING

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

orbitDuration

$..acquisitionInformation[*].acquisitionParameters.orbitDuration

Actual orbit duration in milliseconds

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

orbitNumber

$..acquisitionInformation[*].acquisitionParameters.orbitNumber

Acquisition orbit number

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

lastOrbitNumber

$..acquisitionInformation[*].acquisitionParameters.lastOrbitNumber

Acquisition last orbit number

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

ascendingNodeDate

$..acquisitionInformation[*].acquisitionParameters.ascendingNodeDate

UTC date and time at ascending node of orbit

Domain: AcquisitionParameters

Range: DateTime10

Zero or one (optional)

ascendingNodeLongitude

$..acquisitionInformation[*].acquisitionParameters.ascendingNodeLongitude

Longitude at ascending node of orbit. Should be expressed in degrees.

Domain: AcquisitionParameters

Range: Double

Zero or one (optional)

 

Example 22: OrbitParameters encoding example


{
         "orbitNumber": 20187,
         "lastOrbitNumber": 20187,  
         "orbitDirection": "DESCENDING",
         "ascendingNodeDate": "2014-01-28T14:01:25Z",
         "ascendingNodeLongitude": 74.784284
}


 

7.5       Requirements class: Temporal Information

 

Requirements Class
/req/temporal-information

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Requirement

/req/temporal-information/properties

 

Requirement 14

/req/temporal-information/properties

A "TemporalInformation" object shall implement the properties shown in Table 13, with the value matching the type shown, and with the obligation shown.

The TemporalInformation object contains the properties related to the start and end time of the acquisition of the data.  Its properties are inherited by the AcquisitionParameters object.

TemporalInformation Schema
Figure : TemporalInformation Schema

Complete description of the TemporalInformation properties is given in Table 13. 

Table : TemporalInformation object properties
JSON Property Definition Data type and values Multiplicity and use

beginningDateTime

$..acquisitionInformation[*].acquisitionParameters.beginningDateTime

Acquisition start date time

DateTime representation, as defined by RFC 3339, section 5.6[10]

Domain: AcquisitionParameters

Range: DateTime

One (mandatory)

endingDateTime

$..acquisitionInformation[*].acquisitionParameters.endingDateTime

Acquisition end date time

DateTime representation, as defined by RFC 3339, section 5.610

Domain: AcquisitionParameters

Range: DateTime

One (mandatory)

 

Example 23: TemporalInformation encoding example


{
      "beginningDateTime": "1978-09-27T01:04:30Z",
      "endingDateTime": "1978-09-27T01:04:45Z"
}


 

7.6       Requirements class: Acquisition Information

 

Requirements Class
/req/acquisition-information

Target type

Data instance

Dependency

/req/platform

Dependency

/req/instrument

Dependency

/req/instrument-parameters

Dependency

/req/acquisition-parameters

Requirement

/req/acquisition-information/properties

 

Requirement 15

/req/acquisition-information/properties

An "AcquisitionInformation" object shall implement the properties shown in Table 14, with the value matching the type shown, and with the obligation shown.

The AcquisitionInformation block can appear multiple times and contains information about the platform (i.e., satellite), the sensor and the acquisition parameters.

AcquisitionInformation Schema
Figure : AcquisitionInformation Schema

Complete description of the AcquisitionInformation properties is given in Table 14. 

Table : AcquisitionInformation object properties
JSON Property Definition Data type and values Multiplicity and use

platform

$..acquisitionInformation[*].platform

The Platform used for the acquisition.

If more than one platform is used for creating the product, then the AcquisitionInformation object occurs more than once.

Domain: AcquisitionInformation

Range: Platform

See Table 15

Zero or one (optional)

 

instrument

$..acquisitionInformation[*].instrument

The Instrument/Sensor used for the acquisition.

If more than one instrument is used for creating the product, then the AcquisitionInformation object occurs more than once.

Domain: AcquisitionInformation

Range: Instrument

See Table 16

Zero or one (optional)

 

acquisitionParameters

$..acquisitionInformation[*].acquisitionParameters

The acquisition parameters (i.e., pointing angles, etc.)

Domain: AcquisitionInformation

Range: AcquisitionParameters

See Table 18.

Zero or one (optional)

 

 

Example 24: AcquisitionInformation encoding example


{
    "acquisitionInformation": [
        {
            "platform": {
                "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
                "platformShortName": "Seasat",
                "platformSerialIdentifier": "1"
            },
            "instrument": {
                "id":  "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
                "sensorType": "RADAR",
                "instrumentShortName": "SAR"            
            },
            "acquisitionParameters": {
                "operationalMode": "IM",
                "polarisationMode": "S",
                "polarisationChannels": "HH"
                "beginningDateTime": "1978-09-27T01:04:30Z",
                "endingDateTime": "1978-09-27T01:04:45Z",
                "acquisitionType": "NOMINAL",
                "acquisitionSubType": "DEFAULT",
                "orbitNumber": "1316",
                "orbitDirection": "DESCENDING",
                "antennaLookDirection": "RIGHT",
                "acquisitionAngles": {
                    "minimumIncidenceAngle": 19.6,
                    "maximumIncidenceAngle": 9.6,
                    "incidenceAngleVariation": 9.6
                }
            }
        }
    ]
}


 

7.6.1       Platform

 

Requirement 16

/req/platform

A "Platform" object shall implement the properties shown in Table 15, with the value matching the type shown, and with the obligation shown.

The Platform block contains the properties of the platform that was used to perform the observation.

Platform Schema
Figure : Platform Schema

Complete description of the Platform properties is given in Table 15. 

Table : Platform object properties
JSON Property Definition Data type and values Multiplicity and use

type

$..acquisitionInformation[*].platform.type

Type of the object.  This property has the fixed value "Platform."

Range: String

Fixed value: "Platform"

Zero or one (optional)

id

$..acquisitionInformation[*].platform.id

URI of platform.

E.g., http://gcmdservices.gsfc.nasa.gov/kms/concept/a1498dff-002d-4d67-9091-16822c608221 for ENVISAT

Range: String (URI)

Zero or one (Optional)

platformShortName

$..acquisitionInformation[*].platform.platformShortName

Platform short name (e.g., "Seasat" or "ENVISAT")

Domain: Platform

Range: String

One (mandatory)

platformSerialIdentifier

$..acquisitionInformation[*].platform.platformSerialIdentifier

Platform serial identifier (e.g., for Seasat : 1).

Domain: Platform

Range: String

Zero or one (Optional)

orbitType

$..acquisitionInformation[*].platform.orbitType

High level characterisation of main mission types taken from a codelist

 

Domain: Platform

Range: String

Values:

GEO, LEO

Zero or one (Optional)

 

Example 25: Platform encoding example


{
            "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
            "platformShortName": "Seasat",
            "platformSerialIdentifier": "1",
            "orbitType": "LEO"
}


 

7.6.2       Instrument

 

Requirement 17

/req/instrument

An "Instrument" object shall implement the properties shown in Table 16, with the value matching the type shown, and with the obligation shown.

The Instrument block contains the properties of the instrument that was used to perform the observation.

Instrument Schema
Figure : Instrument Schema

A complete description of the Instrument properties is given in Table 16. 

Table : Instrument object properties
JSON Property Definition Data type and values Multiplicity and use

type

$..acquisitionInformation[*].instrument.type

Type of the object.  This property has the fixed value "Instrument."

String

Fixed value: "Instrument"

Zero or one (optional)

id

$..acquisitionInformation[*].instrument.id

URI of instrument.

E.g., http://gcmdservices.gsfc.nasa.gov/kms/concept/912c3308-23bc-4e12-b7fb-9d82e9fc5fe9 for ENVISAT ASAR

Domain: Instrument

Range: String (URI)

Zero or one (optional)

sensorType[11]

$..acquisitionInformation[*].instrument.sensorType

Sensor type based on codelist

Values:

       - OPTICAL

       - RADAR

       - ALTIMETRIC

       - ATMOSPHERIC

       - LIMB

Domain: Instrument

Range: String

Zero or one (optional)

instrumentShortName

$..acquisitionInformation[*].instrument.instrumentShortName

Instrument (Sensor) name

Domain: Instrument

Range: String

One (mandatory)

description

$..acquisitionInformation[*].instrument.description

Instrument description

Domain: Instrument

Range: String

Zero or one (optional)

 

Example 26: Instrument encoding example


{               "id":  "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
                "sensorType": "RADAR",
                "instrumentShortName": "SAR"
}


 

7.6.3       Wavelength Information

 

Requirement 18

/req/wavelength-information

A "WavelenghtInformation" object shall implement the properties shown in Table 17, with the value matching the type shown, and with the obligation shown.

The WavelengthInformation object contains the properties of the instrument related to the wavelengths used for the observation.

WavelengthInformation Schema
Figure : WavelengthInformation Schema

Complete description of the WavelengthInformation properties is given in Table 17. 

Table : WavelengthInformation object properties
JSON Property Definition Data type and values Multiplicity and use

type

$..acquisitionInformation[*].instrument.wavelengths[*].type

Type of the object.  This property has the fixed value "WavelengthInformation".

Domain: WavelengthInformation

Range: String

Fixed value: "WavelengthInformation"

Zero or one (optional)

discreteWavelengths

$..wavelengths[*].discreteWavelengths

List of discrete wavelengths observed in the product.

Unit of measure is SI base unit (m) without prefix.

Domain: WavelengthInformation

Range: Array of Double

Zero or more (optional)

startWavelength

$..wavelengths[*].startWavelength

Start of the observed wavelength range.

Unit of measure is SI base unit (m) without prefix.

Examples:

·       1E-03 (i.e.1 mm - start of microwave range).

·       700E-09 (i.e 700nm - start of infrared range).

Domain: WavelengthInformation

Range: Double

Zero or one (optional)

endWavelength

$..wavelengths[*].endWavelength

End of the observed wavelength range

Unit of measure is SI base unit (m) without prefix.

Examples:

·       0.3 (i.e.30 cm - end of microwave range).

·       1E-03 (i.e 1mm - end of infrared range).

Domain: WavelengthInformation

Range: Double

Zero or one (optional)

spectralRange

$..wavelengths[*].spectralRange

The observed Spectral Range:

Values:

- INFRARED

- NIR (for Near Infrared)

- SWIR (for Short Wavelength Infrared)

- MWIR (for Mid Wavelength Infrared)

- LWIR (for Long Wavelength Infrared)

- FIR (for Far Infrared)

- UV

- VISIBLE

- MICROWAVE

- OTHER

Domain: WavelengthInformation

Range: String

Zero or one (optional)

wavelengthResolution

$..wavelengths[*].wavelengthResolution

Spacing between consecutive wavelengths

Unit of measure is SI base unit (m) without prefix.

 

Domain: WavelengthInformation

Range: Double

Zero or one (optional)

Example 27: WavelengthInformation encoding oexample


{              
                "spectralRange": "INFRARED",
                "startWavelength": 700E-09,
                "endWavelength": 1E-03
}


7.6.4       Acquisition Parameters

 

Requirements Class
/req/acquisition-parameters

Target type

Data instance

Dependency

/req/vertical-spatial-domain

Dependency

/req/orbit-parameters

Dependency

/req/temporal-information

Dependency

/req/acquisition-angles

Dependency

/req/wavelength-information

Requirement

/req/acquisition-parameters/properties

Requirement

/req/acquisition-parameters/vertical-spatial-domain

Requirement

/req/acquisition-parameters/orbit-parameters

Requirement

/req/acquisition-parameters/temporal-information

 

Requirement 19

/req/acquisition-parameters/properties

An "AcquisitionParameters" object shall implement the properties shown in Table 18, with the value matching the type shown, and with the obligation shown.

 

Requirement 20

/req/acquisition-parameters/vertical-spatial-domain

An "AcquisitionParameters" object shall implement the properties of a VerticalSpatialDomain object (Table 11).

 

Requirement 21

/req/acquisition-parameters/orbit-parameters

An "AcquisitionParameters" object shall implement the properties of an OrbitParameters object (Table 12).

 

Requirement 22

/req/acquisition-parameters/temporal-information

An "AcquisitionParameters" object shall implement the properties of a TemporalInformation object (Table 13).

The AcquisitionParameters block contains the properties related to the acquisition of the data.

AcquisitionParameters Schema
Figure : AcquisitionParameters Schema

AcquisitionParameters Schema Cont’d
Figure : AcquisitionParameters Schema Cont’d

Complete description of the AcquisitionParameters properties is given in Table 18. 

Table : AcquisitionParameters object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.acquisitionInformation[*].acquisitionParameters.type

Type of the object.  This property has the fixed value "AcquisitionParameters."

String

Fixed value: "AcquisitionParameters"

Zero or one (optional)

acquisitionType

$..acquisitionParameters.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

Domain: AcquisitionParameters

Range: String

One (mandatory)

acquisitionSubType

$..acquisitionParameters.acquisitionSubType

The broad value defined by the acquisitionType may be further refined by the acquisitionSubType using values from a mission/ground segment specific type definition should refer to mission/ground segment specific codeSpace

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

startTimeFromAscendingNode

$..acquisitionParameters.startTimeFromAscendingNode

Start time of acquisition in milliseconds from ascending node date

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

completionTimeFromAscendingNode

$..acquisitionParameters.completionTimeFromAscendingNode

Stop time of acquisition in milliseconds from ascending node date

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

relativeOrbitNumber

$..acquisitionParameters.relativeOrbitNumber

Orbit number since start of cycle.

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

wrsLongitudeGrid

$..acquisitionParameters.wrsLongitudeGrid

Neutral wrsLongitudeGrid equivalent to track in track/frame, K in K/J, etc.

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

wrsLatitudeGrid

$..acquisitionParameters.wrsLatitudeGrid

Neutral wrsLatitudeGrid equivalent to frame in track/frame, J in K/J, etc.

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

tileId

$..acquisitionParameters.tileId

While track/frame can be used to represent the first part of an MGRS coordinate (i.e., grid zone), the tileId identifies e.g. the second part of an MGRS coordinate (square identification), e.g. in case of Sentinel.

Used when the world reference system coordinates can not be expressed in X/Y (Track/Frame) terms, such has for UTM tiles. (used for Sentinel-2 L1C granules)

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

groundTrackUncertainty

$..acquisitionParameters.groundTrackUncertainty

Measure of the uncertainty of the ground track. Sometimes known as deadband e.g., 1000m (1Km) deadband.

Unit of measure is SI base unit (m) without prefix.

Domain: AcquisitionParameters

Range: Double

Zero or one (optional)

cycleNumber

$..acquisitionParameters.cycleNumber

Number of Cycles

Domain: AcquisitionParameters

Range: Integer

Zero or one (optional)

Only applicable to altimetric products.

antennaLookDirection

$..acquisitionParameters.antennaLookDirection

Look direction of antenna taken from codelist

Values:

- LEFT

- RIGHT

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

Only applicable to radar products.

acquisitionStation

$..acquisitionParameters.acquisitionStation

Acquisition / receiving station code. Possible values are mission specific and should be retrieved using codespace.

Domain:
AcquisitionParameters

Range: String

Zero or more (optional)

comma-separated names.

 

acquisitionAngles

$..acquisitionParameters.acquisitionAngles

Acquisition angles

Domain:
AcquisitionParameters

Range: AcquisitionAngles

See Table 19

operationalMode

$..acquisitionParameters.operationalMode

Sensor mode. Possible values are mission specific.

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

swathIdentifier

$..acquisitionParameters.swathIdentifier

Swath identifier (e.g. Envisat ASAR has 7 distinct swaths (I1,I2,I3...I7) that correspond to precise incidence angles for the sensor).

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

polarisationMode

$..acquisitionParameters.polarisationMode

Polarisation mode taken from codelist:

S (for single),

D (for dual),

T (for twin),

Q (for quad),

UNDEFINED

Domain: AcquisitionParameters

Range: String (S, D, T, Q, UNDEFINED)

Zero or one (optional)

polarisationChannels

$..acquisitionParameters.polarisationChannels

Polarisation channel transmit/receive configuration: horizontal, vertical.

Values:

- HH

- HV

- VH

- VV

- HH, VV

- HH, VH

- HH, HV

- VH, VV

- VH, HV

- VV, HV

- VV, VH

- HV, VH

- HH, HV, VH, VV

- UNDEFINED

Domain: AcquisitionParameters

Range: String

Zero or more (optional).

 

resolution

$..acquisitionParameters.resolution

Sensor resolution.

Unit of measure is SI base unit (m) without prefix.

Domain: AcquisitionParameters

Range: Double

Zero or one (optional)

verticalResolution

$..acquisitionParameters.verticalResolution

lmb: Vertical spacing of data (if regular)

atm: Full width at half maximum of the rows of the vertical averaging kernel matrix

Unit of measure is SI base unit (m) without prefix.

Domain: AcquisitionParameters

Range: Double

Zero or one (optional)

Only applicable to atmospheric and Limb looking products.

wavelengths

$..acquisitionParameters.wavelengths

List of discrete wavelengths observed in the product.

Domain: AcquisitionParameters

Range: WavelengthInformation (See Table 17)

Zero or more (optional)

measurementType

$..acquisitionParameters.measurementType

Measurement type taken from codelist:

Values:

- ABSORPTION

- EMISSION

Domain: AcquisitionParameters

Range: String

Zero or one (optional)

Only applicable to limb looking products.

dopplerFrequency

$..acquisitionParameters.dopplerFrequency

Doppler Frequency of acquisition

Domain: AcquisitionParameters

Range: Double

Zero or one (optional).

 

samplingRates

$..acquisition Parameters.samplingRates

Rate at which samples are provided in product. Some products may contain more than one sampling rate, e.g. 1kHz and 20kHz. Cardinality is therefore zero or more.

Unit of measure (Hz) is SI derived unit[12] without prefix.

Domain: AcquisitionParameters

Range: Array of Double

Zero or more (optional).

Only applicable to altimetric products.

 

Example 28: Radar AcquisitionParameters encoding example


{
        "beginningDateTime": "1978-09-27T01:04:30Z",
        "endingDateTime": "1978-09-27T01:04:45Z",
        "acquisitionType": "NOMINAL",
        "acquisitionSubType": "DEFAULT",
        "orbitNumber": 1316,
        "orbitDirection": "DESCENDING",
        "antennaLookDirection": "RIGHT",
        "acquisitionAngles": {
            "minimumIncidenceAngle": 19.6,
            "maximumIncidenceAngle": 9.6,
            "incidenceAngleVariation": 9.6
        },
 
        "operationalMode": "IM",
        "polarisationMode": "S",
        "polarisationChannels": "HH",
        "wavelengths": {
             "spectralRange": "OTHER"
        }
 
}


 

Example 29: Optical AcquisitionParameters encoding example


{
        …
        "operationalMode": "IM",
        "wavelengths": {
              "spectralRange": "VISIBLE"
        }
}


 

Example 30: Altimeter AcquisitionParameters encoding example


{
        …
        "operationalMode": "LRM",
        "resolution": 0.7,
        "samplingRates": [1000, 20000]
}


 

7.6.5       Acquisition Angles

 

Requirement 23

/req/acquisition-angles

An "AcquisitionAngles" object shall implement the properties shown in Table 19, with the value matching the type shown, and with the obligation shown.

The AcquisitionAngles block contains the properties related to the acquisition angles.

AcquisitionAngles Schema
Figure : AcquisitionAngles Schema

Complete description of the AcquisitionAngles block is given in Table 19. 

Table : AcquisitionAngles object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.acquisitionInformation[*].acquisitionParameters.acquisitionAngles.type

Type of the object.  This property has the fixed value "AcquisitionAngles".

Range: String

Fixed value: "AcquisitionAngles"

Zero or one (optional)

illuminationAzimuthAngle

$..acquisitionAngles.illuminationAzimuthAngle

Mean illumination/solar azimuth angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

illuminationZenithAngle

$..acquisitionAngles.illuminationZenithAngle

Mean illumination/solar zenith angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

illuminationElevationAngle

$..acquisitionAngles.illuminationElevationAngle

Mean illumination/solar elevation angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

incidenceAngle

$..acquisitionAngles.incidenceAngle

Acquisition global incidence angle given in degrees (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

minimumIncidenceAngle

$..acquisitionAngles.minimumIncidenceAngle

Minimum incidence angle

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

maximumIncidenceAngle

$..acquisitionAngles.maximumIncidenceAngle

Maximum incidence angle

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

incidenceAngleVariation

$..acquisitionAngles.incidenceAngleVariation

Incidence angle variation

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

acrossTrackIncidenceAngle

$..acquisitionAngles.acrossTrackIncidenceAngle

Acquisition across track incidence angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

alongTrackIncidenceAngle

$..acquisitionAngles.alongTrackIncidenceAngle

Acquisition along track incidence angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

instrumentAzimuthAngle

$..acquisitionAngles.instrumentAzimuthAngle

Mean instrument azimuth angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

instrumentZenithAngle

$..acquisitionAngles.instrumentZenithAngle

Mean instrument zenith angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

instrumentElevationAngle

$..acquisitionAngles.instrumentElevationAngle

Mean instrument elevation angle given in degrees. (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

pitch

$..acquisitionAngles.pitch

Satellite pitch angle given in degrees (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

roll

$..acquisitionAngles.roll

Satellite roll angle given in degrees (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

yaw

$..acquisitionAngles.yaw

Satellite yaw angle given in degrees (i.e., uom='deg')

Domain: AcquisitionAngles

Range: Double

Zero or one (optional)

 

Example 31: AcquisitionAngles encoding example


{
    "acquisitionInformation": [
        {
            "acquisitionParameters": {
               
                "acquisitionAngles": {
                    "minimumIncidenceAngle": 19.6,
                    "maximumIncidenceAngle": 9.6,
                    "incidenceAngleVariation": 9.6
                }
            }
        }
    ]
}


 

7.7       Requirements class: Product Information

 

Requirements Class
/req/product-information

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Dependency

/req/coverage-description

Dependency

/req/processing-information

Dependency

/req/quality-information

Requirement

/req/product-information/properties

Requirement

/req/product-information/processing-information

Requirement

/req/product-information/coverage-description

 

Requirement 24

/req/product-information/properties

A "ProductInformation" object shall implement the properties shown in Table 20, with the value matching the type shown, and with the obligation shown.

 

Requirement 25

/req/product-information/processing-information

A "ProductInformation" object shall implement the properties of a ProcessingInformation object (Table 22).

 

Requirement 26

/req/product-information/coverage-description

A "ProductInformation" object shall implement the properties of a CoverageDescription object (Table 23).

The ProductInformation block contains the properties related to the product which is the result of the observation and acquisition of the data, including the Quality Information.  It inherits all properties of the ProcessingInformation and CoverageDescription objects.

 

ProductInformation Schema ProductInformation Schema
Figure : ProductInformation Schema

Complete description of the ProductInformation block is given in Table 20. 

Table : ProductInformation object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.productInformation.type

Type of the object. This property has the fixed value "ProductInformation."

Domain: ProductInformation

Range: String

Fixed value: "ProductInformation"

Zero or one (optional)

productType

$.properties.productInformation.productType

Describes the product type in case that mixed types are available within a single collection, this is a ground segment specific definition

Domain: ProductInformation

Range: String

Zero or one (optional)

size

$.properties.productInformation.size

Product size (bytes) allowing the user to realise how long a download is likely to take

Domain: ProductInformation

Range: Integer (Number of bytes)

Zero or one (optional)

statusSubType

$.properties.productInformation.statusSubType

Refines the status of a product when the "status" is set to "ARCHIVED". 

Possible values:

- "ON-LINE"

- "OFF-LINE"

Domain: ProductInformation

Range: String

Zero or one (optional)

statusDetail

$.properties.productInformation.statusDetail

This field refers to the status value. It should be used to motivate the reason of a failure, cancelation, rejection or degraded quality.

Domain: ProductInformation

Range: String

Zero or one (optional)

availabilityTime

$.properties.productInformation.availabilityTime

The time when the result becomes available

DateTime representation, as defined by RFC 3339, section 5.610

Domain: ProductInformation

Range: DateTime

One (mandatory)

timeliness

$.properties.productInformation.timeliness

Timeliness of the product, such as "near real time", "rush". Possible values are mission specific and shall refer to mission/ground segment dedicated codeSpace.

Example of values could be "NRT", "NOMINAL", "NTC" or "STC"

Domain: ProductInformation

Range: String

Zero or one (optional)

productGroupId

$.properties.productInformation.productGroupId

Holds the identifier of a particular group to which the product belongs to. Group members represent then "granules" or "portions" of end-user products that are eligible for specific aggregations (e.g., all Sentinel-2 granules having the same productGroupId can be assembled together to form a Sentinel-2 end-user product)

Domain: ProductInformation

Range: String

Zero or one (optional)

productVersion

$.properties.productInformation.productVersion

Product version

Domain: ProductInformation

Range: String

Zero or one (Optional)

archivingCenter

$.properties.productInformation.archivingCenter

Archiving center code. Possible values are mission specific.

Domain: ProductInformation

Range: String

Zero or one (Optional)

archivingDate

$.properties.productInformation.archivingDate

Archiving date time.

DateTime  representation, as defined by RFC 3339, section 5.610

Domain: ProductInformation

Range: DateTime

Zero or one (Optional)

referenceSystemIdentifier

$.properties.productInformation.referenceSystemIdentifier

Indicates if product is geo-referenced, (in which case should point to a code space for the CRS), when not supplied it is assumed that the product is provided in "raw" satellite frame of reference

E.g., http://www.opengis.net/def/crs/EPSG/0/4326

Domain: ProductInformation

Range: String (URI)

Zero or one (Optional)

qualityInformation

$.properties.productInformation.qualityInformation

Contains properties related to the quality of the product.

Domain: ProductInformation

Range: QualityInformation

Zero or one (Optional)

See Table 21

 

Example 32: ProductInformation encoding example


{
    "productType": "SEA_GEC_1P",
    "referenceSystemIdentifier": "http://www.opengis.net/def/crs/EPSG/0/4326",
    "size": 255211520,
    "productVersion": "1.0",
    "statusSubType": "ON-LINE",
    "availabilityTime": "1978-09-27T01:04:45Z",
    "timeliness": "NOMINAL",
    "archivingcenter": "ASF",
    "archivingDate": "1978-09-28T02:05:56Z",
    "qualityInformation": { … }
}


 

7.7.1       Quality Information

 

Requirement 27

/req/quality-information

A "QualityInformation" object shall implement the properties shown in Table 21, with the value matching the type shown, and with the obligation shown.

 

The QualityInformation block contains the properties related to the quality of the product.

QualityInformation Schema
Figure : QualityInformation Schema

Complete description of the QualityInformation block is given in Table 21. 

Table : QualityInformation object properties
JSON Property Definition Data type and values Multiplicity and use

type

$.properties.productInformation.qualityInformation.type

Type of the object.  This property has the fixed value "QualityInformation."

Range: String

Fixed value: "QualityInformation"

Zero or one (optional)

qualityStatus

$..qualityInformation.qualityStatus

Indicator that specifies whether the product quality is degraded or not.  This optional field shall be provided if the product has passed a quality check.

Values:

DEGRADED, NOMINAL

Domain: QualityInformation

Range: String

Zero or one (optional)

qualityDegradation

$..qualityInformation.qualityDegradation

Quality degradation percentage (i.e., uom=’%’)

Domain: QualityInformation

Range: Double

Zero or one (optional)

qualityDegradationQuotationMode

$..qualityInformation.qualityDegradationQuotationMode

Indicator to know how the quality degradation percentage has been calculated.

Values:

AUTOMATIC, MANUAL

Domain: QualityInformation

Range: String

Zero or one (optional)

qualityDegradationTag

$..qualityInformation.qualityDegradationTag

Contains further textual information concerning the quality degradation.  It shall be provided if qualityStatus value is DEGRADED. Possible values are mission specific and should refer to mission/ground segment dedicated codeSpace.

Example of values could be "RADIOMETRY" or "GEOLOCATION".

Domain: QualityInformation

Range: String

Zero or one (optional)

 

Example 33: QualityInformation encoding example


{
         "qualityStatus": "DEGRADED",
         "qualityDegradationQuotationMode": "AUTOMATIC"
}


7.7.2       Processing Information

 

Requirement 28

/req/processing-information

A "ProcessingInformation" object shall implement the properties shown in Table 22, with the value matching the type shown, and with the obligation shown.

The ProcessingInformation object contains the properties related to the processing of the data.

ProcessingInformation Schema
Figure : ProcessingInformation Schema

Complete description of the ProcessingInformation properties is given in Table 22. 

Table : ProcessingInformation object properties
JSON Property Definition Data type and values Multiplicity and use

compositeType

$.properties.productInformation.compositeType

Type of composite product expressed as timeperiod that the composite product covers using ISO 8601 duration format P[n]Y[n]M[n]D encoding[13], e.g., P10D for a 10 day composite.

Domain: ProcessingInformation

Range: String

Zero or one (optional)

format

$.properties.productInformation.format

Native product format.

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processingMethod[14]

$.properties.productInformation.processingMethod

Method used to compute datalayer. (e.g., Kalman filtering, ROSE)

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processingMethodVersion

$.properties.productInformation.processingMethodVersion

Method version (e.g., 1.0)

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processingCenter

$.properties.productInformation.processingCenter

Processing center code. Possible values are mission specific.

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processingDate

$.properties.productInformation.processingDate

Processing date time

DateTime  representation, as defined by RFC 3339, section 5.610

Domain: ProcessingInformation

Range: DateTime

Zero or one (optional)

processingLevel

$.properties.productInformation.processingLevel

Processing level applied to the product

Domain: ProcessingInformation

Range: String

"1A", "1B", "1C", "2", "3"

Zero or one (optional)

processingMode

$.properties.productInformation.processingMode

Processing mode taken from mission specific code list

Examples of values are:

·       NRT

·       NOMINAL

·       BACKLOGGED

·       REPROCESSED

·       VALIDATE

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processorName

$.properties.productInformation.processorName

Processor software name (e.g., FastROSE)

Domain: ProcessingInformation

Range: String

Zero or one (optional)

processorVersion

$.properties.productInformation.processorVersion

Processor software version (e.g., 1.0)

Domain: ProcessingInformation

Range: String

Zero or one (optional)

productContentsType

$.properties.productInformation.productContentsType

Classification of product according to ground type covered. Note cardinality allows for multiple instances of this property.

Allowed Values:

·       COASTAL

·       CONTINENTAL

·       HYDROLOGY

·       ICE

·       OPEN_OCEAN

·       OTHER

·       REGIONAL

Domain: ProcessingInformation

Range: Array of String

Zero or more (optional)

Only applicable to altimetric products.

 

Example 34: ProcessingInformation encoding example


{
         "processingCenter": "PDS",
         "processingDate": "2016-02-01T04:58:31Z",
         "processingLevel": "2",
         "processorVersion": "3.1"
}


 

7.7.3       Coverage Description

 

Requirement 29

/req/coverage-description

A "CoverageDescription" object shall implement the properties shown in Table 23, with the value matching the type shown, and with the obligation shown.

The CoverageDescription object contains the properties related to the coverage. Its properties are inherited by the ProductInformation object.

CoverageDescription Schema
Figure : CoverageDescription Schema

Complete description of the CoverageDescription properties is given in Table 23. 

Table : CoverageDescription object properties
JSON Property Definition Data type and values Multiplicity and use

cloudCover

$.properties.productInformation.cloudCover

Cloud cover percentage (i.e., uom=’%’)

Range: Double

Zero or one (optional)

snowCover

$.properties.productInformation.snowCover

Snow cover percentage (i.e., uom=’%’)

Range: Double

Zero or one (optional)

 

Example 35: CoverageDescription encoding example


{
    "cloudCover": 0,
    "snowCover": 0
 }


 

7.8       Requirements class: Collections of Earth Observations

 

Requirements Class
/req/earthobservation-collection

Target type

Data instance

Dependency

JSON [NR1]

Dependency

GeoJSON [NR2]

Dependency

/req/earthobservation

Requirement

/req/earthobservation-collection/properties

 

Requirement 30

/req/earthobservation-collection/properties

An Observation Collection (i.e., "FeatureCollection") object shall implement the properties shown in Table 21, with the value matching the type shown, and with the obligation shown.

 

The FeatureCollection object (fully defined in [NR2]) models a collection (i.e. set) of EarthObservations.  Such collections (or sets) of metadata are typically used in responses from service interfaces compliant with OpenSearch extensions; W3C LDP; OASIS OData[15]; OASIS searchRetrieve[16] or in OGC Web Services (OWS) Context documents.   The current section does not define the encoding of the protocol specific information such as information to facilitate traversal of results (paging) or other as these differ for each protocol.    For example, W3C LDP proposes traversal links as part of the HTTP header, while the various OpenSearch extensions include similar information in the HTTP body (payload).  It does also not impose additional properties which are required if it is embedded in an OGC Web Map Context (OWC) according to OGC 14-055r2 [NR5].

FeatureCollection Schema (GeoJSON)
Figure : FeatureCollection Schema (GeoJSON)

Complete description of the FeatureCollection is given in Table 24. 

Table : FeatureCollection object properties
GeoJSON Property Definition Data type and values Multiplicity and use

type

$.type

As defined by [NR2].

Range: String

Fixed value: "FeatureCollection"

One (mandatory)

 

bbox

$.bbox

Information on the coordinate range of the geometry objects which are contained. The value is an array of length 2*n where n is the number of dimensions represented in the contained geometries. Typically, south-west point and north-east point.  The value defines a shape with edges that have constant longitude and latitude.  As defined by [NR2].

Domain: FeatureCollection

Range: Array of Double

Zero or one (optional)

features

$.features

Collection of EarthObservation (Feature) objects as defined by [NR2].

It is possible for the Array to be empty.

Range: Array of Feature

Zero or more (optional)

 

Example 36: FeatureCollection encoding example (GeoJSON)


{
   "type": "FeatureCollection",
     
   "features": [
      {
         "type": "Feature",
         "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780810T062657_19780810T062712_000633_0147_1101_1957",
         …
      },
      {
         "type": "Feature",
         "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780810T062801_19780810T062816_000633_0147_1177_0594",
         …
        
      }
   ]
}


 

8        Extensibility

8.1       Additional properties

In the current EO Dataset Metadata GeoJSON(-LD) Encoding Standard, an "extension" is any property or object type not defined by the Earth Observation Dataset Metadata Vocabulary in the current document. Consuming implementations that encounter unfamiliar extensions shall not stop processing or signal an error and shall continue processing the items as if those properties were not present. Note that support for extensions can vary across implementations and no normative processing model for extensions is defined. Accordingly, implementations that rely too heavily on the use of extensions may experience reduced interoperability with other implementations.

For extensions, JSON-LD [NR3] is used as the primary mechanism for defining and disambiguating extensions. Implementations that wish to fully support extensions should use JSON-LD mechanisms.

It is important to note that the JSON-LD Processing Algorithms [OR13], as currently defined, will silently ignore any property not defined in a JSON-LD @context. Implementations that publish EO Dataset Metadata documents containing extension properties should provide a @context definition for all extensions.

Although JSON objects are extendable by default, it is good practice to group "additional attributes" or "vendor specific information" in the AdditionalAttributes object. See DataIdentification properties (Table 9) in section 7.3.

Example 37: AdditionalAttributes encoding example


{
   …
   "properties": {
      "parentIdentifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001",
      "doi": "",
      "title": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "identifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "date": "2016-12-06T00:13:17Z/2016-12-06T00:14:01Z",
      "updated": "2017-05-05T12:51:16Z",
 
      "additionalAttributes": {
          "productDescription": "PROBA-VEGETATION Level2A Top Of Atmosphere Segment at 1KM resolution",
          "northPoleIndicator": false,
          "southPoleIndicator": false,
          "iCPGeometric": "PROBAV_ICP_GEOMETRIC#CENTER_20160208_V01",
          "iCPGeometricValidity": "2016-02-08T00:00:00Z",
          "iCPGeometricVersion": "01",
          "iCPRadiometric": "PROBAV_ICP_GEOMETRIC#CENTER_20160208_V01",
          "iCPRadiometricValidity": "2016-02-08T00:00:00Z",
          "iCPRadiometricVersion": "01",
          "landPercentage": 3.413,
          "missingDataPercentage": 0.000,
          "cameraID": "CENTER",
          "isSampleImage": false,
          "mapProjectionReference": "GEOGRAPHIC_LAT_LON"
      }
   }
}


JSON-LD mechanisms can be used to define the extensions as shown in the following examples.

Example 38: AdditionalAttributes encoding example (GeoJSON)


{
   "@context": {
      "vgt": "https://pdfintegration.vgt.vito.be/",
      …
      "productDescription": "vgt:productDescription",
      "northPoleIndicator": "vgt:northPoleIndicator",
      "southPoleIndicator": "vgt:southPoleIndicator",
      "iCPGeometric":       "vgt:iCPGeometric",
      "iCPGeometricValidity": "vgt:iCPGeometricValidity"
      …
 
   },
 
   …
 
   "properties": {
      "parentIdentifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001",
      "doi": "",
      "title": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "identifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "date": "2016-12-06T00:13:17Z/2016-12-06T00:14:01Z",
      "updated": "2017-05-05T12:51:16Z",
 
      "additionalAttributes": {
          "productDescription": "PROBA-VEGETATION Level2A Top Of Atmosphere Segment at 1KM resolution",
          "northPoleIndicator": false,
          "southPoleIndicator": false,
          "iCPGeometric": "PROBAV_ICP_GEOMETRIC#CENTER_20160208_V01",
          "iCPGeometricValidity": "2016-02-08T00:00:00Z",
          …
      }
   }
}


 

Example 39: AdditionalAttributes encoding example (JSON-LD)


{
   "@context": {
      …
      "vgt": "https://pdfintegration.vgt.vito.be/",
      …
   },
 
   …
   "gj:properties": {
      "eop:parentIdentifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001",
      "eop:doi": "",
      "dct:title": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "dct:identifier": "urn:ogc:def:EOP:VITO:PROBAV_L2A_1KM_V001:PROBAV_CENTER_L2A_20161206_001317_1KM:V101",
      "dct:date": "2016-12-06T00:13:17Z/2016-12-06T00:14:01Z",
      "dct:modified": "2017-05-05T12:51:16Z",
 
      "eop:additionalAttributes": {
          "vgt:productDescription": "PROBA-VEGETATION Level2A Top Of Atmosphere Segment at 1KM resolution",
          "vgt:northPoleIndicator": false,
          "vgt:southPoleIndicator": false,
          "vgt:iCPGeometric": "PROBAV_ICP_GEOMETRIC#CENTER_20160208_V01",
          "vgt:iCPGeometricValidity": "2016-02-08T00:00:00Z",
          …
      }
   }
}


 

8.2       JSON-specific constructs

Please note that there are valid JSON constructs which cannot be used within a JSON-LD document. For instance, JSON-LD forbids "arrays of arrays" as used by the GeoJSON specification. While implementations are free to use such constructs as extensions within an EO Dataset Metadata document, consumers that use the standard JSON-LD Processing Algorithms will be required to either ignore such extensions or map those to alternative compatible constructs prior to applying the JSON-LD algorithms. Complex geometries can be converted to GeoSPARQL [OR7] "Well-Known Text" representations as illustrated in the non-normative example below.

Example 40: JSON-LD encoding example using GeoSPARQL


{
   "@context": {
      "gj": "https://purl.org/geojson/vocab#",
      "gsp": "http://www.opengis.net/ont/geosparql#",
      "eop": "http://www.opengis.net/ont/eo-geojson/1.0/"
   },
   "@type": [
      "gj:Feature",
      "gsp:Feature",
      "eop:EarthObservation"
   ],
   "@id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "gsp:hasGeometry": {
      "gsp:asWKT": "Polygon((-2.682513, 63.261372, -2.695740, 61.997604, 0.005087, 61.965195, 0.135472, 63.227173, -2.682513, 63.261372))",
      "@type": "gsp:Geometry"
   },
   "gj:properties": {}
}


 

9        Media Types for any data encoding(s)

When EO Dataset Metadata is delivered using HTTP, the following MIME media types shall be used.

Table : Media types
Media type Description

application/geo+json

GeoJSON representation with implicit normative context or normative context linked via a http://www.w3.org/ns/json-ld#context HTTP Link Header.

See examples in annexes D.1.*.2.

application/ld+json;profile=" http://www.w3.org/ns/json-ld#compacted"

GeoJSON-LD representation compacted according to the normative context and with all context information within the body of the document.

See examples in annexes D.1.*.3.

application/ld+json

GeoJSON-LD representation with all context information within the body of the document.

See examples in annexes D.1.*.4.


10    Future Work (Non-Normative)

Several future enhancements of this proposed document are possible.  Obvious enhancements are:

  • Refactor and refine JSON Schema [OR18] in Annex E for documentation and structural validation by referring to external JSON schema for GeoJSON and OWS Context (OGC 14-055r2); and
  • Encoding for EO dataset series.

 

Annex A: Abstract Test Suite (Normative)

A.1        Introduction

Conformance is tested using a set of JSON Schema [OR18] definitions which formalize the requirements described above. Strictly, each object definition is a "JSON Schema," so a JSON schema document may include multiple, sometimes nested, "JSON Schemas," providing the definition of the objects. Using JSON References, JSON schema supports inclusion of schemas defined in a JSON schema document into new schemas defined in the same or another document, so standard JSON objects may be defined once and re-used in multiple contexts, and a set of related object definitions may be composed from multiple documents.

The dependencies of the EO-GeoJSON requirement classes (green) and requirements (orange) correspond to the dependencies of the JSON schema definitions as shown in the Figure below.  Arrows indicate dependencies.

Conformance and requirements class dependencies
Figure : Conformance and requirements class dependencies

 

A.2        Conformance Class: /conf/core

Entire JSON objects defined by the current specification are either individual earthobervation objects or collections of earthobservation objects (i.e. an earthobservation-collection object).

 

Conformance Class

/conf/core

Requirements

/req/earthobservation

/req/earthobservation-collection

Dependency

A JSON Schema Validator

Test

/conf/earthobservation

/conf/earthobservation-collection

 

A.3        Conformance Class: /conf/earthobservation

 

Conformance Class

/conf/earthobservation

Requirements

/req/earthobservation

Dependency

A JSON Schema Validator

Test

/conf/earthobservation

Requirement

req/earthobservation/properties,

[req/geometry],
[req/properties].

Test purpose

Verify that the JSON instance document is a valid EarthObservation object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.4        Conformance Class: /conf/properties

 

Conformance Class

/conf/properties

Requirements

/req/properties

Dependency

A JSON Schema Validator

Test

/conf/properties

Requirement

req/properties/properties,

req/properties/metadata-information,

req/properties/data-identification,

[req/offering],

[req/acquisition-information],

[req/product-information],

[req/metadata-information],

[req/data-identification],

[req/links].

Test purpose

Verify that the JSON instance document is a valid Properties object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.5        Conformance Class: /conf/links

 

Conformance Class

/conf/links

Requirements

/req/links

Dependency

A JSON Schema Validator

Test

/conf/links

Requirement

req/links/properties, 

req/link 

Test purpose

Verify that the JSON instance document is a valid Links object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

 

A.6        Conformance Class: /conf/offering

 

Conformance Class

/conf/offering

Requirements

/req/offering

Dependency

A JSON Schema Validator

Test

/conf/offering

Requirement

req/offering/properties, 

req/operation 

Test purpose

Verify that the JSON instance document is a valid Offering object as defined in OGC 14-055r2 [NR5].

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

 

A.7        Conformance Class: /conf/metadata-information

 

Conformance Class

/conf/metadata-information

Requirements

/req/metadata-information

Dependency

A JSON Schema Validator

Test

/conf/metadata-information

Requirement

req/metadata-information/properties

Test purpose

Verify that the JSON instance document is a valid MetadataInformation object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.8        Conformance Class: /conf/data-identification

Conformance Class

/conf/data-identification

Requirements

/req/data-identification

Dependency

A JSON Schema Validator

Test

/conf/data-identification

Requirement

req/data-identification/properties

Test purpose

Verify that the JSON instance document is a valid DataIdentification object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.9        Conformance Class: /conf/geometry

 

Conformance Class

/conf/geometry

Requirements

/req/geometry

Dependency

A JSON Schema Validator

Test

/conf/geometry

Requirement

req/geometry/properties

Test purpose

Verify that any objects within the document with a "type" property that matches one of the types from GeoJSON conforms to the GeoJSON format [NR2].

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.10    Conformance Class: /conf/acquisition-information

 

Conformance Class

/conf/acquisition-information

Requirements

/req/acquisition-information

Dependency

A JSON Schema Validator

Test

/conf/acquisition-information

Requirement

req/acquisition-information/properties,   
req/platform,
req/instrument,
[req/instrument-parameters],
[req/acquisition-parameters].

Test purpose

Verify that the JSON instance document is a valid AcquisitionInformation object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

 

A.11    Conformance Class: /conf/acquisition-parameters

 

Conformance Class

/conf/acquisition-parameters

Requirements

/req/acquisition-parameters

Dependency

A JSON Schema Validator

Test

/conf/acquisition-parameters

Requirement

req/acquisition-parameters/properties,

req/acquisition-parameters/vertical-spatial-domain, 

req/acquisition-parameters/orbit-parameters,

req/acquisition-parameters/temporal-information,  

req/wavelength-information,  

req/acquisition-angles,

req/vertical-spatial-domain, 

req/orbit-parameters,   

req/temporal-information.  

Test purpose

Verify that the JSON instance document is a valid AcquisitionParameters object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

 

A.12    Conformance Class: /conf/product-information

 

Conformance Class

/conf/product-information

Requirements

/req/product-information

Dependency

A JSON Schema Validator

Test

/conf/product-information

Requirement

req/product-information/properties,

req/product-information/processing-information,

req/product-information/coverage-description,

req/quality-information,

req/processing-information,

req/coverage-description.

Test purpose

Verify that the JSON instance document is a valid ProductInformation object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

A.13    Conformance Class: /conf/earthobservation-collection

 

Conformance Class

/conf/earthobservation-collection

Requirements

/req/earthobservation-collection

Dependency

A JSON Schema Validator

Test

/conf/earthobservation-collection

Requirement

req/earthobservation-collection/properties,

[req/earthobservation].

Test purpose

Verify that the JSON instance document is a valid EarthObservationColllection object.

Test method

Validate the JSON instance document using the appropriate object definition from the JSON Schema (Annex E:).  Pass if no errors reported.  Fail otherwise.

Test type

Capability

 

 

Annex B:    Interpreting JSON as JSON-LD (Non-Normative)

The JSON-LD encoding proposed in this annex supports a seamless transition from GeoJSON based implementations to JSON-LD based implementations with a minimum number of edits.  The GeoJSON encoding proposed can be interpreted as JSON-LD by JSON-LD-aware implementations through the use of the normative @context document provided in this annex. 

B.1 Introduction

B.1.1 JSON-LD

The serialized GeoJSON form of an EO Dataset Metadata document shall be consistent with what would be produced by the standard JSON-LD 1.0 Processing Algorithms and API [OR13] Compaction Algorithm using, at least, the normative JSON-LD @context definition provided in "Annex B: normative JSON-LD @context definition."  Implementations may augment the provided @context with additional @context definitions but shall not override or change the normative context. Implementations may also use additional properties and values not defined in the JSON-LD @context with the understanding that any such properties will likely be unsupported and ignored by consuming implementations that use the standard JSON-LD algorithms. See the Extensibility section for more information on handling extensions within EO Dataset Metadata documents.

JSON-LD uses the special @context property to define the processing context. The value of the @context property is defined by the JSON-LD specification. Implementations producing EO Dataset Metadata documents should include a @context property with a value that includes a reference to the normative JSON-LD @context definition using the URL "https://www.opengis.net/eo-geojson/1.0." Implementations may use the alternative URL "http:// www.opengis.net/eo-geojson/1.0" instead.

When a JSON-LD enabled EO Dataset Metadata implementation encounters a GeoJSON document identified using the "application/geo+json" MIME media type, and that document does not contain a @context property whose value includes a reference to the normative JSON-LD @context definition, the implementation shall assume that the normative @context definition still applies.

Alternatively, implementations can refer to the normative JSON-LD context document via an HTTP Link header as described in section 6.8 of the JSON-LD specification [NR3]. This allows the GeoJSON documents to be unambiguously machine readable as JSON-LD.

Example41: Referencing a JSON-LD context from a GeoJSON document


GET /document.json HTTP/1.1
Host: example.com
Accept: application/ld+json,application/geo+json,*/*;q=0.1
 
====================================
 
HTTP/1.1 200 OK
…
Content-Type: application/geo+json
Link: <https://www.opengis.net/eo-geojson/1.0>; rel="http://www.w3.org/ns/json-ld#context"; type="application/ld+json"
 
{
  . . .
}


B.1.2 Semantic Web and JSON-LD

The W3C Semantic Web Activity is defining a collection of technologies that enables a "Web of data" where information is easily shared and reused across applications. Some key pieces of this technology stack are the RDF (Resource Description Framework), RDFS (RDF Schema) data models [OR9, OR10] and JSON-LD [NR3].  The JSON-LD encoding proposed in the current document can be interpreted as the proposed encoding in RDF for EO Dataset Metadata.  Each JSON(-LD)  property proposed corresponds to an RDF predicate which is represented with a URI.

RDF Triple
Figure : RDF Triple

RDF is a data model built on edge-node "graphs." Each link in a graph consists of three things (with many aliases depending on the mapping from other types of data models):

Any of the three values in a single triple can be represented via a URI (with an optional fragment identifier). Subjects and objects are called nodes. Objects can also be represented as a literal value. Note that the same node may play the role of a Subject in some edges, and the role of the Object in others.

All proposed properties are defined (via a normative @context document) with an URI from existing, well-known, vocabularies where available, e.g. Dublin Core (dct:), GeoJSON-LD (gj:), Atom (atom:), OGC Web Context (owc:) etc.  Only vocabulary items specific to EO (namespace eop) are defined in addition in the current specification (in Annex B.3).

In the proposed specification, the "id" JSON property (or "@id" JSON-LD property) corresponds to a URI representing a Subject or Object (e.g. of type eop:Platform or eop:Instrument).

 

B.2 JSON-LD @context definition

B.2.1 JSON-LD 1.1

The current annex provides the normative JSON-LD @context which is implied by the GeoJSON encoding as explained above.  It is available at http://schemas.opengis.net/eo-geojson/1.0/eo-geojson.jsonld (See Annex E:).

JSON-LD 1.1 [OR32] aware clients can apply this JSON-LD @context to interpret the GeoJSON encoding as JSON-LD.  The context relies on JSON-LD 1.1 specific features, in particular "scoped contexts" and "nested properties."    The expressiveness of JSON-LD 1.0 @context is too limited to isolate the required context information to support compacting and expansion in a single external context document.  It would require inserting inline contexts in the GeoJSON encoding.

 


{
   "@context": {
 
      "@version": 1.1,
 
      "@vocab": "http://www.opengis.net/ont/eo-geojson/1.0/",
      "xsd": "http://www.w3.org/2001/XMLSchema#",
      "dct": "http://purl.org/dc/terms/",
      "atom": "http://www.w3.org/2005/Atom/",
      "iana": "http://www.iana.org/assignments/relation/",
      "eop": "http://www.opengis.net/ont/eo-geojson/1.0/",
      "epsg": "http://www.opengis.net/def/crs/EPSG/0/",
     
      "owc": "http://www.opengis.net/ont/owc/1.0/",
      "gj": "https://purl.org/geojson/vocab#",
      "gsp": "http://www.opengis.net/ont/geosparql#",
      "ical": "http://www.w3.org/2002/12/cal/ical#",
      "media": "http://search.yahoo.com/mrss/",
      "title": "dct:title",
      "identifier": "dct:identifier",
      "format": "dct:format",
     
      "lang": {
         "@id": "dct:language",
         "@type": "@id",
         "@context": {
           "@base": "http://id.loc.gov/vocabulary/iso639-1/"
         }
      },
      "kind": {
	 "@id": "dct:type",
	 "@type": "@id"
      },
      "updated": "dct:modified",
      "published": "dct:issued",
     
      "creator": "dct:creator",
      "description": "dct:description",
      "date": "dct:date",
      "created": "dct:created",
      "available": "dct:available",
      "up": "iana:up",
      "via": "iana:via",
      "data": "iana:enclosure",
      "related": "iana:related",
      "profiles": "iana:profile",
      "links": "@nest",
      "Links": "owc:Links",
      "Offering": "owc:Offering",
      "offerings": {
	 "@id": "owc:offerings",
 	 "@context": {
    	    "@vocab": "http://www.opengis.net/ont/owc/1.0/",
	    "code" : {
		"@id" : "owc :code",
		"@type" : "@id"
	    }
  	 }
      },
      "Link": "atom:link",
      "previews": "iana:icon",
      "alternates": "iana:alternate",
      "qualityReport": "iana:describedby",
      "href": "@id",
      "mediaType": "atom:type",
      "productVersion": "eop:version",
      "beginningDateTime": "ical:dtstart",
      "endingDateTime": "ical:dtend",
      "expression": "media:expression",
      "category": {
         "@id": "media:category",
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "hasGeometry": "gsp:hasGeometry",
      "asWKT": "gsp:asWKT",
      "Feature": "gj:Feature",
      "FeatureCollection": "gj:FeatureCollection",
      "GeometryCollection": "gj:GeometryCollection",
      "LineString": "gj:LineString",
      "MultiLineString": "gj:MultiLineString",
      "MultiPoint": "gj:MultiPoint",
      "MultiPolygon": "gj:MultiPolygon",
      "Point": "gj:Point",
      "Polygon": "gj:Polygon",
      "bbox": {
         "@container": "@list",
         "@id": "gj:bbox"
      },
      "coordinates": "gj:coordinates",
      "features": {
         "@container": "@set",
         "@id": "gj:features"
      },
      "geometry": "gj:geometry",
      "id": "@id",
      "properties": "@nest",
      "additionalAttributes": "@nest",
 
      "type": "@type",
      "links": {
         "@id": "owc:links",
         "@context": {
            "@vocab": "http://www.iana.org/assignments/relation/",
           "type": "atom:type"
         }
      },
      "operations": {
         "@id": "owc:operations",
         "@context": {
           "href": "owc:href",
           "code": "owc:code",
           "type": "atom:type"
         }
      },
      "contents": {
	 "@id": "owc:contents",
	 "@context": {
  	    "type": "owc:type"
	 }
      },
      "conformsTo": {
         "@type": "@id",
         "@id": "dct:conformsTo"
      },
      "referenceSystemIdentifier": {
         "@type": "@id"
      },
      "acquisitionType": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/AcquisitionType/"
         }
      },
      "antennaLookDirection": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "discreteWavelengths": "eop:discreteWavelength",
      "highestLocation": "eop:maximumAltitude",  
      "locationUnit": {
         "@id": "eop:altitudeUnit",
         "@type": "@vocab",
         "@context": {
            "m":   "http://www.opengis.net/ont/eo-geojson/1.0/Unit/Meter",
            "bar": "http://www.opengis.net/ont/eo-geojson/1.0/Unit/Bar"            
         }
      },
      "lowestLocation": "eop:minimumAltitude",
      "measurementType": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "orbitDirection": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "orbitType": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "polarisationChannels": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/"
         }
      },
      "polarisationMode": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/"
         }
      },
      "samplingRates" : "eop:samplingRate",
      "sensorType": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      },
      "spectralRange": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/"
         }
      },
      "status": {
         "@type": "@id",
         "@context": {
           "@base": "http://www.opengis.net/ont/eo-geojson/1.0/"
         }
      }
   }
}


 

B.3 RDF Schema Vocabulary Definition

A non-normative definition of the EO Dataset GeoJSON vocabulary is provided here and/or at the namespace as a convenience for implementers wishing to use RDF mechanisms for processing EO Dataset GeoJSON(-LD). Note, however, that this document provides the normative definition of the vocabulary.

The vocabulary relies on the proposed OWC GeoJSON Vocabulary which is presented in section B.3.2.

B.3.1 EO GeoJSON Vocabulary

The information is best viewed using on-line tools such as Parrot[17], Lode[18] or WIDOCO[19].

 


@prefixdc: <http://purl.org/dc/elements/1.1/> .
@prefixdcterms: <http://purl.org/dc/terms/> .
@prefixeop: <http://www.opengis.net/ont/eo-geojson/1.0/> .
@prefixianarel: <http://www.iana.org/assignments/relation/> .
@prefixmedia: <http://search.yahoo.com/mrss/> .
@prefixowc: <http://www.opengis.net/ont/owc/1.0/> .
@prefixowl: <http://www.w3.org/2002/07/owl#> .
@prefixrdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefixrdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefixskos: <http://www.w3.org/2004/02/skos/core#> .
@prefixvann: <http://purl.org/vocab/vann/> .
@prefixvoid: <http://rdfs.org/ns/void#> .
@prefixxml: <http://www.w3.org/XML/1998/namespace> .
@prefixxsd: <http://www.w3.org/2001/XMLSchema#> .
 
media:categorya owl:ObjectProperty ;
    rdfs:label "category" ;
    dc:description """Media category of the related resource which corresponds to a preview or mask:
- THUMBNAIL
- QUICKLOOK
- ALBUM
- SNOW
- CLOUD
- QUALITY
Only applicable for media resources.""";
    dcterms:source "OGC 17-003, MediaRSS"^^xsd:string ;
    rdfs:isDefinedBy media: ;
    rdfs:seeAlso <http://www.rssboard.org/media-rss#media-category> .
 
media:expressiona owl:DatatypeProperty ;
    rdfs:label "expression" ;
    dc:description "Determines if the related resource is a sample or the full version of the product.  Use \"full\" for "product/ProductInformation/".  Use \"sample\" for \"browse/BrowseInformation/\" or \"mask/MaskInformation/\"." ;
    dcterms:source "OGC 17-003, MediaRSS"^^xsd:string ;
    rdfs:isDefinedBy media: ;
    rdfs:seeAlso <http://www.rssboard.org/media-rss#media-content> .
 
ianarel:describedbya owl:ObjectProperty ;
    rdfs:label "qualityReport" ;
    dc:description "Reference to the location of a related quality report as defined by OGC 14-055r2 §7.1.2." ;
    dcterms:source "OGC 17-003, OGC 14-055r2"^^xsd:string ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
ianarel:relateda owl:ObjectProperty ;
    rdfs:label "related" ;
    dc:description "Reference to the location of a related resource, e.g. cloud mask, snow mask." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
ianarel:upa owl:ObjectProperty ;
    rdfs:label "up" ;
    dc:description "Reference to the metadata of higher level resource (e.g.  Collection, also identified by parentIdentifier) resource." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
eop:ABSORPTIONa eop:MeasurementType ;
    dc:description "Measurement type constant." .
 
eop:ACQUIREDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:ALBUMa eop:CategoryType ;
    dc:description "Category constant." .
 
eop:ALTIMETRICa eop:SensorType ;
    dc:description "Sensor type constant." .
 
eop:ARCHIVEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:ASCENDINGa eop:OrbitDirectionType ;
    dc:description "Orbit direction constant." .
 
eop:ATMOSPHERICa eop:SensorType ;
    dc:description "Sensor type constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/AcquisitionType/CALIBRATION> a eop:AcquisitionType ;
    dc:description "Acquisition type constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/AcquisitionType/NOMINAL> a eop:AcquisitionType ;
    dc:description "Acquisition type constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/AcquisitionType/OTHER> a eop:AcquisitionType ;
    dc:description "Acquisition type constant." .
 
eop:CANCELLEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:CLOUDa eop:CategoryType ;
    dc:description "Category constant." .
 
eop:DESCENDINGa eop:OrbitDirectionType ;
    dc:description "Orbit direction constant." .
 
eop:EMISSIONa eop:MeasurementType ;
    dc:description "Measurement type constant." .
 
eop:EarthObservationa owl:Class ;
    rdfs:label "EarthObservation" ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "Feature",
    "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
    "bbox": [
        -2.69574,
        61.965195,
        0.135472,
        63.261372
    ],
    "geometry": {…},
    "properties": {…}
}
  """;
    rdfs:comment " Earth Observation as defined in OGC 10-157r4" ;
    rdfs:isDefinedBy eop: ;
    rdfs:subClassOf <http://purl.org/geojson/vocab#Feature> .
 
eop:FAILEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:GEOa eop:OrbitType ;
    dc:description "Orbit type constant." .
 
eop:LEFTa eop:AntennaLookDirectionType ;
    dc:description "Antenna look direction constant." .
 
eop:LEOa eop:OrbitType ;
    dc:description "Orbit type constant." .
 
eop:LIMBa eop:SensorType ;
    dc:description "Sensor type constant." .
 
eop:OPTICALa eop:SensorType ;
    dc:description "Sensor type constant." .
 
eop:PLANNEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:POTENTIALa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HH> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HH_HV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HH_HV_VH_VV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HH_VH> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HH_VV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/HV_VH> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/UNDEFINED> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VH> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VH_HV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VH_VV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VV_HV> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationChannels/VV_VH> a eop:PolarisationChannelsType ;
    dc:description "Polarisation channel constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/D> a eop:PolarisationModeType ;
    dc:description "Polarisation mode constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/Q> a eop:PolarisationModeType ;
    dc:description "Polarisation mode constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/S> a eop:PolarisationModeType ;
    dc:description "Polarisation mode constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/T> a eop:PolarisationModeType ;
    dc:description "Polarisation mode constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/PolarisationMode/UNDEFINED> a eop:PolarisationModeType ;
    dc:description "Polarisation mode constant." .
 
eop:QUALITYa eop:CategoryType ;
    dc:description "Category constant." .
 
eop:QUALITYDEGRADEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:QUICKLOOKa eop:CategoryType ;
    dc:description "Category constant." .
 
eop:RADARa eop:SensorType ;
    dc:description "Sensor type constant." .
 
eop:REJECTEDa eop:StatusType ;
    dc:description "Acquisition status constant." .
 
eop:RIGHTa eop:AntennaLookDirectionType ;
    dc:description "Antenna look direction constant." .
 
eop:SNOWa eop:CategoryType ;
    dc:description "Category constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/MICROWAVE> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/OTHER> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/UV> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Ultraviolet (UV)." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/VISIBLE> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant." .
 
eop:THUMBNAILa eop:CategoryType ;
    dc:description "Category constant." .
 
eop:acquisitionAnglesa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "acquisitionAngles" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition angles." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AcquisitionAngles .
 
eop:acquisitionInformationa owl:ObjectProperty ;
    rdfs:label "acquisitionInformation" ;
    dc:description "Contains acquisition information." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains acquisition information." ;
    rdfs:domain eop:Properties ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AcquisitionInformation .
 
eop:acquisitionParametersa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "acquisitionParameters" ;
    dc:description "The acquisition parameters (i.e. pointing angles, etc.)." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain eop:AcquisitionInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AcquisitionParameters .
 
eop:acquisitionStationa owl:DatatypeProperty ;
    rdfs:label "acquisitionStation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition / receiving station code. Possible values are mission specific and should be retrieved using codespace." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:acquisitionSubTypea owl:DatatypeProperty ;
    rdfs:label "acquisitionSubType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "The broad value defined by the acquisitionType is too restrictive, so mission specific type definition should refer to mission/ground segment dedicated codeSpace." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:acquisitionTypea owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "acquisitionType" ;
    dc:description """AcquisitionType can be one of:
 - NOMINAL
 - CALIBRATION
 - OTHER.""";
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AcquisitionType .
 
eop:acrossTrackIncidenceAnglea owl:DatatypeProperty ;
    rdfs:label "acrossTrackIncidenceAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition across track incidence angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:additionalAttributesa owl:ObjectProperty ;
    rdfs:label "additionalAttributes" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Container for ad-hoc additional metadata attributes which are organisation or mission specific." ;
    rdfs:domain eop:DataIdentification ;
    rdfs:isDefinedBy eop: .
 
eop:alongTrackIncidenceAnglea owl:DatatypeProperty ;
    rdfs:label "alongTrackIncidenceAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition along track incidence angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:altitudeUnita owl:ObjectProperty ;
    rdfs:label "locationUnit" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Unit of measure used to express lowestLocation and highestLocation: meter (m) or bar (bar). Default is meter (m)." ;
    rdfs:domain eop:VerticalSpatialDomain ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AltitudeUnitType .
 
eop:antennaLookDirectiona owl:ObjectProperty ;
    rdfs:label "antennaLookDirection" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Look direction of antenna taken from codelist
Values:
- LEFT
- RIGHT.""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:AntennaLookDirectionType .
 
eop:archivingCentera owl:DatatypeProperty ;
    rdfs:label "archivingCenter" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Archiving center code. Possible values are mission specific." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:archivingDatea owl:DatatypeProperty ;
    rdfs:label "archivingDate" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Archiving date time." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:dateTime .
 
eop:ascendingNodeDatea owl:DatatypeProperty ;
    rdfs:label "ascendingNodeDate" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "UTC date and time at ascending node of orbit." ;
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:dateTime .
 
eop:ascendingNodeLongitudea owl:DatatypeProperty ;
    rdfs:label "ascendingNodeLongitude" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Longitude at ascending node of orbit. Should be expressed in degrees.
""";
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:availabilityTimea owl:DatatypeProperty ;
    rdfs:label "availabilityTime" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """The time when the result becomes available
 dateTime in ISO 8601 format (CCYY-MM-DDThh:mm[:ss[.cc]]Z).""";
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:dateTime .
 
eop:cloudCovera owl:DatatypeProperty ;
    rdfs:label "cloudCover" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Cloud cover percentage (i.e. uom=’%’)." ;
    rdfs:domain eop:CoverageDescription ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:completionTimeFromAscendingNodea owl:DatatypeProperty ;
    rdfs:label "completionTimeFromAscendingNode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Stop time of acquisition in milliseconds from ascending node date." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:compositeTypea owl:DatatypeProperty ;
    rdfs:label "compositeType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Type of composite product expressed as timeperiod that the composite product covers using ISO 8601 duration format P[n]Y[n]M[n]D encoding , e.g. P10D for a 10 day composite." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string ;
    rdfs:seeAlso <https://en.wikipedia.org/wiki/ISO_8601#Durations> .
 
eop:cycleNumbera owl:DatatypeProperty ;
    rdfs:label "cycleNumber" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Number of Cycles." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:discreteWavelengtha owl:DatatypeProperty ;
    rdfs:label "discreteWavelengths" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Discrete wavelength observed in the product.   Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:WavelengthInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:doia owl:DatatypeProperty ;
    rdfs:label "doi" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Digital Object Identifier identifying the product (see http://www.doi.org)." ;
    rdfs:domain eop:DataIdentification ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:dopplerFrequencya owl:DatatypeProperty ;
    rdfs:label "dopplerFrequency" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Doppler Frequency of acquisition.   Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:endWavelengtha owl:DatatypeProperty ;
    rdfs:label "endWavelength" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "End of the observed wavelength range.  Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:WavelengthInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:groundTrackUncertaintya owl:DatatypeProperty ;
    rdfs:label "groundTrackUncertainty" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Measure of the uncertainty of the ground track. Sometimes known as deadband e.g. 1000m (1Km) deadband.  Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:illuminationAzimuthAnglea owl:DatatypeProperty ;
    rdfs:label "illuminationAzimuthAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean illumination/solar azimuth angle given in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:illuminationElevationAnglea owl:DatatypeProperty ;
    rdfs:label "illuminationElevationAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean illumination/solar elevation angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:illuminationZenithAnglea owl:DatatypeProperty ;
    rdfs:label "illuminationZenithAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean illumination/solar zenith angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:incidenceAnglea owl:DatatypeProperty ;
    rdfs:label "incidenceAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition global incidence angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:incidenceAngleVariationa owl:DatatypeProperty ;
    rdfs:label "incidenceAngleVariation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Incidence angle variation in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:instrumenta owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "instrument" ;
    dc:description """The Instrument/Sensor used for the acquisition.
If more than one instrument is used for creating the product, then the AcquisitionInformation object occurs more than once.""";
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain eop:AcquisitionInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:Instrument .
 
eop:instrumentAzimuthAnglea owl:DatatypeProperty ;
    rdfs:label "instrumentAzimuthAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean instrument azimuth angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:instrumentElevationAnglea owl:DatatypeProperty ;
    rdfs:label "instrumentElevationAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean instrument elevation angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:instrumentShortNamea owl:DatatypeProperty ;
    rdfs:label "instrumentShortName" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Instrument (Sensor) name." ;
    rdfs:domain eop:Instrument ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:instrumentZenithAnglea owl:DatatypeProperty ;
    rdfs:label "instrumentZenithAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Mean instrument zenith angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:lastOrbitDirectiona owl:ObjectProperty ;
    rdfs:label "lastOrbitDirection" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Acquisition orbit direction at the end of the acquisition/product. Assumed to be identical to orbitDirection if not present.
Values:
•           ASCENDING
•           DESCENDING""";
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:OrbitDirectionType .
 
eop:lastOrbitNumbera owl:DatatypeProperty ;
    rdfs:label "lastOrbitNumber" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition last orbit number." ;
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:maximumAltitudea owl:DatatypeProperty ;
    rdfs:label "highestLocation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Lower bound of measurements in vertical dimension.   Unit of measure defined by locationUnit property." ;
    rdfs:domain eop:VerticalSpatialDomain ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:maximumIncidenceAnglea owl:DatatypeProperty ;
    rdfs:label "maximumIncidenceAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Maximum incidence angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:measurementTypea owl:ObjectProperty ;
    rdfs:label "measurementType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Measurement type taken from codelist:
Values:
- ABSORPTION
- EMISSION.""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:MeasurementType .
 
eop:minimumAltitudea owl:DatatypeProperty ;
    rdfs:label "lowestLocation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Upper bound of measurements in vertical dimension.  Unit of measure defined by locationUnit property." ;
    rdfs:domain eop:VerticalSpatialDomain ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:minimumIncidenceAnglea owl:DatatypeProperty ;
    rdfs:label "minimumIncidenceAngle" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Minimum incidence angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:operationalModea owl:DatatypeProperty ;
    rdfs:label "operationalMode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Sensor mode. Possible values are mission specific." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:orbitDirectiona owl:ObjectProperty ;
    rdfs:label "orbitDirection" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Acquisition orbit direction at the start of the acquisition/product.
Values:
•           ASCENDING
•           DESCENDING""";
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:OrbitDirectionType .
 
eop:orbitDurationa owl:DatatypeProperty ;
    rdfs:label "orbitDuration" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Actual orbit duration in milliseconds." ;
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:orbitNumbera owl:DatatypeProperty ;
    rdfs:label "orbitNumber" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Acquisition orbit number." ;
    rdfs:domain eop:OrbitParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:orbitTypea owl:ObjectProperty ;
    rdfs:label "orbitType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "High level characterisation of main mission types taken from a codelist." ;
    rdfs:domain eop:Platform ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:OrbitType .
 
eop:parentIdentifiera owl:DatatypeProperty ;
    rdfs:label "parentIdentifier" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    vann:example """
{
    "parentIdentifier": "SEA_GEC_1P"
}
   """;
    rdfs:comment "Collection identifier." ;
    rdfs:domain eop:DataIdentification ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:pitcha owl:DatatypeProperty ;
    rdfs:label "pitch" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Satellite pitch angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:platforma owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "platform" ;
    dc:description "The Platform used for the acquisition.  If more than one platform is used for creating the product, then the AcquisitionInformation object occurs more than once." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain eop:AcquisitionInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:Platform .
 
eop:platformSerialIdentifiera owl:DatatypeProperty ;
    rdfs:label "platformSerialIdentifier" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Platform serial identifier (e.g. for Seasat : 1)." ;
    rdfs:domain eop:Platform ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:platformShortNamea owl:DatatypeProperty ;
    rdfs:label "platformShortName" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Platform short name (e.g. \"Seasat\" or \"ENVISAT\")." ;
    rdfs:domain eop:Platform ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:polarisationChannelsa owl:ObjectProperty ;
    rdfs:label "polarisationChannels" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Polarisation channel transmit/receive configuration: horizontal, vertical.
Values:
- HH
- HV
- VH
- VV
- HH, VV
- HH, VH
- HH, HV
- VH, VV
- VH, HV
- VV, HV
- VV, VH
- HV, VH
- HH, HV, VH, VV
- UNDEFINED""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:PolarisationChannelsType .
 
eop:polarisationModea owl:ObjectProperty ;
    rdfs:label "polarisationMode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Polarisation mode taken from codelist:
S (for single),
D (for dual),
T (for twin),
Q (for quad),
UNDEFINED.""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:PolarisationModeType .
 
eop:processingCentera owl:DatatypeProperty ;
    rdfs:label "processingCenter" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Processing center code. Possible values are mission specific." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processingDatea owl:DatatypeProperty ;
    rdfs:label "processingDate" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Processing date time." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:dateTime .
 
eop:processingLevela owl:DatatypeProperty ;
    rdfs:label "processingLevel" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Processing level applied to the product: \"1A\", \"1B\", \"1C\", \"2\", \"3\"." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processingMethoda owl:DatatypeProperty ;
    rdfs:label "processingMethod" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Method used to compute datalayer. (e.g. Kalman filtering, ROSE)." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processingMethodVersiona owl:DatatypeProperty ;
    rdfs:label "processingMethodVersion" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Method version (e.g. 1.0)." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processingModea owl:DatatypeProperty ;
    rdfs:label "processingMode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Processing mode taken from mission specific code list.
Examples of values are:
•           NRT
•           NOMINAL
•           BACKLOGGED
•           REPROCESSED
•           VALIDATE.""";
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processorNamea owl:DatatypeProperty ;
    rdfs:label "processorName" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Processor software name (e.g. FastROSE)." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:processorVersiona owl:DatatypeProperty ;
    rdfs:label "processorName" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Processor software version (e.g. 1.0)." ;
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:productContentTypea owl:DatatypeProperty ;
    rdfs:label "productContentType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Classification of product according to ground type covered. Note cardinality allows for multiple instances of this property.
Allowed Values:
•           COASTAL
•           CONTINENTAL
•           HYDROLOGY
•           ICE
•           OPEN_OCEAN
•           OTHER
•           REGIONAL.""";
    rdfs:domain eop:ProcessingInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:productGroupIda owl:DatatypeProperty ;
    rdfs:label "productGroupId" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Holds the identifier of a particular group to which the product belongs to. Group members represent then \"granules\" or \"portions\" of end-user products that are eligible for specific aggregations (e.g. all Sentinel-2 granules having the same productGroupId can be assembled together to form a Sentinel-2 end-user product)." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:productInformationa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "productInformation" ;
    dc:description "Contains product information." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains product information." ;
    rdfs:domain eop:Properties ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:ProductInformation .
 
eop:productTypea owl:DatatypeProperty ;
    rdfs:label "productType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Describes the product type in case that mixed types are available within a single collection, this is a ground segment specific definition." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:productVersiona owl:DatatypeProperty ;
    rdfs:label "productVersion" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Product version." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:qualityDegradationa owl:DatatypeProperty ;
    rdfs:label "qualityDegradation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Quality degradation percentage (i.e. uom=’%’)." ;
    rdfs:domain eop:QualityInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:qualityDegradationQuotationModea owl:DatatypeProperty ;
    rdfs:label "qualityDegradationQuotationMode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Indicator to know how the quality degradation percentage has been calculated.
Values:
AUTOMATIC, MANUAL.""";
    rdfs:domain eop:QualityInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:qualityDegradationTaga owl:DatatypeProperty ;
    rdfs:label "qualityDegradationTag" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Contains further textual information concerning the quality degradation.  It shall be provided if qualityStatus value is DEGRADED. Possible values are mission specific and should refer to mission/ground segment dedicated codeSpace.
Example of values could be "RADIOMETRY" or "GEOLOCATION".""";
    rdfs:domain eop:QualityInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:qualityInformationa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "qualityInformation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains properties related to the quality of the product." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:QualityInformation .
 
eop:qualityStatusa owl:DatatypeProperty ;
    rdfs:label "qualityStatus" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Indicator that specifies whether the product quality is degraded or not.  This optional field shall be provided if the product has passed a quality check.
Values:
DEGRADED, NOMINAL.""";
    rdfs:domain eop:QualityInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:relativeOrbitNumbera owl:DatatypeProperty ;
    rdfs:label "relativeOrbitNumber" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Orbit number since start of cycle." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:resolutiona owl:DatatypeProperty ;
    rdfs:label "resolution" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Sensor resolution.  Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:rolla owl:DatatypeProperty ;
    rdfs:label "roll" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Satellite roll angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:samplingRatea owl:DatatypeProperty ;
    rdfs:label "samplingRates" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Rate at which samples are provided in product. Some products may contain more than one sampling rate, e.g. 1kHz and 20kHz. Cardinality is therefore zero to many.  Unit of measure (Hz) is SI derived unit without prefix." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:sensorTypea owl:ObjectProperty ;
    rdfs:label "sensorType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Sensor type based on codelist.  Values:
       - OPTICAL
       - RADAR
       - ALTIMETRIC
       - ATMOSPHERIC
       - LIMB.""";
    rdfs:domain eop:Instrument ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:SensorType .
 
eop:sizea owl:DatatypeProperty ;
    rdfs:label "size" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Product size (bytes) allowing the user to realise how long a download is likely to take." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:snowCovera owl:DatatypeProperty ;
    rdfs:label "snowCover" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Snow cover percentage (i.e. uom=’%’)." ;
    rdfs:domain eop:CoverageDescription ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:spectralRangea owl:ObjectProperty ;
    rdfs:label "spectralRange" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """The observed Spectral Range:
Values:
- INFRARED
- NIR
- SWIR
- MWIR
- LWIR
- FIR
- UV
- VISIBLE
- MICROWAVE
- OTHER.""";
    rdfs:domain eop:WavelengthInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:SpectralRangeType .
 
eop:startTimeFromAscendingNodea owl:DatatypeProperty ;
    rdfs:label "startTimeFromAscendingNode" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Start time of acquisition in milliseconds from ascending node date." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:integer .
 
eop:startWavelengtha owl:DatatypeProperty ;
    rdfs:label "startWavelength" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Start of the observed wavelength range.  Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:WavelengthInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:statusa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "status" ;
    dc:description """Refers to product status.
  
Fixed Values :
 - ARCHIVED
 - ACQUIRED
 - CANCELLED
 - FAILED
 - PLANNED
 - POTENTIAL
 - REJECTED
 - QUALITYDEGRADED.""";
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain eop:Properties ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:StatusType .
 
eop:statusDetaila owl:DatatypeProperty ;
    rdfs:label "statusDetail" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "This field refers to the status value. It should be used to motivate the reason of a failure, cancelation, rejection or degraded quality." ;
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:statusSubTypea owl:DatatypeProperty ;
    rdfs:label "statusSubType" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Refines the status of a product when the "status" is set to "ARCHIVED". 
Possible values:
- "ON-LINE"
- "OFF-LINE".""";
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:swathIdentifiera owl:DatatypeProperty ;
    rdfs:label "swathIdentifier" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Swath identifier (e.g. Envisat ASAR has 7 distinct swaths (I1,I2,I3…I7) that correspond to precise incidence angles for the sensor)." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:tileIda owl:DatatypeProperty ;
    rdfs:label "tileId" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """While track/frame can be used to represent the first part of an MGRS coordinate (i.g. grid zone), the tileId identifies e.g. the second part of an MGRS coordinate (square identification), e.g. in case of Sentinel.
Used when the world reference system coordinates can not be expressed in X/Y (Track/Frame) terms, such has for UTM tiles. (used for Sentinel-2 L1C granules).""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:timelinessa owl:DatatypeProperty ;
    rdfs:label "timeliness" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """Timeliness of the product, such as"near real time","rush". Possible values are mission specific and shall refer to mission/ground segment dedicated codeSpace.
Example of values could be "NRT", "NOMINAL", "NTC" or "STC".""";
    rdfs:domain eop:ProductInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:verticalResolutiona owl:DatatypeProperty ;
    rdfs:label "verticalResolution" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment """lmb: Vertical spacing of data (if regular)
atm: Full width at half maximum of the rows of the vertical averaging kernel matrix
Unit of measure is SI base unit (m) without prefix.""";
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:wavelengthResolutiona owl:DatatypeProperty ;
    rdfs:label "wavelengthResolution" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Spacing between consecutive wavelengths.   Unit of measure is SI base unit (m) without prefix." ;
    rdfs:domain eop:WavelengthInformation ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:wavelengthsa owl:ObjectProperty ;
    rdfs:label "wavelengths" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "List of discrete wavelengths observed in the product." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range eop:WavelengthInformation .
 
eop:wrsLatitudeGrida owl:DatatypeProperty ;
    rdfs:label "wrsLatitudeGrid" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Neutral wrsLatitudeGrid equivalent to frame in track/frame,  J in K/J, etc." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:wrsLongitudeGrida owl:DatatypeProperty ;
    rdfs:label "wrsLongitudeGrid" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Neutral wrsLongitudeGrid equivalent to track in track/frame, K in K/J, etc." ;
    rdfs:domain eop:AcquisitionParameters ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:string .
 
eop:yawa owl:DatatypeProperty ;
    rdfs:label "yaw" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Satellite yaw angle in degrees (i.e. uom=’deg’)." ;
    rdfs:domain eop:AcquisitionAngles ;
    rdfs:isDefinedBy eop: ;
    rdfs:range xsd:double .
 
eop:AltitudeUnitTypea owl:Class ;
    rdfs:label "AltitudeUnitType" ;
    rdfs:comment "Enumeration of altitudeUnit constants." ;
    rdfs:isDefinedBy eop: ;
    owl:equivalentClass [ a owl:Class ;
            owl:oneOf ( <http://www.opengis.net/ont/eo-geojson/1.0/Unit/Bar> <http://www.opengis.net/ont/eo-geojson/1.0/Unit/Meter> ) ] .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/FIR> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Far Infrared (FIR)." ;
    skos:broader <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/LWIR> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Long Wavelength Infrared (LWIR)." ;
    skos:broader <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/MWIR> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Mid Wavelength Infrared (MWIR)." ;
    skos:broader <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/NIR> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Near Infrared (NIR)." ;
    skos:broader <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/SWIR> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant for Short Wavelength Infrared (SWIR)." ;
    skos:broader <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> .
 
eop:TemporalInformationa owl:Class ;
    rdfs:label "TemporalInformation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains the properties related to the start and end time of the acquisition of the data.  Its properties are inherited by the AcquisitionParameters object." ;
    rdfs:isDefinedBy eop: .
 
<http://www.opengis.net/ont/eo-geojson/1.0/Unit/Bar> a eop:Unit,
        owl:NamedIndividual ;
    rdfs:label "bar" ;
    dc:description "Unit constant representing non-SI unit \"bar\" (bar)." .
 
<http://www.opengis.net/ont/eo-geojson/1.0/Unit/Meter> a eop:Unit,
        owl:NamedIndividual ;
    rdfs:label "meter" ;
    dc:description "Unit constant representing SI unit \"meter\" (m)." .
 
eop:Unita owl:Class ;
    rdfs:label "Unit" ;
    rdfs:comment "Base class to include all unit constants." ;
    rdfs:isDefinedBy eop: .
 
eop:AntennaLookDirectionTypea owl:Class ;
    rdfs:label "AntennaLookDirectionType" ;
    rdfs:comment "Enumeration of antennaLookDirectionType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:CoverageDescriptiona owl:Class ;
    rdfs:label "CoverageDescription" ;
    rdfs:comment "Contains the properties related to the coverage. Its properties are inherited by the ProductInformation object." ;
    rdfs:isDefinedBy eop: .
 
eop:MeasurementTypea owl:Class ;
    rdfs:label "MeasurementType" ;
    rdfs:comment "Enumeration of measurementType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:OrbitTypea owl:Class ;
    rdfs:label "OrbitType" ;
    rdfs:comment "Enumeration of orbitType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:Propertiesa owl:Class ;
    rdfs:label "Properties" ;
    rdfs:comment "Object containing the properties of the Earth Observation." ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc7946> ;
    rdfs:subClassOf eop:DataIdentification,
        owc:Properties .
 
eop:AcquisitionTypea owl:Class ;
    rdfs:label "AcquisitionType" ;
    rdfs:comment "Enumeration of acquisitionType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:DataIdentificationa owl:Class ;
    rdfs:label "DataIdentification" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Base class of Properties." ;
    rdfs:isDefinedBy eop: .
 
eop:OrbitDirectionTypea owl:Class ;
    rdfs:label "OrbitDirectionType" ;
    rdfs:comment "Enumeration of orbit direction constants." ;
    rdfs:isDefinedBy eop: .
 
eop:Platforma owl:Class ;
    rdfs:label "Platform" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "Platform",
    "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a1498dff-002d-4d67-9091-16822c608221",
    "platformShortName": "Seasat",
    "platformSerialIdentifier": "1",
    "orbitType": "LEO"
}
   """;
    rdfs:comment "Contains the properties of the platform (satellite) that was used to perform the observation.  Use as \"id\" the URI defined by GCMD to identify the platform.  A list of URI can be downloaded from https://gcmdservices.gsfc.nasa.gov/static/kms/platforms/platforms.rdf." ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://gcmdservices.gsfc.nasa.gov/static/kms/platforms/platforms.rdf> .
 
eop:VerticalSpatialDomaina owl:Class ;
    rdfs:label "VerticalSpatialDomain" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains the properties related to the spatial extent in the vertical dimension.  Its properties are inherited by the AcquisitionParameters object." ;
    rdfs:isDefinedBy eop: .
 
eop:AcquisitionInformationa owl:Class ;
    rdfs:label "AcquisitionInformation" ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "AcquisitionInformation",
    "platform": {
        "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
        "platformShortName": "Seasat",
        "platformSerialIdentifier": "1"
    },
    "instrument": {
        "id":  "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
        "sensorType": "RADAR",
        "instrumentShortName": "SAR"
    }, 
    "acquisitionParameters": {
        "operationalMode": "IM",
        "polarisationMode": "S",
        "polarisationChannels": "HH",
        "beginningDateTime": "1978-09-27T01:04:30Z",
        "endingDateTime": "1978-09-27T01:04:45Z",
        "acquisitionType": "NOMINAL",
        "acquisitionSubType": "DEFAULT",
        "orbitNumber": "1316",
        "orbitDirection": "DESCENDING",
        "antennaLookDirection": "RIGHT",
        "acquisitionAngles": {
            "minimumIncidenceAngle": 19.6,
            "maximumIncidenceAngle": 9.6,
            "incidenceAngleVariation": 9.6
        }
    }
}
   """;
    rdfs:comment "Acquisition information of the Earth Observation as defined in OGC 17-003" ;
    rdfs:isDefinedBy eop: .
 
eop:QualityInformationa owl:Class ;
    rdfs:label "QualityInformation" ;
    rdfs:comment "Contains the properties related to the quality of the product." ;
    rdfs:isDefinedBy eop: .
 
<http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/INFRARED> a eop:SpectralRangeType ;
    dc:description "SpectralRange type constant." ;
    skos:narrower <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/FIR>,
        <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/LWIR>,
        <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/MWIR>,
        <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/NIR>,
        <http://www.opengis.net/ont/eo-geojson/1.0/SpectralRange/SWIR> .
 
eop:CategoryTypea owl:Class ;
    rdfs:label "CategoryType" ;
    rdfs:comment "Enumeration of category constants." ;
    rdfs:isDefinedBy eop: .
 
eop:PolarisationModeTypea owl:Class ;
    rdfs:label "PolarisationModeType" ;
    rdfs:comment "Enumeration of polarisationMode constants." ;
    rdfs:isDefinedBy eop: .
 
eop:SensorTypea owl:Class ;
    rdfs:label "SensorType" ;
    rdfs:comment "Enumeration of sensorType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:WavelengthInformationa owl:Class ;
    rdfs:label "WavelengthInformation" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains the properties of the instrument related to the wavelengths used for the observation." ;
    rdfs:isDefinedBy eop: .
 
eop:OrbitParametersa owl:Class ;
    rdfs:label "OrbitParameters" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:comment "Contains the properties related to the orbit.  Its properties are inherited by the AcquisitionParameters object." ;
    rdfs:isDefinedBy eop: .
 
eop:StatusTypea owl:Class ;
    rdfs:label "StatusType" ;
    rdfs:comment "Enumeration of acquisition status constants." ;
    rdfs:isDefinedBy eop: .
 
eop:ProcessingInformationa owl:Class ;
    rdfs:label "ProcessingInformation" ;
    rdfs:comment "Contains the properties related to the processing of the data." ;
    rdfs:isDefinedBy eop: .
 
eop:SpectralRangeTypea owl:Class ;
    rdfs:label "SpectralRangeType" ;
    rdfs:comment "Enumeration of spectralRangeType constants." ;
    rdfs:isDefinedBy eop: .
 
eop:ProductInformationa owl:Class ;
    rdfs:label "ProductInformation" ;
    rdfs:comment "Product information of the Earth Observation product as defined in OGC 17-003" ;
    rdfs:isDefinedBy eop: ;
    rdfs:subClassOf eop:CoverageDescription,
        eop:ProcessingInformation .
 
eop:Instrumenta owl:Class ;
    rdfs:label "Instrument" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "Instrument",
    "id":  "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
    "sensorType": "RADAR",
    "instrumentShortName": "SAR"
}
   """;
    rdfs:comment "Contains the properties of the instrument that was used to perform the observation.  Use as \"id\" the URI defined by GCMD to identify the instrument.  A list of URI can be downloaded from https://gcmdservices.gsfc.nasa.gov/static/kms/instruments/instruments.rdf." ;
    rdfs:isDefinedBy eop: ;
    rdfs:seeAlso <https://gcmdservices.gsfc.nasa.gov/static/kms/instruments/instruments.rdf> .
 
eop:AcquisitionParametersa owl:Class ;
    rdfs:label "AcquisitionParameters" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "AcquisitionParameters",
    "beginningDateTime": "1978-09-27T01:04:30Z",
    "endingDateTime": "1978-09-27T01:04:45Z",
    "acquisitionType": "NOMINAL",
    "acquisitionSubType": "DEFAULT",
    "orbitNumber": "1316",
    "orbitDirection": "DESCENDING",
    "antennaLookDirection": "RIGHT",
    "acquisitionAngles": {
        "minimumIncidenceAngle": 19.6,
        "maximumIncidenceAngle": 9.6,
        "incidenceAngleVariation": 9.6
    }
}
   """;
    rdfs:comment "Contains the properties related to the acquisition of the data." ;
    rdfs:isDefinedBy eop: ;
    rdfs:subClassOf eop:OrbitParameters,
        eop:TemporalInformation,
        eop:VerticalSpatialDomain .
 
eop:PolarisationChannelsTypea owl:Class ;
    rdfs:label "PolarisationChannelsType" ;
    rdfs:comment "Enumeration of polarisationChannels constants." ;
    rdfs:isDefinedBy eop: .
 
eop:AcquisitionAnglesa owl:Class ;
    rdfs:label "AcquisitionAngles" ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "AcquisitionAngles",
    "minimumIncidenceAngle": 19.6,
    "maximumIncidenceAngle": 9.6,
    "incidenceAngleVariation": 9.6
}
   """;
    rdfs:comment "Contains the properties related to the acquisition angles." ;
    rdfs:isDefinedBy eop: .
 
eop:a owl:Ontology ;
    dc:contributor "John Taylor, CGI"^^xsd:string,
        "Olivier Barois, European Space Agency"^^xsd:string,
        "Sirko Schindler, DLR"^^xsd:string ;
    dc:creator "Yves Coene, Spacebel s.a."^^xsd:string ;
    dc:date "2018-11-09"^^xsd:string ;
    dc:title "OGC 17-003 - Earth Observation Dataset Metadata Vocabulary" ;
    dcterms:license "http://www.opengeospatial.org/ogc/software" ;
    vann:preferredNamespacePrefix "eop" ;
    vann:preferredNamespaceUri "http://www.opengis.net/ont/eo-geojson/1.0/" ;
    void:vocabulary dcterms: ;
    rdfs:comment """This vocabulary defines the classes and properties required to model Earth Observation (EO) metadata for datasets (i.e. products or granules).  It provides the models for the exchange of information describing EO datasets, both within and between different organisations.
        The implementation is derived from the conceptual models defined in the Earth Observation Metadata Profile of Observations and Measurements OGC 10-157r4, and the Unified Metadata Model for Granules (UMM-G)."""^^xsd:string;
    owl:imports <http://www.opengis.net/ont/owc/1.0/>,
        <http://purl.org/geojson/vocab#> ;
    owl:versionInfo "1.0.0"^^xsd:string .


 

B.3.2 OWC GeoJSON Vocabulary

The Vocabulary in the current section is required by the EO GeoJSON Vocabulary presented in the previous section.  It is expected to be replaced in the future by an official OWL vocabulary representing OGC 14-055r2 resources.


@prefixatom: <http://www.w3.org/2005/Atom/> .
@prefixdc: <http://purl.org/dc/elements/1.1/> .
@prefixdcterms: <http://purl.org/dc/terms/> .
@prefixianarel: <http://www.iana.org/assignments/relation/> .
@prefixmedia: <http://search.yahoo.com/mrss/> .
@prefixowc: <http://www.opengis.net/ont/owc/1.0/> .
@prefixowl: <http://www.w3.org/2002/07/owl#> .
@prefixrdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefixrdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefixskos: <http://www.w3.org/2004/02/skos/core#> .
@prefixvann: <http://purl.org/vocab/vann/> .
@prefixvoid: <http://rdfs.org/ns/void#> .
@prefixxml: <http://www.w3.org/XML/1998/namespace> .
@prefixxsd: <http://www.w3.org/2001/XMLSchema#> .
 
ianarel:alternatea owl:ObjectProperty ;
    rdfs:label "alternates" ;
    dc:description """Reference to a description of the resource in an alternative format.
Is defined by OGC 14-055r2 §7.1.2.""";
    dcterms:source "OGC 17-003, OGC 14-055r2"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "alternates": [
        {
            "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
            "type": "application/atom+xml",
            "title": "Atom format"
        }
    ]
}
   """;
    rdfs:isDefinedBy owc: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
ianarel:enclosurea owl:ObjectProperty ;
    rdfs:label "data" ;
    dc:description "Reference to the location of the data resource as defined by OGC 14-055r2 §7.1.2.12" ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "data": [
        {
            "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
            "type": "application/binary",
            "title": "Download"
        }
    ]
}
   """;
    rdfs:isDefinedBy owc: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
ianarel:icona owl:ObjectProperty ;
    rdfs:label "previews" ;
    dc:description """Reference to a quicklook or browse image representing the resource.
Is defined by OGC 14-055r2 §7.1.2.10""";
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "previews": [
        {
            "href": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
            "type": "image/png",
            "title": "Quicklook"
        }
    ]
}
   """;
    rdfs:isDefinedBy owc: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc4287#section-4.2.5>,
        <https://tools.ietf.org/html/rfc5988> .
 
ianarel:viaa owl:ObjectProperty ;
    rdfs:label "via" ;
    dc:description "Reference to a description of the resource in its original format.  Is defined by OGC 14-055r2 §7.1.2.15" ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    rdfs:isDefinedBy owc: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc5988> .
 
owc:codea owl:DatatypeProperty ;
    rdfs:label "code" ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    vann:example """
    "code": "http://www.opengis.net/spec/owc-geojson/1.0/req/wms"
   """;
    rdfs:comment """Code identifying the type of offering, equal to a requirement class identifier (URI) for the extension defining the operation.
Examples:
- http://www.opengis.net/spec/owc-geojson/1.0/req/wcs
- http://www.opengis.net/spec/owc-geojson/1.0/req/wmts""";
    rdfs:domain owc:Offering ;
    rdfs:isDefinedBy owc: ;
    rdfs:range xsd:anyURI ;
    rdfs:seeAlso <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#54> .
 
owc:linksa owl:FunctionalProperty,
        owl:ObjectProperty ;
    rdfs:label "links" ;
    dc:description "Refers to related, actionable resources including download location, quicklook, original or alternative metadata representations." ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    rdfs:domain owc:Properties ;
    rdfs:isDefinedBy owc: ;
    rdfs:range owc:Links .
 
owc:offeringsa owl:ObjectProperty ;
    rdfs:label "offerings" ;
    dc:description "Service or online content offering for the resource targeted at OGC compliant clients.  See OGC 14-055r2." ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    rdfs:domain owc:Properties ;
    rdfs:isDefinedBy owc: ;
    rdfs:range owc:Offering .
 
owc:operationsa owl:ObjectProperty ;
    rdfs:label "operations" ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    rdfs:comment "Operations used to invoke the service." ;
    rdfs:domain owc:Offering ;
    rdfs:isDefinedBy owc: ;
    rdfs:range owc:Operation ;
    rdfs:seeAlso <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#54> .
 
atom:hrefa owl:DatatypeProperty,
        owl:FunctionalProperty ;
    rdfs:label "href" ;
    dc:description "URI describing the related resource.  Is defined by OGC 14-055r2 §7.1.10." ;
    dcterms:source "OGC 14-055r2"^^xsd:string ;
    rdfs:domain [ a owl:Class ;
            owl:unionOf ( atom:Link owc:Operation ) ] ;
    rdfs:isDefinedBy owc: ;
    rdfs:range xsd:anyURI ;
    owl:equivalentProperty rdf:about .
 
atom:lengtha owl:DatatypeProperty ;
    rdfs:label "length" ;
    dc:description "Hint about the content length (in bytes) of the representation that is expected to be returned when the value of href is dereferenced.  Is defined by Atom (RFC4287)." ;
    dcterms:source "RFC4287"^^xsd:string ;
    rdfs:domain atom:Link ;
    rdfs:isDefinedBy atom: ;
    rdfs:range xsd:integer ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc4287> .
 
atom:typea owl:DatatypeProperty,
        owl:FunctionalProperty ;
    rdfs:label "type" ;
    dc:description "Hint about the type of the representation that is expected to be returned when the value of href is dereferenced." ;
    dcterms:source "OGC 17-003"^^xsd:string ;
    rdfs:domain [ a owl:Class ;
            owl:unionOf ( atom:Link owc:Operation ) ] ;
    rdfs:isDefinedBy atom: ;
    rdfs:range xsd:string ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc4287> .
 
owc:Linksa owl:Class ;
    rdfs:label "Links" ;
    dcterms:source "OGC 17-003, OGC 14-055r2"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
            "type": "Links",
    "data": [
        {
            "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
            "type": "application/binary",
            "title": "Download"
        }
    ],
    "previews": [
        {
            "href": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
            "type": "image/png",
            "title": "Quicklook"
        }
            ],
    "alternates": [
        {
            "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
            "type": "application/atom+xml",
            "title": "Atom format"
        }
    ]
}
   """;
    rdfs:comment "Contains references to related resources as hypermedia links.  They include references to quicklooks, data download links or alternative representations of the metadata.  Inherits properties defined by OGC 14-055r2." ;
    rdfs:isDefinedBy owc: .
 
owc:Propertiesa owl:Class ;
    rdfs:label "Properties" ;
    rdfs:comment "Object containing the properties of the OWS Context Feature." ;
    rdfs:isDefinedBy owc: ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc7946> .
 
owc:Offeringa owl:Class ;
    rdfs:label "Offering" ;
    dcterms:source "OGC 12-084r2, OGC 14-055r2"^^xsd:string ;
    vann:example """
{
    "@context": "https://www.opengis.net/eo-geojson/1.0",
    "type": "Offering",
    "code": "http://www.opengis.net/spec/owc-geojson/1.0/req/wcs",
    "operations": [
        {
            "code": "GetCapabilities",
            "method": "GET",
            "type": "application/xml",
            "href": "http://fedeo.esa.int/geoserver/wcs?REQUEST=GetCapabilities&version=2.0.1&service=WCS"
                       },
        {
            "code": "GetCoverage",
            "method": "GET",
            "type": "application/x-binary",
            "href": "http://fedeo.esa.int/geoserver/wcs?service=wcs&version=2.0.1&request=getcoverage&coverageid=ASA_IMM_1PNIPA20080308_183226_000001722066_00371_31487_2902"                                                                       
        }
    ]
}
   """;
    rdfs:comment "Service or inline content offering for the EO product intended to be consumed by OGC-compliant clients.  Is defined by OGC 14-055r2." ;
    rdfs:isDefinedBy <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#54>,
        owc: ;
    rdfs:seeAlso <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#54> .
 
owc:Operationa owl:Class ;
    rdfs:label "Operation" ;
    dcterms:source "OGC 12-084r2, OGC 14-055r2"^^xsd:string ;
    rdfs:comment "Defines the operation either to get the information or to get the capabilities.  Is defined by OGC 14-055r2." ;
    rdfs:isDefinedBy <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#60>,
        owc: ;
    rdfs:seeAlso <http://docs.opengeospatial.org/is/12-084r2/12-084r2.html#60> .
 
atom:Linka owl:Class ;
    rdfs:label "Link" ;
    dcterms:source "RFC 4287, OGC 14-055r2"^^xsd:string ;
    rdfs:comment "A link contains the properties of a hypermedia link to a resource identified by its URI." ;
    rdfs:isDefinedBy atom:,
        <https://tools.ietf.org/html/rfc4287#section-4.2.7> ;
    rdfs:seeAlso <https://tools.ietf.org/html/rfc4287#section-4.2.7> .
 
owc:a owl:Ontology ;
    dc:contributor "John Taylor, CGI"^^xsd:string,
        "Olivier Barois, European Space Agency"^^xsd:string ;
    dc:creator "Yves Coene, Spacebel s.a."^^xsd:string ;
    dc:date "2018-11-08"^^xsd:string ;
    dc:title "OGC 14-055r2 - OGC OWS Context Vocabulary" ;
    dcterms:license "http://www.opengeospatial.org/ogc/software" ;
    vann:preferredNamespacePrefix "owc" ;
    vann:preferredNamespaceUri "http://www.opengis.net/ont/owc/1.0/" ;
    void:vocabulary dcterms: ;
    rdfs:comment """This vocabulary defines the classes and properties required to model OWS Context classes and properties inherited by OGC 17-003.
        The implementation is derived from the conceptual models defined in the OGC 14-055r2 document."""^^xsd:string;
    owl:versionInfo "1.0.0 D1"^^xsd:string .


 

Annex C:    EO Vocabulary Mapping (Normative)

C.1 Vocabulary to Models Mapping

The table below maps the JSON and EO Vocabulary Properties to the equivalent property in the XML encoding from OGC 10-157r4. It also maps the EO Properties to the equivalent property of the UMM-G Model [OR2], [OR3], [OR4].

The JSON property name included in column 1 corresponds to the JSON-LD property name included in column 2, compacted according to the normative JSON-LD context provided in annex B.2 of the current document. 


JSON Property EO Vocabulary Property OGC 10-157r4 XPath [OR1] UMM-G/UMM-Common/UMM-C Property [OR2], [OR3], [OR4] Comments

acquisitionDate

eop:acquisitionDate

downlinkedTo/DownlinkInformation/
acquisitionDate

 

 

acquisitionInformation

eop:acquisitionInformation

 

UMM-G

Acquisition Information

Table 5: Properties object properties

AcquisitionInformation

eop:AcquisitionInformation (Class)

 

UMM-G

Acquisition Information

Table 14: AcquisitionInformation object properties

acquisitionParameters

eop:acquisitionParameters

 

 

Table 14: AcquisitionInformation object properties

AcquisitionParameters

eop:AcquisitionParameters (Class)

 

 

Table 18: AcquisitionParameters object properties

acquisitionStation

eop:acquisitionStation

downlinkedTo/DownlinkInformation/
acquisitionStation

 

Table 18: AcquisitionParameters object properties

acquisitionSubType

eop:acquisitionSubType

EarthObservationMetadata/
acquisitionSubType

None identified

Table 18: AcquisitionParameters object properties

acquisitionType

eop:acquisitionType

EarthObservationMetadata/
acquisitionType

None identified

Table 18: AcquisitionParameters object properties

acrossTrack
IncidenceAngle

eop:acrossTrack
IncidenceAngle

acquisitionParameters/
Acquisition/
acrossTrackIncidenceAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

additionalAttributes

eop:additionalAttributes

EarthObservationMetadata/
vendorSpecific/SpecificInformation

UMM-G

Data Identification / AdditionalAttributes / AdditionalAttribute/Name

Data Identification / AdditionalAttributes / AdditionalAttribute/Values/Value

Table 9: Data Identification properties

alongTrack
IncidenceAngle

eop:alongTrack
IncidenceAngle

acquisitionParameters/Acquisition/
alongTrackIncidenceAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

alternates [NR5]

iana:alternate

 

 

Table 6: Links object properties

antennaLookDirection

eop:antennaLookDirection

eop:EarthObservationEquipment/
eop:acquisitionParameters/

sar:Acquisition/
sar:antennaLookDirection

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 18: AcquisitionParameters object properties

archivingCenter

eop:archivingCenter

archivedIn/
ArchivingInformation/archivingCenter

UMM-G

AdditionalAttribute/

ArchiveLocation/distributionInformation

Table 20: ProductInformation object properties

archivingDate

eop:archivingDate

archivedIn/
ArchivingInformation/archivingDate

 

Table 20: ProductInformation object properties

ascendingNodeDate

eop:ascendingNodeDate

EarthObservationEquipment/
acquisitionParameters/
Acquisition/ascendingNodeDate

Spatial Information / Spatial Option 8 / PlatformOrbitInfo / EquatorCrossingDateTime

Table 12: OrbitParameters object properties

ascendingNodeLongitude

eop:ascendingNodeLongitude

acquisitionParameters/Acquisition/

ascendingNodeLongitude

Spatial Information / Spatial Option 8 / PlatformOrbitInfo / EquatorCrossingLongitude

Table 12: OrbitParameters object properties

asWKT

gsp:asWKT

om:featureOfInterest /
eop:Footprint

Spatial Information / Spatial Extent

 

JSON-LD alternative for gj:coordinates to avoid using multi-dimensional arrays.

available

dct:available

 

 

Table 9: Data Identification properties

availabilityTime

eop:availabilityTime

om:resultTime/gml:TimeInstant/ gml:timePosition

UMM-G

Data Quality Information / production Date Time/ ProductionDateTime

 

Table 20: ProductInformation object properties

bbox

gj:bbox

 

UMM-G

Spatial Information /Spatial Option 4 – Bounding Box

Spatial Information / Spatial Option 5 – Bounding Box with Center Point

Or

UMM-C

SpatialExtent/HorizontalSpatialDomain/
Geometry/BoundingRectangles

 

Table 4: EarthObservation object properties

beginningDateTime

ical:dtstart

om:phenomenonTime/
gml:TimePeriod/
gml:beginPosition

Temporal Information / TemporalExtent/RangeDateTime/
BeginningDateTime  

Temporal Information / TemporalExtent/SingleDateTime

Temporal Information / TemporalExtent/PeriodicDateTime/
StartDate  

Table 13: TemporalInformation object properties

category

media:category

eop:EarthObservationResult/
browse/BrowseInformation/type

eop:EarthObservationResult/
Product/ProductInformation/type

eop:EarthObservationResult/
mask/MaskInformation/type

 

Table 7: Link object properties

cloudCover

eop:cloudCover

EarthObservationResult/
opt:EarthObservationResult/
opt:cloudCoverPercentage

atm:EarthObservationResult/
atm:cloudCoverPercentage

ssp:EarthObservationResult /
ssp:cloudCoverPercentage

Coverage Description / Cloud Cover

Table 23: CoverageDescription object properties

completionTime
FromAscendingNode

eop:completionTime
FromAscendingNode

acquisitionParameters/Acquisition/

completionTimeFromAscendingNode

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 18: AcquisitionParameters object properties

compositeType

eop:compositeType

EarthObservationMetadata/
processing/ProcessingInformation/
compositeType

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 22: ProcessingInformation object properties

Type of composite product expressed as timeperiod that the composite product covers  (e.g. P10D for a 10 day composite)

conformsTo

 

 

dct:conformsTo

EarthObservationResult/
browse/BrowseInformation/ referenceSystemIdentifier

EarthObservationResult/
product/ProductInformation/ referenceSystemIdentifier

EarthObservationResult/
mask/MaskInformation/
referenceSystemIdentifier

UMM-G

Coverage Description / AdditionalAttribute

Spatial Information /  Tiling Identification System

 

Table 7: Link object properties

 

coordinates

gj:coordinates

EarthObservation/
om:featureOfInterest /
eop:Footprint

Spatial Information / Spatial Extent

 

Table 10: Geometry object properties

created

dct:created

 

Data Identification / Data Date
(CREATE)

Table 9: Data Identification properties

creationDate

 

 

Metadata Information / Metadata Date
(CREATE)

Table 8: MetadataInformation properties

cycleNumber

eop:cycleNumber

alt:Acquisition/

alt:cycleNumber

UMM-C: TemporalExtent/PeriodicDateTime/
PeriodCycleDurationValue

Table 18: AcquisitionParameters object properties

data [NR5]

iana:enclosure

EarthObservationResult/ product/ProductInformation/
filename

UMM-C

RelatedURL

Table 6: Links object properties

This is the reference to the location of the product itself – so  download link

The UMM-C RelatedURL element includes cases where the download link is provided

DataIdentification

eop:DataIdentification (Class)

 

 

Has properties defined in Table 9: Data Identification properties.

date

dct:date

EarthObservation/
om:phenomenonTime/gml:TimePeriod

UMM-C

TemporalExtent/RangeDateTime

UMM-G

Data Identification / Data Date [R]

Table 9: Data Identification properties

description

dct:description

EarthObservationEquipment/
instrument/Instrument/description

UMM-C

Platform/Instrument/Characteristics/Description

Table 16: Instrument object properties

discreteWavelengths

eop:discreteWavelength

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
discreteWavelengths

 

Table 17: WavelengthInformation object properties

doi

eop:doi

EarthObservationMetadata/
doi

UMM-C:

Publication Reference

PublicationReference/DOI

UMM-G:

Data Identification / Universal Reference Identifier [R]

Table 9: Data Identification properties

dopplerFrequency

eop:dopplerFrequency

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:dopplerFrequency

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 18: AcquisitionParameters object properties

endingDateTime

ical:dtend

om:phenomenonTime/
gml:TimePeriod/
gml:endPosition

Temporal Information / TemporalExtent/RangeDateTime/
endingDateTime

Temporal Information / TemporalExtent/SingleDateTime 

Temporal Information / TemporalExtent/PeriodicDateTime/
EndDate  

Table 13: TemporalInformation object properties

endWavelength

eop:endWavelength

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
WavelengthInformation/endWavelength

UMM-C

Platform/Instrument/Characteristics

../Name

../Description

../DataType

../Unit

../Value

Table 17: WavelengthInformation object properties

expression

media:expression

eop:EarthObservationResult/
browse/BrowseInformation

eop:EarthObservationResult/
Product/ProductInformation

eop:EarthObservationResult/
mask/MaskInformation

 

Table 7: Link object properties

FeatureCollection

gj:FeatureCollection (Class)

 

 

Table 24: FeatureCollection object properties

features

gj:features

 

 

Table 24: FeatureCollection object properties

format

dct:format

EarthObservationMetadata/Processing/
ProcessingInformation/
nativeProductFormat

UMM-G

Distribution Information / Distribution / (a) Data Format

Data Identification / Data format

Table 22: ProcessingInformation object properties

geometry

gj:geometry

EarthObservation/
om:featureOfInterest /
eop:Footprint

Spatial Information / Spatial Extent /
HorizontalSpatialDomain

Spatial Information / Spatial Option 1 – Point

Spatial Information / Spatial Option 2 – Line

Spatial Information / Spatial Option 3 – Polygon

Spatial Information / Spatial Option 6 – Polygon with Center Point

Spatial Information / Spatial Option 7 – Polygon with Holes

Table 4: EarthObservation object properties

groundTrackUncertainty

eop:groundTrackUncertainty

alt:ProcessingInformation/
alt:groundTrackUncertainty

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 18: AcquisitionParameters object properties

hasGeometry

gsp:hasGeometry

om:featureOfInterest /
eop:Footprint

UMM-C

Spatial Information / Spatial Extent

JSON-LD alternative for gj:geometry to avoid using multi-dimensional arrays.

highestLocation

eop:maximumAltitude

lmb:Footprint/
lmb:maximumAltitude

UMM-C

Spatial Information / Spatial Extent / VerticalSpatialDomain

Table 11: Vertical Spatial Domain object properties

identifier

dct:identifier

EarthObservationMetadata/
identifier

UMM-G

Data Identification / Producer Identifier

Table 9: Data Identification properties

illumination
AzimuthAngle

eop:illumination
AzimuthAngle        

acquisitionParameters/Acquisition/
illuminationAzimuthAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

illumination
ElevationAngle

eop:illumination
ElevationAngle

acquisitionParameters/Acquisition/
illuminationElevationAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

illumination
ZenithAngle

eop:illumination
ZenithAngle

acquisitionParameters/Acquisition/
illuminationZeniththAngle

 

Table 19: AcquisitionAngles object properties

incidenceAngle

eop:incidenceAngle

acquisitionParameters/Acquisition/
incidenceAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

incidenceAngleVariation

eop:incidenceAngleVariation

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:incidenceAngleVariation

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 19: AcquisitionAngles object properties

Instrument

eop:Instrument (Class)

om:procedure

Acquisition Information / Platform / Instrument (uuid)

Table 16: Instrument object properties

instrument

eop:instrument

om:procedure/ eop:EarthObservationEquipment/

alt:EarthObservationEquipment/
alt:instrument

ssp:EarthObservationEquipment/
ssp:instrument

Acquisition Information / Platform / Instrument (uuid)

Table 14: AcquisitionInformation object properties

instrumentAzimuthAngle

eop:instrumentAzimuthAngle

acquisitionParameters/
Acquisition/
instrumentAzimuthAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

instrumentElevationAngle

eop:instrumentElevationAngle

acquisitionParameters/
Acquisition/
instrumentElevationAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

instrumentShortName

eop:instrumentShortName

om:procedure/ EarthObservationEquipment/
instrument/Instrument/shortName

Acquisition Information / Platform / Instrument[20] / ShortName (UMM-Common)

Table 16: Instrument object properties

instrumentZenithAngle

eop:instrumentZenithAngle

acquisitionParameters/
Acquisition/
instrumentZenithAngle

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

lang

dct:language

 

Metadata Information / Metadata Language

Table 8: MetadataInformation properties

lastOrbitDirection

eop:lastOrbitDirection

EarthObservationEquipment/
acquisitionParameters/
Acquisition/
orbitDirection

Spatial Information Spatial Option 8 / PlatformOrbitInfo/

Table 12: OrbitParameters object properties

lastOrbitNumber

eop:lastOrbitNumber

EarthObservationEquipment/
acquisitionParameters/
Acquisition/
lastOrbitNumber

Spatial Information / Spatial Option 8 / PlatformOrbitInfo/StopOrbitNumber

 

Table 12: OrbitParameters object properties

length [NR5]

atom:length

EarthObservationResult/
product/ProductInformation/
size

 

Table 7: Link object properties

Link

atom:link (Class)

EarthObservationResult/
browse/BrowseInformation/filename

EarthObservationResult/
product/ProductInformation/
filename

EarthObservationResult/
mask/MaskInformation/
fileName

 

Table 7: Link object properties

links

owc:links

 

 

Table 5: Properties object properties

Links

owc:Links (Class)

 

 

Table 6: Links object properties

locationUnit

eop:altitudeUnit

lmb:Footprint/
lmb:minimumAltitude

lmb:Footprint/
lmb:maximumAltitude

(gml:MeasureType)

UMM-C

Spatial Information / Spatial Extent /
VerticalSpatialDomain

Table 11: Vertical Spatial Domain object properties

lowestLocation

eop:minimumAltitude

lmb:Footprint/
lmb:minimumAltitude

UMM-C

Spatial Information / Spatial Extent /
VerticalSpatialDomain

Table 11: Vertical Spatial Domain object properties

maximum
IncidenceAngle

eop:maximum
IncidenceAngle

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:maximumIncidenceAngle

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 19: AcquisitionAngles object properties

measurementType

eop:measurementType

lmb:Sensor/
lmb:measurementType

 

Table 18: AcquisitionParameters object properties

minimum
IncidenceAngle

eop:minimum
IncidenceAngle

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:minimumIncidenceAngle

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 19: AcquisitionAngles object properties

operationalMode

eop:operationalMode

EarthObservationEquipment/
sensor/Sensor/operationalMode

UMM-C

Platform/Instrument/OperationalMode 

Table 18: AcquisitionParameters object properties

orbitDirection

eop:orbitDirection

EarthObservationEquipment/
acquisitionParameters/
Acquisition/
orbitDirection

Spatial Information Spatial Option 8 / PlatformOrbitInfo

Table 12: OrbitParameters object properties

orbitDuration

eop:orbitDuration

EarthObservationEquipment/
acquisitionParameters/Acquisition/
orbitDuration

UMM-C

SpatialExtent/OrbitParameters/Period

Table 12: OrbitParameters object properties

orbitNumber

eop:orbitNumber

EarthObservationEquipment/
acquisitionParameters/Acquisition/
orbitNumber

Spatial Information / Spatial Option 8 / PlatformOrbitInfo/OrbitNumber

Spatial Information Spatial Option 8 / PlatformOrbitInfo/StartOrbitNumber

Table 12: OrbitParameters object properties

orbitType

eop:orbitType

EarthObservationEquipment/
platform/Platform/orbitType

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 15: Platform object properties

parentIdentifier

eop:parentIdentifier

EarthObservationMetadata/
parentIdentifier

Data Identification / Parent Collection Identifier [R]

e.g. (a) ShortName

Table 9: Data Identification properties

pitch

eop:pitch

EarthObservationEquipment/
acquisitionParameters/
Acquisition/pitch

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

Platform

eop:Platform (Class)

om:procedure

EarthObservationEquipment

 

Table 15: Platform object properties

platform

eop:platform

om:procedure/ eop:EarthObservationEquipment/

alt:EarthObservationEquipment/
alt:platform

ssp:EarthObservationEquipment/
ssp:platform

UMM-G

Acquisition Information / Platform

Table 14: AcquisitionInformation object properties

platformSerialIdentifier

eop:platformSerialIdentifier

EarthObservationEquipment/
platform/Platform/serialIdentifier

 

Table 15: Platform object properties

platformShortName

eop:platformShortName

EarthObservationEquipment/ platform/Platform/shortName

Acquisition Information / Platform / ShortName (UMM-Common )

Table 15: Platform object properties

polarisationChannels

eop:polarisationChannels

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:polarisationChannels

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 18: AcquisitionParameters object properties

polarisationMode

eop:polarisationMode

eop:EarthObservationEquipment/
eop:acquisitionParameters/
sar:Acquisition/
sar:polarisationMode

UMM-G

Acquisition Information /Instrument (or Sensor)

UMM-C

Platform / Instrument / Characteristics

Table 18: AcquisitionParameters object properties

previews [NR5]

iana:icon

EarthObservationResult/
browse/BrowseInformation/
filename

Data Identification / Browse Graphic

Table 6: Links object properties

processingCenter

eop:processingCenter

EarthObservationMetadata/
processing/
ProcessingInformation/
processingCenter

Data Identification / Processing Center (Part of UMM-C)

Table 22: ProcessingInformation object properties

processingDate

eop:processingDate

EarthObservationMetadata/
processing/
ProcessingInformation/
processingDate

Data Quality Information / Production Date Time

Table 22: ProcessingInformation object properties

processingLevel

eop:processingLevel

EarthObservationMetadata/
processing/ProcessingInformation/
processingLevel

Data Identification / Processing Level (Part of UMM-C)

Table 22: ProcessingInformation object properties

processingMethod

eop:processingMethod

EarthObservationMetaData/
processing/ProcessingInformation/
processingMethod

UMM-G

Data Quality Information

Product Generation Executive (PGE) Information

PGEVersionClass/PGEName

Table 22: ProcessingInformation object properties

processingMethodVersion

eop:processingMethodVersion

EarthObservationMetaData/
processing/ProcessingInformation/
processingMethodVersion

UMM-G

Data Quality Information

Product Generation Executive (PGE) Information

PGEVersionClass/PGEVersion

Table 22: ProcessingInformation object properties

processingMode

eop:processingMode

EarthObservationMetaData/
processing/ProcessingInformation/
processingMode

 

Table 22: ProcessingInformation object properties

processorName

eop:processorName

EarthObservationMetadata/
processing/
ProcessingInformation/
processorName

UMM-G

Data Quality Information

Product Generation Executive (PGE) Information

PGEVersionClass/PGEName

Table 22: ProcessingInformation object properties

processorVersion

eop:processorVersion

EarthObservationMetadata/
processing/
ProcessingInformation/
processorVersion

UMM-G

Data Quality Information

Product Generation Executive (PGE) Information

PGEVersionClass/PGEVersion

Table 22: ProcessingInformation object properties

productContentsType

eop:productContentsType

alt:ProcessingInformation/
alt:productContentsType

None identified

UMM-G

Data Identification / AdditionalAttribute

Table 22: ProcessingInformation object properties

productGroupId

eop:productGroupId

EarthObservationMetadata/
productGrouptId

UMM-C: Entry Title

UMM-G: Data Quality Information / Element Specification / reprocessing Lineage / Element Specification

Table 20: ProductInformation object properties

productInformation

eop:productInformation

 

 

Table 5: Properties object properties

ProductInformation

eop:ProductInformation (Class)

 

 

Table 20: ProductInformation object properties

productType

eop:productType

EarthObservationMetadata/
productType

UMM-C:  Entry Title

UMM-G: Data Quality Information / Element Specification / reprocessing Lineage / Element Specification

Table 20: ProductInformation object properties

productVersion

eop:productVersion

 

Data Identification / Local Version Identifier

Table 20: ProductInformation object properties

profiles

iana:profile

 

 

 

properties

gj:properties

 

 

Table 4: EarthObservation object properties

Properties

gj:Properties (Class)

 

 

Table 5: Properties object properties.

published

dct:issued

 

Metadata Information / Metadata Date [R]
(CREATE)

Table 8: MetadataInformation properties

qualityDegradation

eop:qualityDegradation

EarthObservationMetadata/
productQualityDegradation

None identified

Table 21: QualityInformation object properties

qualityDegradation
QuotationMode

eop:qualityDegradation
QuotationMode

EarthObservationMetadata/
productQualityDegradation
QuotationMode

None identified

Table 21: QualityInformation object properties

qualityDegradationTag

eop:qualityDegradationTag

EarthObservationMetadata/
productQualityDegradationTag

 

Table 21: QualityInformation object properties

qualityInformation

eop:qualityInformation

 

 

Table 20: ProductInformation object properties

QualityInformation

eop:QualityInformation (Class)

 

 

Table 21: QualityInformation object properties

qualityReport

iana:describedby

EarthObservationMetadata/
productQualityReportURL

 

Table 6: Links object properties

qualityStatus

eop:qualityStatus

EarthObservationMetadata/
productQualityStatus

None identified

Table 21: QualityInformation object properties

referenceSystemIdentifier

eop:referenceSystemIdentifier

product/ProductInformation/
referenceSystemIdentifier

 

UMM-C

Spatial Extent /

HorizontalSpatialDomain/Geometry/CoordinateSystem

Or

GranuleSpatialRepresentation

Table 20: ProductInformation object properties

related

iana:related

 

 

Table 6: Links object properties

relativeOrbitNumber

eop:relativeOrbitNumber

alt:Acquisition/alt:relativePassNumber

None identified

UMM-G

Coverage Description / AdditionalAttribute

 

Table 18: AcquisitionParameters object properties

resolution

eop:resolution

EarthObservationEquipment/
sensor/Sensor/resolution

UMM-C

Platform/Instrument/Characteristics/Unit

Table 18: AcquisitionParameters object properties

roll

eop:roll

acquisitionParameters/
Acquisition/roll

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

samplingRates

eop:samplingRate

alt:ProcessingInformation/
alt: samplingRate

 

Table 18: AcquisitionParameters object properties

sensorType

eop:sensorType

EarthObservationEquipment/
sensor/Sensor/sensorType

UMM-Common

Acquisition Information / Platform/Instrument/Technique

Table 16: Instrument object properties

size

eop:size

product/
ProductInformation/
size

Distribution Information / Distribution / (b) File Size

Table 20: ProductInformation object properties

snowCover

eop:snowCover

opt:EarthObservationResult/
opt:snowCoverPercentage

atm:EarthObservationResult/
atm:snowCoverPercentage

ssp:EarthObservationResult /
ssp:snowCoverPercentage

 

Table 23: CoverageDescription object properties

spectralRange

eop:spectralRange

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
WavelengthInformation/spectralRange

UMM-C

Platform/Instrument/Characteristics

../Name

../Description

../DataType

../Unit

../Value

Table 17: WavelengthInformation object properties

startTimeFrom
AscendingNode

eop:startTimeFrom
AscendingNode

acquisitionParameters/
Acquisition/
startTimeFromAscendingNode

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 18: AcquisitionParameters object properties

startWavelength

eop:startWavelength

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
WavelengthInformation/startWavelength

UMM-C

Platform/Instrument/Characteristics

../Name

../Description

../DataType

../Unit

../Value

Table 17: WavelengthInformation object properties

status

eop:status

EarthObservationMetadata/
eop:status

UMM-C

Data Identification/Collection Progress

UMM-G

Coverage Description / AdditionalAttribute

Table 5: Properties object properties

statusDetail

eop:statusDetail

EarthObservationMetaData/
statusDetail

UMM-C

Platform/Instrument/Characteristics

../Name

../Description

../DataType

../Unit

../Value

Table 20: ProductInformation object properties

statusSubType

eop:statusSubType

EarthObservationMetaData/
statusSubType

UMM-C

Platform/Instrument/Characteristics

../Name

../Description

../DataType

../Unit

../Value

Table 20: ProductInformation object properties

swathIdentifier

eop:swathIdentifier

EarthObservationEquipment/
sensor/Sensor/swathIdentifier

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 18: AcquisitionParameters object properties

tileId

eop:tileId

N/A

UMM-G

AdditionalAttribute/

TileID, geographicIdentifier

Table 18: AcquisitionParameters object properties

timeliness

eop:timeliness

product/
ProductInformation/timeliness

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 20: ProductInformation object properties

title

dct:title

E.g. EarthObservationMetadata/
identifier

UMM-G

Data Identification / Producer Identifier

Data Identification / Universal Reference Identifier

Table 7: Link object properties

Table 9: Data Identification properties

type [NR5]

atom:type

 

 

Table 7: Link object properties

up

iana:up

 

 

Table 6: Links object properties

updated

dct:modified

EarthObservation/om:resultTime/
gml:TimeInstant/ gml:timePosition

/eop:metaDataProperty/
eop:EarthObservationMetaData/
eop:modificationDate

EarthObservationMetadata/
creationDate

Metadata Information / Metadata Date [R]
(UPDATE)

Table 8: MetadataInformation properties

version

eop:version

product/ProductInformation/
version

UMM-G

Local Version Identifier/LocalVersionId

Or

UMM-C

Resource Citation / Version

Table 20: ProductInformation object properties

verticalResolution

eop:verticalResolution

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:verticalResolution

lmb:Acquisition/
lmb:verticalResolution

UMM-C

Platform/Instrument/Characteristics/Unit

Table 18: AcquisitionParameters object properties

via [NR5]

iana:via

ssp:EarthObservationMetaData/
ssp:derivedFrom

 

Table 6: Links object properties

WavelengthInformation

eop:WavelengthInformation (Class)

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
WavelengthInformation

UMM-C

Platform/Instrument/Characteristics

../Name

Table 17: WavelengthInformation object properties

wavelengthResolution

eop:wavelengthResolution

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation/
WavelengthInformation/
wavelengthResolution

UMM-C

Platform/Instrument/Characteristics

../Name

Table 17: WavelengthInformation object properties

wavelengths

eop:wavelengths

/om:procedure/
eop:EarthObservationEquipment/
sensor/Sensor/wavelengthInformation

UMM-C

Platform/Instrument/Characteristics

../Name

Table 18: AcquisitionParameters object properties

wrsLatitudeGrid

eop:wrsLatitudeGrid

/om:procedure/
eop:EarthObservationEquipment/ eop:acquisitionParameters/
eop:Acquisition/
eop:wrsLatitudeGrid

UMM-C

Tiling Identification System

TilingIdentificationSystem/Coordinate2

Also there are

UMM-G

AdditionalAttribute/

WRSPath geographicIdentifier

Table 18: AcquisitionParameters object properties

wrsLongitudeGrid

eop:wrsLongitudeGrid

/om:procedure/
eop:EarthObservationEquipment/ eop:acquisitionParameters/
eop:Acquisition/eop:wrsLongitudeGrid

UMM-C

Tiling Identification System

TilingIdentificationSystem/Coordinate1

 

UMM-G

AdditionalAttribute/

WRSRow, geographicIdentifier

Table 18: AcquisitionParameters object properties

yaw

eop:yaw

acquisitionParameters/

Acquisition/yaw

None identified

UMM-G

Coverage Description / AdditionalAttribute

Table 19: AcquisitionAngles object properties

 

EarthObservationMetadata/
vendorSpecific/SpecificInformation

Acquisition Information / Platform / Characteristics (UMM-Common )

 

 

EarthObservationMetadata/
vendorSpecific/SpecificInformation

Acquisition Information / Platform / Instrument / Characteristics (UMM-Common)

 

 

 

Acquisition Information / Platform / Instrument / LongName (UMM-Common)

 

 

 

Acquisition Information / Platform / Instrument / Technique (UMM-Common)

 

 

 

Acquisition Information / Platform / LongName (UMM-Common )

 

 

 

Acquisition Information / Platform / Type (UMM-Common )

 

 

 

Acquisition Information / Project

 

 

EarthObservationMetadata/
vendorSpecific/SpecificInformation

Coverage Description / Day Night Flag

 

 

 

Distribution Information / Related URL

 

 

 

Spatial Information / Spatial Extent /
OrbitParameters

 

 

 

Spatial Information / Spatial Extent /
Zone Identifier

 

 

alt:Acquisition/alt:isSegment

 

 

 

alt:Acquisition/alt:relativePassNumber

 

 

 

alt:EarthObservationEquipment/
alt:auxiliaryInstrument

 

 

 

alt:EarthObservationEquipment/
alt:auxiliaryInstrument/
alt:instrumentType

 

 

 

alt:Footprint/alt:nominalTrack

 

 

 

alt:ProcessingInformation/
alt:groundTrackUncertainty

 

 

 

alt:ProcessingInformation/
alt:productContentsType

 

 

 

archivedIn/ArchivingInformation/
archivingIdentifier

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:algorithmName

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:algorithmVersion

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:speciesError

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:species

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:unit

 

 

 

atm:EarthObservationResult/
atm:dataLayers/
atm:DataLayer/
atm:verticalRange

 

 

 

EarthObservationMetadata/
composedOf

 

Table 6: Links object properties

atom:section (RFC5988)

 

EarthObservationMetadata/
histograms

 

 

 

EarthObservationMetadata/
linkedWith

 

Table 6: Links object properties

atom:related (RFC5988)

 

EarthObservationMetadata/
productGroupId

 

 

 

EarthObservationMetadata/
subsetOf

 

Table 6: Links object properties

atom:subsection (RFC5988)

 

EarthObservationMetadata/Processing/
ProcessingInformation/
auxiliaryDataSetFileName

 

 

 

EarthObservationResult/
opt:EarthObservationResult/
opt:cloudCoverPercentage
AssessmentConfidence

 

 

 

EarthObservationResult/
opt:EarthObservationResult/
opt:cloudCoverPercentage
QuotationMode

 

 

 

EarthObservationResult/coverage

 

 

 

EarthObservationResult/parameter/
ParameterInformation/phenomenon

 

 

 

EarthObservationResult/parameter/
ParameterInformation/unitOfMeasure

 

 

 

lmb:Acquisition/
lmb:observationMode

 

 

 

lmb:Footprint/
lmb:nominalTrack

 

 

 

lmb:Footprint/
lmb:occultationPoints

 

 

 

om:procedure/ EarthObservationEquipment/
instrument/Instrument/instrumentType

 

 

 

opt:EarthObservationResult/
opt:snowCoverPercentage
AssessmentConfidence

 

 

 

opt:EarthObservationResult/
opt:snowCoverPercentage
QuotationMode

 

 

 

ssp:EarthObservationMetaData/
ssp: nominalDate

 

 

 

ssp:Footprint/
gml:locationName

 

 

 


 

Annex D:    Encoding Examples (Non-Normative)

Extracts of the following examples were used in the body of the document.  The current Annex includes the complete examples in their original metadata format and in the proposed encodings.

The following tools were very useful to improve readability and check the examples.

D.1 Metadata Examples

D.1.1 Example 1: Seasat (Radar)

D.1.1.1 OGC 10-157r4

 


<?xml version="1.0" encoding="UTF-8"?>
<sar:EarthObservation xmlns:sar="http://www.opengis.net/sar/2.0" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:eop="http://www.opengis.net/eop/2.0" xmlns:om="http://www.opengis.net/om/2.0" xmlns:ows="http://www.opengis.net/ows/2.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" gml:id="ID_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b" xsi:schemaLocation="http://www.opengis.net/sar/2.0 https://svn.opengeospatial.org/ogc-projects/cite/scripts/wcseo/1.0/tags/r1/resources/omeo/sar.xsd">
   <om:phenomenonTime>
      <gml:TimePeriod gml:id="tp_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
         <gml:beginPosition>1978-09-27T01:04:30Z</gml:beginPosition>
         <gml:endPosition>1978-09-27T01:04:45Z</gml:endPosition>
      </gml:TimePeriod>
   </om:phenomenonTime>
   <om:resultTime>
      <gml:TimeInstant gml:id="archivingdate_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
         <gml:timePosition>2014-10-04T04:19:17Z</gml:timePosition>
      </gml:TimeInstant>
   </om:resultTime>
   <om:procedure>
      <eop:EarthObservationEquipment gml:id="eoe_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
         <eop:platform>
           <eop:Platform>
              <eop:shortName>Seasat</eop:shortName>
              <eop:serialIdentifier>1</eop:serialIdentifier>
           </eop:Platform>
         </eop:platform>
         <eop:instrument>
           <eop:Instrument>
              <eop:shortName>SAR</eop:shortName>
           </eop:Instrument>
         </eop:instrument>
         <eop:sensor>
           <eop:Sensor>
              <eop:sensorType>RADAR</eop:sensorType>
              <eop:operationalMode>IM</eop:operationalMode>
           </eop:Sensor>
         </eop:sensor>
         <eop:acquisitionParameters>
           <sar:Acquisition>
              <eop:orbitNumber>1316</eop:orbitNumber>
              <eop:orbitDirection>DESCENDING</eop:orbitDirection>
              <sar:polarisationMode>S</sar:polarisationMode>
              <sar:polarisationChannels>HH</sar:polarisationChannels>
              <sar:antennaLookDirection>RIGHT</sar:antennaLookDirection>
              <sar:minimumIncidenceAngle uom="deg">19.6</sar:minimumIncidenceAngle>
              <sar:maximumIncidenceAngle uom="deg">9.6</sar:maximumIncidenceAngle>
              <sar:incidenceAngleVariation uom="deg">9.6</sar:incidenceAngleVariation>
           </sar:Acquisition>
         </eop:acquisitionParameters>
      </eop:EarthObservationEquipment>
   </om:procedure>
   <om:observedProperty nilReason="inapplicable"/>
   <om:featureOfInterest>
      <eop:Footprint gml:id="fp_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
         <eop:multiExtentOf>
           <gml:MultiSurface gml:id="ms_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b" srsName="EPSG:4326">
              <gml:surfaceMembers>
                 <gml:Polygon gml:id="fppoly_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
                    <gml:exterior>
                       <gml:LinearRing>
                          <gml:posList>63.261372 -2.682513 61.997604 -2.695740 61.965195 0.005087 63.227173 0.135472 63.261372 -2.682513</gml:posList>
                       </gml:LinearRing>
                    </gml:exterior>
                 </gml:Polygon>
              </gml:surfaceMembers>
           </gml:MultiSurface>
         </eop:multiExtentOf>
      </eop:Footprint>
   </om:featureOfInterest>
   <om:result>
      <eop:EarthObservationResult gml:id="eor_64dd0a6f-72bd-40c9-a8cd-10fe33c6516b">
         <eop:browse>
           <eop:BrowseInformation>
              <eop:type>QUICKLOOK</eop:type>
              <eop:referenceSystemIdentifier codeSpace="EPSG">epsg:4326</eop:referenceSystemIdentifier>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG">
                    <ows:RequestMessage/>
                 </ows:ServiceReference>
              </eop:fileName>
           </eop:BrowseInformation>
         </eop:browse>
         <eop:product>
           <eop:ProductInformation>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP">
                    <ows:RequestMessage xlmns="http://www.opengis.net/ows/2.0"/>
                 </ows:ServiceReference>
              </eop:fileName>
              <eop:version>1.0</eop:version>
              <eop:size uom="bytes">255211520</eop:size>
           </eop:ProductInformation>
         </eop:product>
      </eop:EarthObservationResult>
   </om:result>
   <eop:metaDataProperty>
      <eop:EarthObservationMetaData>
         <eop:identifier>SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F</eop:identifier>
         <eop:parentIdentifier>SEA_GEC_1P</eop:parentIdentifier>
         <eop:acquisitionType>NOMINAL</eop:acquisitionType>
         <eop:acquisitionSubType>DEFAULT</eop:acquisitionSubType>
         <eop:productType>SEA_GEC_1P</eop:productType>
         <eop:status>ARCHIVED</eop:status>
         <eop:processing>
           <eop:ProcessingInformation/>
         </eop:processing>
      </eop:EarthObservationMetaData>
   </eop:metaDataProperty>
</sar:EarthObservation>

 

D.1.1.2 GeoJSON

 


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "bbox": [
      -2.69574,
      61.965195,
      0.135472,
      63.261372
   ],
   "geometry": {
      "coordinates": [
         [
           [
              -2.682513,
              63.261372
           ],
           [
              -2.69574,
              61.997604
           ],
           [
              0.005087,
              61.965195
           ],
           [
              0.135472,
              63.227173
           ],
           [
              -2.682513,
              63.261372
           ]
         ]
      ],
      "type": "Polygon"
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "SEA_GEC_1P",
      "title": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
             "identifier": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "doi": "10.15489/mf87c2zjgo59",
      "date": "2016-07-02T18:13:41.34Z/2016-07-02T18:14:06.34Z",
      "updated": "2017-01-26T11:30:18Z",
      "links": {
         "data": [
           {
              "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
              "type": "application/binary",
              "title": "Download"
           }
         ],
         "previews": [
           {
              "href": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
              "type": "image/png",
              "title": "Quicklook",
              "category": "QUICKLOOK",
              "expression": "sample",
              "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
           }
         ],
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
              "type": "application/atom+xml",
              "title": "Atom format"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
              "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
              "platformShortName": "Seasat",
              "platformSerialIdentifier": "1"
           },
           "instrument": {
              "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
              "sensorType": "RADAR",
              "instrumentShortName": "SAR"
           },
           "acquisitionParameters": {
              "operationalMode": "IM",
              "polarisationMode": "S",
              "polarisationChannels": "HH",
              "beginningDateTime": "1978-09-27T01:04:30Z",
              "endingDateTime": "1978-09-27T01:04:45Z",
              "acquisitionType": "NOMINAL",
              "acquisitionSubType": "DEFAULT",
              "orbitNumber": 1316,
              "orbitDirection": "DESCENDING",
              "antennaLookDirection": "RIGHT",
              "acquisitionAngles": {
                 "minimumIncidenceAngle": 19.6,
                 "maximumIncidenceAngle": 9.6,
                 "incidenceAngleVariation": 9.6
              }
           }
         }
      ],
      "productInformation": {
         "productType": "SEA_GEC_1P",
         "size": 255211520,
         "availabilityTime": "1978-09-27T01:04:45Z"
      }
   }
}


D.1.1.3 JSON-LD (Compacted)

 


{
   "@context": "http://schemas.opengis.net/eo-geojson/1.0/eo-geojson.jsonld",
 
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "geometry": {
      "type": "Polygon",
      "coordinates": [
         [
           [
              -2.682513,
              63.261372
           ],
           [
              -2.69574,
              61.997604
           ],
           [
              0.005087,
              61.965195
           ],
           [
              0.135472,
              63.227173
           ],
           [
              -2.682513,
              63.261372
           ]
         ]
      ]
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "SEA_GEC_1P",
      "title": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "identifier": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "date": "1978-09-27T01:04:30Z/1978-09-27T01:04:45Z",
      "updated": "2017-04-11T13:36:16Z",
      "links": {
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "type": "application/atom+xml",
              "title": "Atom format"
            },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=om10",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0",
              "title": "O&M metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=om",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1",
              "title": "O&M 1.1 metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "type": "application/rdf+xml",
              "title": "RDF/XML format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "type": "application/ld+json",
              "title": "JSON-LD format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "type": "text/turtle",
              "title": "Turtle format"
           }
         ],
         "data": [
           {
              "href": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
              "type": "application/x-binary",
              "title": "Download"
           }
         ],
         "previews": [
           {
              "href": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
              "type": "image/png",
              "title": "Quicklook",
                                    "category": "QUICKLOOK",
              "expression": "sample",
              "conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326"
           }
         ],
         "up": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=SEA_GEC_1P&recordSchema=iso",
              "type": "application/atom+xml",
              "title": "Up"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
              "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
              "platform": "Seasat",
              "platformSerialIdentifier": "1"
           },
           "instrument": {
              "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
              "instrumentShortName": "SAR",
               "sensorType": "RADAR"
           },
           "acquisitionParameters": {
              "operationalMode": "IM",
              "polarisationMode": "S",
              "polarisationChannels": "HH",
              "beginningDateTime": "1978-09-27T01:04:30Z",
              "endingDateTime": "1978-09-27T01:04:45Z",
              "orbitDirection": "DESCENDING",
              "orbitNumber": 1316,
              "acquisitionType": "NOMINAL",
              "acquisitionSubType": "DEFAULT",
              "wrsLongitudeGrid": "0",
              "antennaLookDirection": "RIGHT",
              "acquisitionAngles": {
                 "minimumIncidenceAngle": 19.6,
                 "maximumIncidenceAngle": 29.2,
                 "incidenceAngleVariation": 9.6
              }
           }
         }
      ],
      "productInformation": {
         "productType": "SEA_GEC_1P",
         "size": 255211520,
         "availabilityTime": "2014-10-04T04:19:17Z",
         "referenceSystemIdentifier": "epsg:4326"
      }
   }
}


 

D.1.1.4 JSON-LD (Expanded)

 


{
   "@context": {
      "eop": "http://www.opengis.net/ont/eo-geojson/1.0/",
      "xsd": "http://www.w3.org/2001/XMLSchema#",
      "dct": "http://purl.org/dc/terms/",
      "atom": "http://www.w3.org/2005/Atom/",
      "iana": "http://www.iana.org/assignments/relation/",
      "owc": "http://www.opengis.net/ont/owc/1.0/",
      "gj": "https://purl.org/geojson/vocab#",
      "gsp": "http://www.opengis.net/ont/geosparql#",
      "ical": "http://www.w3.org/2002/12/cal/ical#",
      "media": "http://search.yahoo.com/mrss/"
   },
   "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
   "@type": [
      "gj:Feature",
      "gsp:Feature",
      "eop:EarthObservation"
   ],
   "gj:bbox": {
      "@list": [
         -2.69574,
         61.965195,
         0.135472,
         63.261372
      ]
   },
   "gsp:hasGeometry": {
      "gsp:asWKT": "Polygon((-2.682513, 63.261372, -2.695740, 61.997604, 0.005087, 61.965195, 0.135472, 63.227173, -2.682513, 63.261372))",
      "@type": "gsp:Geometry"
   },
   "gj:geometry": {
      "@type": "gj:Polygon",
      "gj:coordinates": [
         -2.682513,
         63.261372,
         -2.69574,
         61.997604,
         0.005087,
         61.965195,
         0.135472,
         63.227173,
         -2.682513,
         63.261372
      ]
   },
   "gj:properties": {
      "@type": "gj:Properties",
      "dct:date": "1978-09-27T01:04:30Z/1978-09-27T01:04:45Z",
      "dct:modified": "2017-04-11T13:36:16Z",
      "dct:title": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "dct:identifier": "SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F",
      "eop:acquisitionInformation": {
         "@type": "eop:AcquisitionInformation",
         "eop:acquisitionParameters": {
           "@type": "eop:AcquisitionParameters",
           "eop:operationalMode": "IM",
           "eop:polarisationChannels": {
              "@id": "eop:PolarisationChannels/HH"
           },
           "eop:polarisationMode": {
              "@id": "eop:PolarisationMode/S"
           },
           "eop:acquisitionAngles": {
              "@type": "eop:AcquisitionAngles",
              "eop:incidenceAngleVariation": 9.6,
              "eop:maximumIncidenceAngle": 29.2,
              "eop:minimumIncidenceAngle": 19.6
           },
           "eop:acquisitionSubType": "DEFAULT",
           "eop:acquisitionType": {
              "@id": "eop:AcquisitionType/NOMINAL"
           },
           "eop:antennaLookDirection": {
              "@id": "eop:RIGHT"
           },
           "eop:orbitDirection": {
              "@id": "eop:DESCENDING"
           },
           "eop:orbitNumber": 1316,
           "eop:wrsLongitudeGrid": "0",
           "ical:dtend": "1978-09-27T01:04:45Z",
           "ical:dtstart": "1978-09-27T01:04:30Z"
         },
         "eop:instrument": {
           "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a37282d4-322c-4dd0-8edc-36099b9b586c",
           "@type": "eop:Instrument",
           "eop:instrumentShortName": "SAR",
           "eop:sensorType": {
              "@id": "eop:RADAR"
           }
         },
         "eop:platform": {
           "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/1bffe898-f4a2-458e-92c5-cd7c9c1cd5f0",
           "@type": "eop:Platform",
           "eop:platform": "Seasat",
           "eop:platformSerialIdentifier": "1"
         }
      },
      "eop:parentIdentifier": "SEA_GEC_1P",
      "eop:productInformation": {
         "@type": "eop:ProductInformation",
         "eop:availabilityTime": "2014-10-04T04:19:17Z",
         "eop:productType": "SEA_GEC_1P",
         "eop:referenceSystemIdentifier": "http://www.opengis.net.def/crs/EPSG/0/4326",
         "eop:size": 255211520
      },
      "eop:status": {
         "@id": "eop:ARCHIVED"
      },
      "owc:links": {
         "@type": "owc:Links",
         "iana:alternate": [
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Atom format",
              "atom:type": "application/atom+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=om10",
              "@type": "atom:link",
              "dct:title": "O&M metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=om",
              "@type": "atom:link",
              "dct:title": "O&M 1.1 metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "RDF/XML format",
              "atom:type": "application/rdf+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "JSON-LD format",
              "atom:type": "application/ld+json"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:OADS:SEA_GEC_1P&uid=SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Turtle format",
              "atom:type": "text/turtle"
           }
         ],
         "iana:enclosure": {
           "@id": "http://tpm-ds.eo.esa.int/products/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.ZIP",
           "@type": "atom:link",
           "dct:title": "Download",
           "atom:type": "application/x-binary"
         },
         "iana:icon": {
           "@id": "http://tpm-ds.eo.esa.int/metadata/SEA_GEC_1P/1978/09/27/SE1_OPER_SEA_GEC_1P_19780927T010430_19780927T010445_001316_0000_2267_9B4F.BI.PNG",
           "@type": "atom:link",
           "dct:title": "Quicklook",
           "atom:type": "image/png",
           "dct:conformsTo": "http://www.opengis.net.def/crs/EPSG/0/4326",
           "media:category": {
              "@id": "eop:QUICKLOOK",
              "@type": "media:Category"
           },
           "media:expression": "sample"
         },
         "iana:up": {
           "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=SEA_GEC_1P&recordSchema=iso",
           "@type": "atom:link",
           "dct:title": "Up",
           "atom:type": "application/atom+xml"
         }
      }
   }
}


D.1.2 Example 2: Landsat (Optical)

D.1.2.1 OGC 10-157r4

 


<?xml version="1.0" encoding="UTF-8"?>
<opt:EarthObservation xmlns:opt="http://www.opengis.net/opt/2.1" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:alt="http://www.opengis.net/alt/2.1" xmlns:atm="http://www.opengis.net/atm/2.1" xmlns:eop="http://www.opengis.net/eop/2.1" xmlns:lmb="http://www.opengis.net/lmb/2.1" xmlns:om="http://www.opengis.net/om/2.0" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:ows="http://www.opengis.net/ows/2.0" xmlns:sar="http://www.opengis.net/sar/2.1" xmlns:ssp="http://www.opengis.net/ssp/2.1" xmlns:stl="http://pisa.intecs.it/stl" xmlns:swe="http://www.opengis.net/swe/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" gml:id="ID_73e3e096-6446-4bc1-bc0e-12528b96d85a">
   <om:phenomenonTime>
      <gml:TimePeriod gml:id="tp_73e3e096-6446-4bc1-bc0e-12528b96d85a">
         <gml:beginPosition>2000-01-07T11:12:29Z</gml:beginPosition>
         <gml:endPosition>2000-01-07T11:12:58Z</gml:endPosition>
      </gml:TimePeriod>
   </om:phenomenonTime>
   <om:resultTime>
      <gml:TimeInstant gml:id="archivingdate_73e3e096-6446-4bc1-bc0e-12528b96d85a">
         <gml:timePosition>2000-01-07T11:12:58Z</gml:timePosition>
      </gml:TimeInstant>
   </om:resultTime>
   <om:procedure>
      <eop:EarthObservationEquipment gml:id="eoe_73e3e096-6446-4bc1-bc0e-12528b96d85a">
         <eop:platform>
           <eop:Platform>
              <eop:shortName>Landsat</eop:shortName>
              <eop:serialIdentifier>7</eop:serialIdentifier>
           </eop:Platform>
         </eop:platform>
         <eop:instrument>
           <eop:Instrument>
              <eop:shortName>ETM</eop:shortName>
           </eop:Instrument>
         </eop:instrument>
         <eop:sensor>
           <eop:Sensor>
              <eop:sensorType>OPTICAL</eop:sensorType>
              <eop:operationalMode codeSpace="urn:eop:PHR:sensorMode">IM</eop:operationalMode>
           </eop:Sensor>
         </eop:sensor>
         <eop:acquisitionParameters>
           <eop:Acquisition>
              <eop:orbitNumber>3886</eop:orbitNumber>
              <eop:orbitDirection>DESCENDING</eop:orbitDirection>
              <eop:wrsLongitudeGrid codeSpace="EPSG">205</eop:wrsLongitudeGrid>
              <eop:wrsLatitudeGrid codeSpace="EPSG">31</eop:wrsLatitudeGrid>
              <eop:illuminationAzimuthAngle uom="deg">157.128</eop:illuminationAzimuthAngle>
              <eop:illuminationZenithAngle uom="deg">67.5922</eop:illuminationZenithAngle>
              <eop:illuminationElevationAngle uom="deg">22.4078</eop:illuminationElevationAngle>
           </eop:Acquisition>
         </eop:acquisitionParameters>
      </eop:EarthObservationEquipment>
   </om:procedure>
   <om:observedProperty nilReason="inapplicable"/>
   <om:featureOfInterest>
      <eop:Footprint gml:id="fp_73e3e096-6446-4bc1-bc0e-12528b96d85a">
         <eop:multiExtentOf>
           <gml:MultiSurface gml:id="ms_73e3e096-6446-4bc1-bc0e-12528b96d85a" srsName="EPSG:4326">
              <gml:surfaceMembers>
                 <gml:Polygon gml:id="fppoly_73e3e096-6446-4bc1-bc0e-12528b96d85a">
                    <gml:exterior>
                       <gml:LinearRing>
                          <gml:posList>42.7054 -10.9168 42.7186 -8.19013 40.7994 -8.21391 40.7871 -10.8605 42.7054 -10.9168</gml:posList>
                       </gml:LinearRing>
                    </gml:exterior>
                 </gml:Polygon>
              </gml:surfaceMembers>
           </gml:MultiSurface>
         </eop:multiExtentOf>
      </eop:Footprint>
   </om:featureOfInterest>
   <om:result>
      <opt:EarthObservationResult gml:id="eor_73e3e096-6446-4bc1-bc0e-12528b96d85a">
         <eop:browse>
           <eop:BrowseInformation>
              <eop:type>QUICKLOOK</eop:type>
              <eop:referenceSystemIdentifier codeSpace="EPSG">epsg:4326</eop:referenceSystemIdentifier>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="http://landsat-ds.eo.esa.int/metadata/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.BP.PNG">
                    <ows:RequestMessage/>
                 </ows:ServiceReference>
              </eop:fileName>
           </eop:BrowseInformation>
         </eop:browse>
         <eop:browse>
           <eop:BrowseInformation>
              <eop:type>THUMBNAIL</eop:type>
              <eop:referenceSystemIdentifier codeSpace="EPSG">epsg:4326</eop:referenceSystemIdentifier>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="http://landsat-ds.eo.esa.int/metadata/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.JPG">
                    <ows:RequestMessage/>
                 </ows:ServiceReference>
              </eop:fileName>
            </eop:BrowseInformation>
         </eop:browse>
         <eop:product>
           <eop:ProductInformation>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="http://landsat-ds.eo.esa.int/products/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.ZIP">
                    <ows:RequestMessage/>
                 </ows:ServiceReference>
              </eop:fileName>
              <eop:version>1.0</eop:version>
              <eop:size uom="kb">165773162</eop:size>
           </eop:ProductInformation>
         </eop:product>
         <opt:cloudCoverPercentage uom="%">0</opt:cloudCoverPercentage>
      </opt:EarthObservationResult>
   </om:result>
   <eop:metaDataProperty>
      <eop:EarthObservationMetaData>
         <eop:identifier>LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261</eop:identifier>
         <eop:parentIdentifier>LANDSAT.ETM.GTC</eop:parentIdentifier>
         <eop:acquisitionType>NOMINAL</eop:acquisitionType>
         <eop:acquisitionSubType>DEFAULT</eop:acquisitionSubType>
         <eop:productType>ETM_GTC_1P</eop:productType>
         <eop:status>ARCHIVED</eop:status>
         <eop:productQualityDegradation uom="%">0</eop:productQualityDegradation>
         <eop:processing>
           <eop:ProcessingInformation>
              <eop:processingMode>NOMINAL</eop:processingMode>
           </eop:ProcessingInformation>
         </eop:processing>
      </eop:EarthObservationMetaData>
   </eop:metaDataProperty>
</opt:EarthObservation>
 


 

D.1.2.2 GeoJSON

 


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
   "bbox" : [ -10.9168, 40.7871, -8.19013, 42.7186 ],
   "geometry": {
      "type": "Polygon",
      "coordinates": [
         [
           [
              -10.9168,
              42.7054
           ],
           [
              -10.8605,
              40.7871
           ],
           [
              -8.21391,
              40.7994
           ],
           [
              -8.19013,
              42.7186
           ],
           [
              -10.9168,
              42.7054
           ]
         ]
      ]
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "LANDSAT.ETM.GTC",
      "title": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
      "identifier": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
      "date": "2000-01-07T11:12:29Z/2000-01-07T11:12:58Z",
      "updated": "2017-04-11T11:21:45Z",
      "links": {
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/atom+xml",
              "title": "Atom format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om10",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0",
              "title": "O&M metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1",
              "title": "O&M 1.1 metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/rdf+xml",
              "title": "RDF/XML format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/ld+json",
              "title": "JSON-LD format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "text/turtle",
              "title": "Turtle format"
           }
         ],
         "data": [
           {
              "href": "http://landsat-ds.eo.esa.int/products/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.ZIP",
              "type": "application/x-binary",
              "title": "Download"
           }
         ],
         "previews": [
           {
              "href": "http://landsat-ds.eo.esa.int/metadata/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.BP.PNG",
              "type": "image/png",
              "title": "Quicklook"
           }
         ],
         "up": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=LANDSAT.ETM.GTC&recordSchema=iso",
              "type": "application/atom+xml",
              "title": "Up"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/c7a09e9f-3c99-4b31-a521-313c379ba2b4",
              "platform": "Landsat",
              "platformSerialIdentifier": "7"
           },
           "instrument": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/4dbe7764-a2ea-4a19-b754-696c35ac3205",
              "instrumentShortName": "ETM",
               "sensorType": "OPTICAL"
           },
           "acquisitionParameters": {
              "operationalMode": "IM",
 
              "beginningDateTime": "2000-01-07T11:12:29Z",
              "endingDateTime": "2000-01-07T11:12:58Z",
              "orbitDirection": "DESCENDING",
              "orbitNumber": 3886,
              "acquisitionType": "NOMINAL",
              "acquisitionSubType": "DEFAULT",
              "wrsLongitudeGrid": "205",
              "wrsLatitudeGrid": "31"
           }
         }
      ],
      "productInformation": {
         "productType": "ETM_GTC_1P",
         "size": 165773162,
         "availabilityTime": "2000-01-07T11:12:58Z",
         "referenceSystemIdentifier": "epsg:4326",
         "cloudCover": 0
      }
   }
}


D.1.2.3 JSON-LD (Compacted)

 


{
   "@context": "http://schemas.opengis.net/eo-geojson/1.0/eo-geojson.jsonld",
 
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
   "geometry": {
      "type": "Polygon",
      "coordinates": [
         [
           [
              -10.9168,
              42.7054
           ],
           [
              -10.8605,
              40.7871
           ],
           [
              -8.21391,
              40.7994
           ],
           [
              -8.19013,
              42.7186
           ],
           [
              -10.9168,
              42.7054
           ]
         ]
      ]
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "LANDSAT.ETM.GTC",
      "title": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
      "identifier": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
 
      "date": "2000-01-07T11:12:29Z/2000-01-07T11:12:58Z",
      "updated": "2017-04-11T11:21:45Z",
      "links": {
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/atom+xml",
              "title": "Atom format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om10",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0",
              "title": "O&M metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1",
              "title": "O&M 1.1 metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/rdf+xml",
              "title": "RDF/XML format"
           },
            {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "application/ld+json",
              "title": "JSON-LD format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "type": "text/turtle",
              "title": "Turtle format"
           }
         ],
         "data": [
           {
              "href": "http://landsat-ds.eo.esa.int/products/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.ZIP",
              "type": "application/x-binary",
              "title": "Download"
           }
         ],
         "previews": [
           {
              "href": "http://landsat-ds.eo.esa.int/metadata/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.BP.PNG",
              "type": "image/png",
              "title": "Quicklook"
           }
         ],
         "up": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=LANDSAT.ETM.GTC&recordSchema=iso",
              "type": "application/atom+xml",
              "title": "Up"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/c7a09e9f-3c99-4b31-a521-313c379ba2b4",
              "platformShortName": "Landsat",
              "platformSerialIdentifier": "7"
           },
           "instrument": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/4dbe7764-a2ea-4a19-b754-696c35ac3205",
              "instrumentShortName": "ETM",
               "sensorType": "OPTICAL"
           },
           "acquisitionParameters": {
              "operationalMode": "IM",
              "beginningDateTime": "2000-01-07T11:12:29Z",
              "endingDateTime": "2000-01-07T11:12:58Z",
              "orbitDirection": "DESCENDING",
              "orbitNumber": 3886,
              "acquisitionType": "NOMINAL",
              "acquisitionSubType": "DEFAULT",
              "wrsLongitudeGrid": "205",
              "wrsLatitudeGrid": "31"
           }
         }
      ],
      "productInformation": {
         "productType": "ETM_GTC_1P",
         "size": 165773162,
         "availabilityTime": "2000-01-07T11:12:58Z",
         "referenceSystemIdentifier": "epsg:4326",
         "cloudCover": 0
      }
   }
}


D.1.2.4 JSON-LD (Expanded)

 


{
   "@context": {
      "eop": "http://www.opengis.net/ont/eo-geojson/1.0/",
      "xsd": "http://www.w3.org/2001/XMLSchema#",
      "dct": "http://purl.org/dc/terms/",
      "atom": "http://www.w3.org/2005/Atom/",
      "iana": "http://www.iana.org/assignments/relation/",
      "owc": "http://www.opengis.net/ont/owc/1.0/",
      "gj": "https://purl.org/geojson/vocab#",
      "gsp": "http://www.opengis.net/ont/geosparql#",
      "ical": "http://www.w3.org/2002/12/cal/ical#",
      "media": "http://search.yahoo.com/mrss/"
   },
   "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
   "@type": [
      "gj:Feature",
      "eop:EarthObservation"
   ],
   "gj:geometry": {
      "@type": "gj:Polygon",
      "gj:coordinates": [
         -8.19013,
         42.7186,
         -8.21391,
         40.7994,
         -10.8605,
         40.7871,
         -10.9168,
         42.7054,
         -10.9168,
         42.7054
      ]
   },
   "gj:properties": {
      "@type": "gj:Properties",
      "dct:date": "2000-01-07T11:12:29Z/2000-01-07T11:12:58Z",
      "dct:modified": "2017-04-11T11:21:45Z",
      "dct:title": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
      "dct:identifier": "LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261",
      "eop:acquisitionInformation": {
         "@type": "eop:AcquisitionInformation",
         "eop:acquisitionParameters": {
           "eop:operationalMode": "IM",
 
           "@type": "eop:AcquisitionParameters",
           "eop:acquisitionSubType": "DEFAULT",
           "eop:acquisitionType": {
              "@id": "eop:AcquisitionType/NOMINAL"
           },
           "eop:wrsLatitudeGrid": "31",
           "eop:orbitDirection": {
              "@id": "eop:DESCENDING"
           },
           "eop:orbitNumber": 3886,
           "eop:wrsLongitudeGrid": "205",
           "ical:dtend": "2000-01-07T11:12:58Z",
           "ical:dtstart": "2000-01-07T11:12:29Z"
         },
         "eop:instrument": {
           "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/4dbe7764-a2ea-4a19-b754-696c35ac3205",
           "@type": "eop:Instrument",
           "eop:instrumentShortName": "ETM",
           "eop:sensorType": {
              "@id": "eop:OPTICAL"
           }
         },
         "eop:platform": {
           "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/c7a09e9f-3c99-4b31-a521-313c379ba2b4",
           "@type": "eop:Platform",
           "eop:platform": "Landsat",
           "eop:platformSerialIdentifier": "7"
         }
      },
      "eop:parentIdentifier": "LANDSAT.ETM.GTC",
      "eop:productInformation": {
         "@type": "eop:ProductInformation",
         "eop:availabilityTime": "2000-01-07T11:12:58Z",
         "eop:productType": "ETM_GTC_1P",
         "eop:referenceSystemIdentifier": "http://www.opengis.net.def/crs/EPSG/0/4326",
         "eop:size": 165773162,
         "eop:cloudCover": 0
      },
      "eop:status": {
         "@id": "eop:ARCHIVED"
      },
      "owc:links": {
         "@type": "owc:Links",
         "iana:alternate": [
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Atom format",
              "atom:type": "application/atom+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om10",
              "@type": "atom:link",
              "dct:title": "O&M metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=om",
              "@type": "atom:link",
              "dct:title": "O&M 1.1 metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "RDF/XML format",
              "atom:type": "application/rdf+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "JSON-LD format",
              "atom:type": "application/ld+json"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:OADS:LANDSAT.ETM.GTC&uid=LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Turtle format",
              "atom:type": "text/turtle"
           }
         ],
         "iana:enclosure": {
           "@id": "http://landsat-ds.eo.esa.int/products/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.ZIP",
           "@type": "atom:link",
           "dct:title": "Download",
           "atom:type": "application/x-binary"
         },
         "iana:icon": {
           "@id": "http://landsat-ds.eo.esa.int/metadata/LANDSAT_ETM/2000/01/07/LS07_RMPS_ETM_GTC_1P_20000107T111229_20000107T111258_003886_0205_0031_9261.BP.PNG",
           "@type": "atom:link",
           "dct:title": "Quicklook",
           "atom:type": "image/png",
           "media:category": {
              "@id": "eop:QUICKLOOK",
              "@type": "media:Category"
           }
         },
         "iana:up": {
           "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=LANDSAT.ETM.GTC&recordSchema=iso",
           "@type": "atom:link",
           "dct:title": "Up",
           "atom:type": "application/atom+xml"
         }
      }
   }
}


 

D.1.3 Example 3:  Cryosat-2 (Altimetric)

D.1.3.1 OGC 10-157r4

 


 <?xml version="1.0" encoding="UTF-8"?>
<alt:EarthObservation xmlns:alt="http://www.opengis.net/alt/2.1"
 xmlns:gml="http://www.opengis.net/gml/3.2"
 xmlns:atom="http://www.w3.org/2005/Atom"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:eo="http://a9.com/-/opensearch/extensions/eo/1.0/"
 xmlns:eop="http://www.opengis.net/eop/2.1"
 xmlns:fo="http://www.w3.org/1999/XSL/Format"
 xmlns:geo="http://a9.com/-/opensearch/extensions/geo/1.0/"
 xmlns:georss="http://www.georss.org/georss"
 xmlns:om="http://www.opengis.net/om/2.0"
 xmlns:os="http://a9.com/-/spec/opensearch/1.1/"
 xmlns:ows="http://www.opengis.net/ows/2.0"
 xmlns:semantic="http://a9.com/-/opensearch/extensions/semantic/1.0/"
 xmlns:sru="http://a9.com/-/opensearch/extensions/sru/2.0/"
 xmlns:swe="http://www.opengis.net/swe/1.0"
 xmlns:time="http://a9.com/-/opensearch/extensions/time/1.0/"
 xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_1">
   <om:phenomenonTime>
      <gml:TimePeriod gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_2">
         <gml:beginPosition>2010-07-22T12:05:23Z</gml:beginPosition>
         <gml:endPosition>2010-07-22T13:44:36Z</gml:endPosition>
      </gml:TimePeriod>
   </om:phenomenonTime>
   <om:resultTime>
      <gml:TimeInstant gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_3">
         <gml:timePosition>2016-03-09T16:39:40Z</gml:timePosition>
      </gml:TimeInstant>
   </om:resultTime>
   <om:procedure>
      <alt:EarthObservationEquipment gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_4">
         <eop:platform>
           <eop:Platform>
              <eop:shortName>Cryosat</eop:shortName>
              <eop:serialIdentifier>2</eop:serialIdentifier>
           </eop:Platform>
         </eop:platform>
         <eop:instrument>
           <eop:Instrument>
              <eop:shortName>SIRAL</eop:shortName>
           </eop:Instrument>
         </eop:instrument>
         <eop:sensor>
           <eop:Sensor>
              <eop:sensorType>ALTIMETRIC</eop:sensorType>
              <eop:operationalMode/>
           </eop:Sensor>
         </eop:sensor>
         <eop:acquisitionParameters>
           <alt:Acquisition>
              <eop:orbitNumber>001523</eop:orbitNumber>
              <eop:lastOrbitNumber>001523</eop:lastOrbitNumber>
              <eop:orbitDirection>ASCENDING</eop:orbitDirection>
              <eop:ascendingNodeDate>2010-07-22T12:04:49Z</eop:ascendingNodeDate>
              <eop:ascendingNodeLongitude uom="deg">-169.101978</eop:ascendingNodeLongitude>
              <eop:startTimeFromAscendingNode uom="ms">0000.761548</eop:startTimeFromAscendingNode>
              <eop:completionTimeFromAscendingNode uom="ms">5953.440918</eop:completionTimeFromAscendingNode>
           </alt:Acquisition>
         </eop:acquisitionParameters>
      </alt:EarthObservationEquipment>
   </om:procedure>
   <om:observedProperty nilReason="inapplicable" xsi:nil="true"/>
   <om:featureOfInterest>
      <alt:Footprint gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_5">
         <eop:multiExtentOf/>
         <alt:nominalTrack>
           <gml:MultiCurve gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_6">
              <gml:curveMember>
                 <gml:LineString gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_7" srsName="EPSG:4326">
                    <gml:posList>0.046332 -169.106794 -0.004573 166.040236</gml:posList>
                 </gml:LineString>
              </gml:curveMember>
           </gml:MultiCurve>
         </alt:nominalTrack>
      </alt:Footprint>
   </om:featureOfInterest>
   <om:result>
      <eop:EarthObservationResult gml:id="CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001_8">
         <eop:product>
           <eop:ProductInformation>
              <eop:fileName>
                 <ows:ServiceReference xlink:href="ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.DBL">
                    <ows:RequestMessage xlmns="http://www.opengis.net/ows/2.0"/>
                 </ows:ServiceReference>
              </eop:fileName>
              <eop:version>C001</eop:version>
              <eop:size uom="bytes">000000000000008612306</eop:size>
           </eop:ProductInformation>
         </eop:product>
      </eop:EarthObservationResult>
   </om:result>
   <eop:metaDataProperty>
      <eop:EarthObservationMetaData>
         <eop:identifier>CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001</eop:identifier>
         <eop:parentIdentifier>CR2_SIR</eop:parentIdentifier>
         <eop:acquisitionType>NOMINAL</eop:acquisitionType>
         <eop:productType>SIR_GDR_2_</eop:productType>
         <eop:status>ARCHIVED</eop:status>
         <eop:downlinkedTo>
           <eop:DownlinkInformation>
              <eop:acquisitionStation>KS</eop:acquisitionStation>
           </eop:DownlinkInformation>
         </eop:downlinkedTo>
         <eop:productQualityDegradationQuotationMode>AUTOMATIC</eop:productQualityDegradationQuotationMode>
         <eop:productQualityStatus>DEGRADED</eop:productQualityStatus>
         <eop:productQualityReportURL>CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.QR.XML</eop:productQualityReportURL>
         <eop:processing>
           <alt:ProcessingInformation>
              <eop:processingCenter>PDS</eop:processingCenter>
              <eop:processingDate>2016-03-09T16:39:40Z</eop:processingDate>
              <eop:processorVersion>3.1</eop:processorVersion>
              <eop:shortName>2</eop:shortName>
           </alt:ProcessingInformation>
         </eop:processing>
         <eop:vendorSpecific>
           <eop:SpecificInformation>
              <eop:localAttribute>missionPhase</eop:localAttribute>
               <eop:localValue>1</eop:localValue>
           </eop:SpecificInformation>
         </eop:vendorSpecific>
      </eop:EarthObservationMetaData>
   </eop:metaDataProperty>
</alt:EarthObservation>


 

D.1.3.2 GeoJSON

 


{
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR
          &uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
   "bbox": [
      -0.004573,
      -169.106794,
      0.046332,
      166.040236
   ],
   "geometry": {
      "type": "LineString",
      "coordinates": [
         [
           -169.106794,
           0.046332
         ],
         [
           166.040236,
           -0.004573
         ]
      ]
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "CR2_SIR",
      "title": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "identifier": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "date": "2010-07-22T12:05:23Z/2010-07-22T13:44:36Z",
      "updated": "2017-04-11T14:37:41Z",
      "links": {
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/atom+xml",
              "title": "Atom format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om10",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0",
              "title": "O&M metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1",
              "title": "O&M 1.1 metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/rdf+xml",
              "title": "RDF/XML format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/ld+json",
              "title": "JSON-LD format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "text/turtle",
              "title": "Turtle format"
           }
         ],
         "data": [
           {
              "href": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.DBL",
              "type": "application/x-binary",
              "title": "Download"
           }
         ],
         "via": [
           {
              "href": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.HDR",
              "type": "application/xml",
              "title": "Via"
           }
         ],
         "up": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=CR2_SIR&recordSchema=iso",
              "type": "application/atom+xml",
              "title": "Up"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a915ab2f-46c5-493b-9f18-aeb3383ee72b",
              "platformShortName": "Cryosat",
              "platformSerialIdentifier": "2"
           },
           "instrument": {
               "id": "https://gcmdservices.gsfc.nasa.gov/kms/concept/30787b9f-a407-47a5-b69b-5b9e1d1b1144",
              "instrumentShortName": "SIRAL",
              "sensorType": "ALTIMETRIC"
           },
           "acquisitionParameters": {
              "operationalMode": "",
              "beginningDateTime": "2010-07-22T12:05:23Z",
              "endingDateTime": "2010-07-22T13:44:36Z",
              "orbitDirection": "ASCENDING",
              "orbitNumber": 1523,
              "lastOrbitNumber": 1523,
              "ascendingNodeDate": "2010-07-22T12:04:49Z",
              "ascendingNodeLongitude": -169.101978,
              "acquisitionType": "NOMINAL",
              "startTimeFromAscendingNode": 761,
              "completionTimeFromAscendingNode": 5953440,
              "acquisitionStation": "KS"
           }
         }
      ],
      "productInformation": {
         "productType": "SIR_GDR_2_",
         "size": 8612306,
         "availabilityTime": "2016-03-09T16:39:40Z",
         "version": "C001",
         "processingCenter": "PDS",
         "processingDate": "2016-03-09T16:39:40Z",
         "processorVersion": "3.1",
         "qualityInformation": {
           "qualityStatus": "DEGRADED"
         }
      }
   }
}


 

D.1.3.3 JSON-LD (Compacted)

 


{
 
   "@context": "http://schemas.opengis.net/eo-geojson/1.0/eo-geojson.jsonld",
  
   "type": "Feature",
   "id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
   "bbox": [
      -0.004573,
      -169.106794,
      0.046332,
      166.040236
   ],
   "geometry": {
      "type": "LineString",
      "coordinates": [
         [
           -169.106794,
           0.046332
         ],
         [
           166.040236,
           -0.004573
         ]
      ]
   },
   "properties": {
      "status": "ARCHIVED",
      "parentIdentifier": "CR2_SIR",
      "title": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "identifier": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "date": "2010-07-22T12:05:23Z/2010-07-22T13:44:36Z",
      "updated": "2017-04-11T14:37:41Z",
      "links": {
         "alternates": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/atom+xml",
              "title": "Atom format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om10",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0",
              "title": "O&M metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om",
              "type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1",
              "title": "O&M 1.1 metadata"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/rdf+xml",
              "title": "RDF/XML format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "application/ld+json",
              "title": "JSON-LD format"
           },
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "type": "text/turtle",
              "title": "Turtle format"
           }
         ],
         "data": [
           {
              "href": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.DBL",
              "type": "application/x-binary",
              "title": "Download"
           }
         ],
         "via": [
           {
              "href": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.HDR",
              "type": "application/xml",
              "title": "Via"
           }
         ],
         "up": [
           {
              "href": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=CR2_SIR&recordSchema=iso",
              "type": "application/atom+xml",
              "title": "Up"
           }
         ]
      },
      "acquisitionInformation": [
         {
           "platform": {
               "id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a915ab2f-46c5-493b-9f18-aeb3383ee72b",
              "platformShortName": "Cryosat",
              "platformSerialIdentifier": "2"
           },
           "instrument": {
               "id": "https://gcmdservices.gsfc.nasa.gov/kms/concept/30787b9f-a407-47a5-b69b-5b9e1d1b1144",
              "instrumentShortName": "SIRAL",
              "sensorType": "ALTIMETRIC"
           },
           "acquisitionParameters": {
              "operationalMode": "",
              "beginningDateTime": "2010-07-22T12:05:23Z",
              "endingDateTime": "2010-07-22T13:44:36Z",
              "orbitDirection": "ASCENDING",
              "orbitNumber": 1523,
              "lastOrbitNumber": 1523,
              "ascendingNodeDate": "2010-07-22T12:04:49Z",
              "ascendingNodeLongitude": -169.101978,
              "acquisitionType": "NOMINAL",
              "startTimeFromAscendingNode": 761548,
              "completionTimeFromAscendingNode": 5953,
              "acquisitionStation": "KS"
           }
         }
      ],
      "productInformation": {
         "productType": "SIR_GDR_2_",
         "size": 8612306,
         "availabilityTime": "2016-03-09T16:39:40Z",
         "version": "C001",
         "processingCenter": "PDS",
         "processingDate": "2016-03-09T16:39:40Z",
         "processorVersion": "3.1",
         "qualityInformation": {
           "qualityStatus": "DEGRADED"
         }
      }
   }
}


 

D.1.3.4 JSON-LD (Expanded)

 


{
   "@context": {
      "eop": "http://www.opengis.net/ont/eo-geojson/1.0/",
      "xsd": "http://www.w3.org/2001/XMLSchema#",
      "dct": "http://purl.org/dc/terms/",
      "atom": "http://www.w3.org/2005/Atom/",
      "iana": "http://www.iana.org/assignments/relation/",
      "owc": "http://www.opengis.net/ont/owc/1.0/",
      "gj": "https://purl.org/geojson/vocab#",
      "gsp": "http://www.opengis.net/ont/geosparql#",
      "ical": "http://www.w3.org/2002/12/cal/ical#",
      "media": "http://search.yahoo.com/mrss/"
   },
   "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/geo%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
   "@type": [
      "gj:Feature",
      "eop:EarthObservation"
   ],
   "gj:bbox": {
      "@list": [
         -0.004573,
         -169.106794,
         0.046332,
         166.040236
      ]
   },
   "gj:geometry": {
      "@type": "gj:LineString",
      "gj:coordinates": [
         -169.106794,
         0.046332,
         166.040236,
         -0.004573
      ]
   },
   "gj:properties": {
      "@type": "gj:Properties",
      "dct:date": "2010-07-22T12:05:23Z/2010-07-22T13:44:36Z",
      "dct:modified": "2017-04-11T14:37:41Z",
      "dct:title": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "dct:identifier": "CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001",
      "eop:acquisitionInformation": {
         "@type": "eop:AcquisitionInformation",
         "eop:acquisitionParameters": {
           "@type": "eop:AcquisitionParameters",
           "eop:operationalMode": "",
           "eop:acquisitionStation": "KS",
           "acquisitionType": {
              "@id": "eop:AcquisitionType/NOMINAL"
           },
           "eop:ascendingNodeDate": "2010-07-22T12:04:49Z",
           "eop:ascendingNodeLongitude": -169.101978,
           "eop:completionTimeFromAscendingNode": "5953.440918",
           "eop:lastOrbitNumber": 1523,
           "eop:orbitDirection": {
              "@id": "eop:ASCENDING"
           },
           "eop:orbitNumber": 1523,
           "eop:startTimeFromAscendingNode": "0000.761548",
           "ical:dtend": "2010-07-22T13:44:36Z",
           "ical:dtstart": "2010-07-22T12:05:23Z"
         },
         "eop:instrument": {
           "@type": "eop:Instrument",
           "@id": "https://gcmdservices.gsfc.nasa.gov/kms/concept/30787b9f-a407-47a5-b69b-5b9e1d1b1144",
           "eop:instrumentShortName": "SIRAL",
           "eop:sensorType": {
              "@id": "eop:ALTIMETRIC"
           }
         },
         "eop:platform": {
           "@id": "http://gcmdservices.gsfc.nasa.gov/kms/concept/a915ab2f-46c5-493b-9f18-aeb3383ee72b",
           "@type": "eop:Platform",
           "eop:platformShortName": "Cryosat",
           "eop:platformSerialIdentifier": "2"
         }
      },
      "eop:parentIdentifier": "CR2_SIR",
      "eop:productInformation": {
         "@type": "eop:ProductInformation",
         "eop:availabilityTime": "2016-03-09T16:39:40Z",
         "eop:processingCenter": "PDS",
         "eop:processingDate": "2016-03-09T16:39:40Z",
         "eop:processorVersion": "3.1",
         "eop:productType": "SIR_GDR_2_",
         "eop:qualityInformation": {
           "eop:qualityStatus": "DEGRADED"
         },
         "eop:size": 8612306,
         "eop:version": "C001"
      },
      "eop:status": {
         "@id": "eop:ARCHIVED"
      },
      "owc:links": {
         "@type": "owc:Links",
         "iana:alternate": [
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Atom format",
              "atom:type": "application/atom+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om10",
              "@type": "atom:link",
              "dct:title": "O&M metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.0"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/gml%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=om",
              "@type": "atom:link",
              "dct:title": "O&M 1.1 metadata",
              "atom:type": "application/gml+xml;profile=http://www.opengis.net/spec/EOMPOM/1.1"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/rdf%2Bxml&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "RDF/XML format",
              "atom:type": "application/rdf+xml"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/ld%2Bjson&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "JSON-LD format",
              "atom:type": "application/ld+json"
           },
           {
              "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=text/turtle&parentIdentifier=EOP:ESA:CRYOSAT:CR2_SIR&uid=CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001&recordSchema=server-choice",
              "@type": "atom:link",
              "dct:title": "Turtle format",
              "atom:type": "text/turtle"
           }
         ],
         "iana:enclosure": {
           "@id": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.DBL",
           "@type": "atom:link",
           "dct:title": "Download",
           "atom:type": "application/x-binary"
         },
         "iana:up": {
           "@id": "http://fedeo.esa.int/opensearch/request/?httpAccept=application/atom%2Bxml&uid=CR2_SIR&recordSchema=iso",
           "@type": "atom:link",
           "dct:title": "Up",
           "atom:type": "application/atom+xml"
         },
         "iana:via": {
           "@id": "ftp://science-pds.cryosat.esa.int//SIR_GDR/2010/07/CS_LTA__SIR_GDR_2__20100722T120449_20100722T134403_C001.HDR",
           "@type": "atom:link",
           "dct:title": "Via",
           "atom:type": "application/xml"
         }
      }
   }
}


 

Annex E:    GeoJSON Schemas (Normative)

E.1 Schemas for EO GeoJSON validation

JSON Schema [OR18] representation (Draft 04) is used to define the schemas.  This specification is supported by several tools (including Altova XML Spy 2016, JSONBuddy 3.5 and also Web-based tools[21]) and is also used to define data types in the OpenAPI specification[22].  It does not allow to easily model composition of schemas or inheritance without relaxing the schemas.  Therefore, the property "additionalProperties" is set to true in some schema definitions to allow using the "allOf" operator to model inheritance.  A future version v5 of JSON Schema is expected to propose a $merge operator to better support this.  Other schema languages (e.g. SJOT[23]) have better support for this, but have less tool support.

The schemas below assume that numbers are not surrounded by double quotes as per the JSON Style Guidelines [OR16].

The file is available at http://schemas.opengis.net/eo-geojson/1.0/eo-geojson-schema.json (See Annex E:).


{
   "$schema": "http://json-schema.org/draft-04/schema#",
   "title": "GeoJSON encoding of OGC 17-003 Earth Observation Metadata",
   "description": "Definition of EO Dataset document.  Note that numbers in the instance should not be surrounded by double-quotes to validate against this schema.",
   "$ref": "#/definitions/EarthObservation",
   "definitions": {


 

E.1.1 Definitions/MetadataInformation

  


"MetadataInformation": {
         "description": "Subset of Properties",
         "type": "object",
         "properties": {
           "lang": {
              "description": "RFC3066",
              "type": "string",
              "minLength": 2,
              "maxLength": 3
           },
           "updated": {
              "type": "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})$",
              "format": "date-time"
           },
           "published": {
              "type": "string",
              "format": "date-time"
           },
           "creationDate": {
              "type": "string",
              "format": "date-time"
           }
         },
         "required": [
           "updated"
         ]
      },


E.1.2 Definitions/DataIdentification

 


      "DataIdentification": {
         "description": "Subset of Properties",
         "type": "object",
         "properties": {
           "parentIdentifier": {
              "type": "string"
           },
           "doi": {
              "type": "string"
           },
           "title": {
              "type": "string"
           },
           "identifier": {
              "type": "string"
           },
           "date": {
              "type": "string"
           },
           "created": {
              "type": "string",     
              "format": "date-time"
           },
           "available": {
              "type": "string"
           },
           "additionalAttributes": {
              "type": "object",
              "minProperties": 1
           }
         },
         "required": [
           "title",
           "identifier",
           "date"
         ]
      },


 

E.1.3 Definitions/ProcessingInformation

 


      "ProcessingInformation": {
         "description": "Subset of ProductInformation",
         "type": "object",
         "properties": {
           "processingLevel": {
              "type": "string",
              "enum": [
                 "1A",
                 "1B",
                 "1C",
                 "2",
                 "3"
              ]
           },
           "processorName": {
              "type": "string"
           },
           "processorVersion": {
              "type": "string"
           },
           "processingCenter": {
              "description": "Codelist",
              "type": "string"
           },
           "processingDate": {
              "type": "string",
              "format": "date-time"
           },
           "processingMode": {
              "description": "Codelist",
              "type": "string"
           },
           "compositeType": {
              "type": "string"
           },
           "format": {
              "type": "string"
           },
           "productContentsType": {
              "type": "string"
           },
           "processingMethod": {
              "type": "string"
           },
           "processingMethodVersion": {
              "type": "string"
           }
         }
      },


 

E.1.4 Definitions/Links

 


      "Links": {
         "title": "Links",
         "description": "Objects with Links grouped by \"relation\" (i.e. Atom \"rel\" attribute).",
         "type": "object",
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "Links"
              ]
           },
           "qualityReport": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "previews": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "via": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "data": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "up": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "related": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           },
           "alternates": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Link"
              }
           }
         }
      },


 

E.1.5 Definitions/Properties

 


      "Properties": {
         "title": "Properties",
         "type": "object",
         "allOf": [
           {
              "type": "object",
              "properties": {
                 "type": {
                    "type": "string",
                    "enum": [
                       "Properties"
                    ]
                 },
                 "status": {
                    "type": "string",
                    "enum": [
                       "ARCHIVED",
                       "PLANNED",
                       "ACQUIRED",
                       "CANCELLED",
                       "FAILED",
                       "POTENTIAL",
                       "REJECTED",
                       "QUALITYDEGRADED"
                    ]
                 },
                 "acquisitionInformation": {
                    "type": "array",
                    "items": {
                       "$ref": "#/definitions/AcquisitionInformation"
                    }
                 },
                 "productInformation": {
                    "$ref": "#/definitions/ProductInformation"
                 },
                 "links": {
                    "$ref": "#/definitions/Links"
                 },
                 "offerings": {
                    "description": "OGC 14-055r2",
                    "type": "array",
                    "items": {
                       "$ref": "http://schemas.opengis.net/eo-geojson/1.0/owc-geojson-schema.json#/definitions/Offering"
                    }
                 }
              },
              "required": [
                 "status",
                 "acquisitionInformation",
                 "links"
              ]
           },
           {
              "$ref": "#/definitions/DataIdentification"
           },
           {
              "$ref": "#/definitions/MetadataInformation"
           }
         ]
      },


 

E.1.6 Definitions/EarthObservation

 


      "EarthObservation": {
         "description": "GeoJSON Feature",
         "type": "object",
         "properties": {
           "@context": {
              "type": "string"
           },
           "type": {
              "title": "type",
              "type": "string",
              "enum": [
                 "Feature"
              ]
           },
           "id": {
              "type": "string",
              "format": "uri"
           },
           "geometry": {
              "oneOf": [
                 {
                    "$ref": "http://schemas.opengis.net/eo-geojson/1.0/owc-geojson-schema.json#/definitions/Geometry"
                 },
                 {
                    "type": "null"
                 }
              ]
           },
           "properties": {
              "$ref": "#/definitions/Properties"
           },
           "bbox": {
              "type": "array",
              "minItems": 4,
              "maxItems": 4,
              "items": {
                 "type": "number"
              }
           }
         },
         "required": [
           "type",
           "id",
           "geometry",
           "properties"
         ],
         "additionalProperties": false
      },


 

E.1.7 Definitions/Platform

 


      "Platform": {
         "type": "object",
         "minProperties": 1,
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "Platform"
              ]
           },
           "id": {
              "type": "string",
              "format": "uri"
           },
           "platformShortName": {
              "type": "string"
           },
           "platformSerialIdentifier": {
              "type": "string"
           },
           "orbitType": {
              "type": "string",
              "enum": [
                 "GEO",
                 "LEO"
              ]
           }
         },
         "required": [
           "platformShortName"
         ],
         "additionalProperties": false
      },


 

E.1.8 Definitions/Instrument

 


      "Instrument": {
         "type": "object",
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "Instrument"
              ]
           },
           "id": {
              "type": "string",
              "format": "uri"
           },
           "sensorType": {
              "type": "string",
              "enum": [
                 "OPTICAL",
                 "RADAR",
                 "ATMOSPHERIC",
                 "ALTIMETRIC",
                 "LIMB"
              ]
           },
           "instrumentShortName": {
              "type": "string"
           },
           "description": {
              "type": "string"
           }
         },
         "required": [
           "instrumentShortName"
         ],
         "additionalProperties": false
      },


 

E.1.9 Definitions/AcquisitionParameters

 


      "AcquisitionParameters": {
         "type": "object",
         "allOf": [
           {
              "type": "object",
              "properties": {
                 "acquisitionType": {
                    "type": "string",
                    "enum": [
                       "NOMINAL",
                       "CALIBRATION",
                       "OTHER"
                    ]
                 },
                 "acquisitionSubType": {
                    "type": "string"
                 },
                 "startTimeFromAscendingNode": {
                    "type": "integer",
                    "minimum": 0
                 },
                 "completionTimeFromAscendingNode": {
                    "type": "integer",
                    "minimum": 0
                 },
                 "relativeOrbitNumber": {
                    "type": "integer"
                 },
                 "wrsLongitude": {
                    "type": "string"
                 },
                 "wrsLatitude": {
                    "type": "string"
                 },
                 "tileId": {
                    "type": "string"
                 },
                 "groundTrackUncertainty": {
                    "type": "number"
                 },
                 "cycleNumber": {
                    "type": "integer",
                    "minimum": 0
                 },
                 "antennaLookDirection": {
                    "type": "string",
                    "enum": [
                       "LEFT",
                       "RIGHT"
                    ]
                 },
                 "acquisitionStation": {
                    "type": "string"
                 },
                 "acquisitionAngles": {
                    "$ref": "#/definitions/AcquisitionAngles"
                 },
   "operationalMode": {
              "type": "string"
           },
           "swathIdentifier": {
              "type": "string"
           },
           "polarisationMode": {
              "description": "Sar",
              "type": "string",
              "enum": [
                 "S",
                 "D",
                 "T",
                 "Q",
                 "UNDEFINED"
              ]
           },
           "polarisationChannels": {
              "description": "Sar",
              "type": "string"
           },
           "resolution": {
              "type": "number"
           },
           "verticalResolution": {
              "description": "Atm, Lmb",
              "type": "number"
           },
           "waveLengths": {
              "type": "array",
              "minItems": 1,
              "items": {
                 "$ref": "#/definitions/WavelengthInformation"
              }
           },
           "measurementType": {
              "type": "string",
              "enum": [
                 "ABSORPTION",
                 "EMISSION"
              ]
           },
           "dopplerFrequency": {
              "description": "Sar",
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true
           },
           "samplingRates": {
              "description": "Alt",
              "type": "array",
              "items": {
                 "type": "number",
                 "minimum": 0,
                 "exclusiveMinimum": true
              }
           }
              },
              "required": [
                 "acquisitionType"
              ]
           },
           {
              "$ref": "#/definitions/TemporalInformation"
           },
           {
              "$ref": "#/definitions/VerticalSpatialDomain"
           },
           {
              "$ref": "#/definitions/OrbitParameters"
           }
         ]
      },


 

E.1.10 Definitions/Link

 


      "Link": {
         "type": "object",
         "properties": {
           "href": {
              "type": "string",
              "format": "uri"
           },
           "type": {
              "type": "string"
           },
           "title": {
              "type": "string"
           },
           "length": {
              "type": "integer",
              "minimum": 0
           },
           "category": {
              "description": "Media category property defined by MediaRSS.",
              "type": "string",
              "enum": [
                 "THUMBNAIL",
                 "QUICKLOOK",
                 "ALBUM",
                 "CLOUD",
                 "SNOW",
                 "QUALITY"
              ]
           },
           "expression": {
              "description": "Media expression property defined by MediaRSS.",
              "type": "string",
              "enum": [
                 "full",
                 "sample"
              ]
           },
           "conformsTo": {
              "type": "string",
              "format": "uri"
           }
         },
         "required": [
           "href"
         ],
         "additionalProperties": false
      },


 

E.1.11 Definitions/ProductInformation

 


      "ProductInformation": {
         "type": "object",
         "allOf": [
           {
              "type": "object",
              "properties": {
                 "type": {
                    "type": "string",
                    "enum": [
                      "ProductInformation"
                    ]
                 },
                 "productType": {
                    "type": "string"
                 },
                 "size": {
                    "type": "integer"
                 },
                 "productVersion": {
                    "type": "string"
                 },
                 "statusSubType": {
                    "type": "string",
                    "enum": [
                       "ON-LINE",
                       "OFF-LINE"
                    ]
                 },
                 "qualityInformation": {
                    "$ref": "#/definitions/QualityInformation"
                 },
                 "statusDetail": {
                    "type": "string"
                 },
                 "availabilityTime": {
                    "type": "string",
                    "format": "date-time"
                 },
                 "timeliness": {
                    "type": "string"
                 },
                 "productGroupId": {
                    "type": "string"
                 },
                 "archivingCenter": {
                    "type": "string"
                 },
                 "referenceSystemIdentifier": {
                    "type": "string"
                 },
                 "archivingDate": {
                    "type": "string",
                    "format": "date-time"
                 }
              },
              "required": [
                 "availabilityTime"
              ]
           },
           {
              "$ref": "#/definitions/ProcessingInformation"
           },
           {
              "$ref": "#/definitions/CoverageDescription"
           }
         ]
      },


 

E.1.12 Definitions/AcquisitionAngles

 


      "AcquisitionAngles": {
         "type": "object",
         "properties": {
           "illuminationAzimuthAngle": {
              "type": "number"
           },
           "illuminationZenithAngle": {
              "type": "number"
           },
           "illuminationElevationAngle": {
              "type": "number"
           },
           "incidenceAngle": {
              "type": "number"
           },
           "minimumIncidenceAngle": {
              "type": "number"
           },
           "maximumIncidenceAngle": {
              "type": "number"
           },
           "incidenceAngleVariation": {
              "type": "number"
           },
           "acrossTrackIncidenceAngle": {
              "type": "number"
           },
           "alongTrackIncidenceAngle": {
              "type": "number"
           },
           "instrumentAzimuthAngle": {
              "type": "number"
           },
           "instrumentZenithAngle": {
              "type": "number"
           },
           "instrumentElevationAngle": {
              "type": "number"
           },
           "pitch": {
              "type": "number"
           },
           "roll": {
              "type": "number"
           },
           "yaw": {
              "type": "number"
           }
         },
         "additionalProperties": false
      },


 

E.1.13 Definitions/QualityInformation

 


      "QualityInformation": {
         "type": "object",
         "properties": {
           "qualityStatus": {
              "type": "string",
              "enum": [
                 "NOMINAL",
                 "DEGRADED"
              ]
           },
           "qualityDegradation": {
              "description": "Percentage",
              "type": "number"
           },
           "qualityDegradationTag": {
              "type": "string"
           },
           "qualityDegradationQuotationMode": {
              "type": "string",
              "enum": [
                 "AUTOMATIC",
                 "MANUAL"
              ]
           }
         },
         "additionalProperties": true
      },


 

E.1.14 Definitions/CoverageDescription

 


      "CoverageDescription": {
         "description": "Subset of ProductInformation",
         "type": "object",
         "properties": {
           "cloudCover": {
              "type": "number"
           },
           "snowCover": {
              "type": "number"
           }
         }
      },


 

E.1.15 Definitions/FeatureCollection

 


      "FeatureCollection": {
         "description": "GeoJSON FeatureCollection",
         "type": "object",
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "FeatureCollection"
              ]
           },
           "bbox": {
              "type": "array"
           },
           "features": {
              "type": "array",
              "minItems": 0,
              "items": {
                 "$ref": "#/definitions/EarthObservation"
              }
           }
         },
         "required": [
           "type",
           "features"
         ]
      },


 

E.1.16 Definitions/WavelengthInformation

 


      "WavelengthInformation": {
         "type": "object",
         "minProperties": 1,
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "WavelengthInformation"
              ]
           },
           "discreteWavelengths": {
              "type": "array",
              "minItems": 1,
              "items": {
                 "type": "number",
                 "minimum": 0,
                 "exclusiveMinimum": true
              }
           },
           "endWavelength": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true
           },
           "spectralRange": {
              "type": "string",
              "enum": [
                 "INFRARED",
                 "NIR",
                 "SWIR",
                 "MWIR",
                 "LWIR",
                 "FIR",
                 "UV",
                 "VISIBLE",
                 "MICROWAVE",
                 "OTHER"
              ]
           },
            "startWavelength": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true
           },
           "wavelengthResolution": {
              "type": "number"
           }
         },
         "additionalProperties": false
      },


 

E.1.17 Definitions/VerticalSpatialDomain

 


      "VerticalSpatialDomain": {
         "description": "Subset of AcquisitionParameters",
         "type": "object",
         "properties": {
           "highestLocation": {
              "type": "string"
           },
           "lowestLocation": {
              "type": "string"
           },
            "locationUnit": {
              "type": "string",
              "enum": [
                 "bar",
                 "m"
              ]
           }
         }
      },


 

E.1.18 Definitions/TemporalInformation

 


      "TemporalInformation": {
         "description": "Subset of AcquisitionParameters",
         "type": "object",
         "properties": {
           "beginningDateTime": {
              "type": "string",
              "format": "date-time"
           },
           "endingDateTime": {
              "type": "string",
              "format": "date-time"
           }
         },
         "required": [
           "beginningDateTime",
           "endingDateTime"
         ]
      },


 

E.1.19 Definitions/AcquisitionInformation

 


      "AcquisitionInformation": {
         "type": "object",
         "properties": {
           "type": {
              "type": "string",
              "enum": [
                 "AcquisitionInformation"
              ]
           },
           "platform": {
              "$ref": "#/definitions/Platform"
           },
           "instrument": {
              "$ref": "#/definitions/Instrument"
           },
           "acquisitionParameters": {
              "$ref": "#/definitions/AcquisitionParameters"
           }
         }
      },


 

E.1.20 Definitions/OrbitParameters

 


      "OrbitParameters": {
         "description": "Subset of AcquisitionParameters",
         "type": "object",
         "properties": {
           "orbitDirection": {
              "type": "string",
              "enum": [
                 "ASCENDING",
                 "DESCENDING"
              ]
           },
           "lastOrbitDirection": {
              "type": "string",
              "enum": [
                 "ASCENDING",
                 "DESCENDING"
              ]
           },
           "orbitDuration": {
              "type": "integer"
           },
           "ascendingNodeDate": {
              "type": "string",
              "format": "date-time"
           },
           "ascendingNodeLongitude": {
              "type": "number"
           },
           "orbitNumber": {
              "type": "integer",
              "minimum": 0
           },
           "lastOrbitNumber": {
              "type": "number"
           }
         }
      }
   }
}


E.2 Schemas for OWC GeoJSON validation

The JSON schema definitions in the current section are "imported" by the schemas presented in the previous section.  They represent a JSON Schema encoding of selected OGC 14-055r2 resources which are reused by the OGC 17-003 GeoJSON encoding without modification.

The file is available at http://schemas.opengis.net/eo-geojson/1.0/owc-geojson-schema.json (See Annex E:).


{
   "$schema": "http://json-schema.org/draft-04/schema#",
   "title": "GeoJSON encoding of OGC 14-055r2 subset required by OGC 17-003 JSON Schema",
   "description": "Definition of OGC 14-055r2 and GeoJSON elements required by GeoJSON encoding of EO Dataset Metadata.  Note that numbers in the instance should not be surrounded by double-quotes to validate against this schema. ",
   "definitions": {


 

E.2.1 Definitions/Point (GeoJSON)

 


      "Point": {
         "title": "Point",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "gj:coordinates",
              "description": "One position (longitude, lattitude)",
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                 "type": "number"
              }
           },
           "type": {
              "type": "string",
              "enum": [
                 "Point"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.2 Definitions/MultiPoint (GeoJSON)

 


      "MultiPoint": {
         "title": "point",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "gj:coordinates",
              "description": "Array of positions",
              "type": "array",
              "minItems": 1,
              "items": [
                 {
                    "description": "One position",
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                       "type": "number"
                    }
                 }
              ],
              "additionalItems": false
           },
           "type": {
              "type": "string",
              "enum": [
                 "MultiPoint"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.3 Definitions/LineString (GeoJSON)

 


      "LineString": {
         "title": "LineString",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "coordinates",
              "description": "Array of positions",
              "type": "array",
              "minItems": 2,
              "items": {
                 "description": "One position",
                 "type": "array",
                 "minItems": 2,
                 "maxItems": 2,
                 "items": {
                    "type": "number"
                 }
              }
           },
           "type": {
              "type": "string",
              "enum": [
                 "LineString"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.4 Definitions/MultiLineString (GeoJSON)

 


      "MultiLineString": {
         "title": "MultiLineString",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "coordinates",
              "description": "Array of linestring",
              "type": "array",
              "minItems": 1,
              "items": {
                 "description": "Linestring, i.e. array of positions",
                 "type": "array",
                 "minItems": 2,
                 "items": {
                    "description": "Position (longitude, lattitude)",
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                       "type": "number"
                    }
                 }
              }
           },
           "type": {
              "type": "string",
              "enum": [
                 "MultiLineString"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.5 Definitions/Polygon (GeoJSON)

 


      "Polygon": {
         "title": "Polygon",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "coordinates",
              "description": "Array of linestrings",
              "type": "array",
              "minItems": 1,
              "items": {
                 "description": "Linear ring, i.e. linestring or array of positions",
                 "type": "array",
                 "minItems": 1,
                 "items": {
                    "description": "One position",
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                       "type": "number"
                    }
                 }
              }
           },
           "type": {
              "type": "string",
              "enum": [
                 "Polygon"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.6 Definitions/MultiPolygon (GeoJSON)

 


      "MultiPolygon": {
         "title": "MultiPolygon",
         "type": "object",
         "properties": {
           "coordinates": {
              "title": "coordinates",
              "description": "Array of Polygons",
              "type": "array",
              "minItems": 1,
              "items": {
                 "description": "Array of linestrings",
                 "type": "array",
                 "minItems": 1,
                 "items": {
                    "description": "Linear ring, i.e. linestring or array of positions",
                    "type": "array",
                    "items": {
                       "description": "One position",
                       "type": "array",
                       "minItems": 2,
                       "maxItems": 2,
                       "items": {
                          "type": "number"
                       }
                    }
                 }
              }
           },
           "type": {
              "type": "string",
              "enum": [
                 "MultiPolygon"
              ]
           }
         },
         "required": [
           "coordinates",
           "type"
         ],
         "additionalProperties": false
      },


 

E.2.7 Definitions/Geometry (GeoJSON)

 


      "Geometry": {
         "title": "Geometry",
         "type": "object",
         "oneOf": [
           {
              "$ref": "#/definitions/Point"
           },
           {
              "$ref": "#/definitions/MultiPoint"
           },
           {
              "$ref": "#/definitions/LineString"
           },
           {
              "$ref": "#/definitions/MultiLineString"
           },
           {
              "$ref": "#/definitions/Polygon"
           },
           {
              "$ref": "#/definitions/MultiPolygon"
           }
         ]
      },


 

E.2.8 Definitions/Offering (OGC 14-055r2)

 


      "Offering": {
         "title": "Offering",
         "description": "Offering as defined in OGC 14-055r2",
         "type": "object",
         "properties": {
           "code": {
              "type": "string",
              "format": "uri"
           },
           "operations": {
              "type": "array",
              "items": {
                 "$ref": "#/definitions/Operation"
              }
           },
           "contents": {
              "type": "array"
           },
           "styles": {
              "type": "array"
           }
         },
         "required": [
           "code"
         ]
      },


 

E.2.9 Definitions/Operation (OGC 14-055r2)

 


      "Operation": {
         "description": "OGC 14-055r2",
         "type": "object",
         "properties": {
           "code": {
              "type": "string",
              "format": "uri"
           },
           "method": {
              "type": "string",
              "enum": [
                 "GET",
                 "POST",
                 "PUT",
                 "HEAD",
                 "PATCH",
                 "DELETE"
              ]
           },
           "type": {
              "description": "Media type",
              "type": "string"
           },
           "href": {
              "type": "string",
              "format": "uri"
           },
           "request": {
              "type": "object"
           },
           "result": {
              "type": "object"
           }
         },
         "required": [
           "code",
           "method",
           "href"
         ]
      }
   }
}


 

Annex F:    Schemas and Examples

 

The following schema file, vocabulary definitions, context file and selected examples are provided in the OGC schema repository:

 

They are available at http://schemas.opengis.net/eo-geojson/1.0.

 

 

Annex G:    Revision History

 

Date

Version

Editor

Sections modified

Description

10/02/2017

0.0.1 Draft D6

Y. Coene

All

Initialised Draft Document.

28/02/2017

0.0.2 Draft D7

Y. Coene

All

Updated draft version provided to CEOS WGISS members.

21/04/2017

0.0.3 Draft D8

Y. Coene

All

JSON-LD content removed or moved to annexes.

7.8

FeatureCollection encoding example added.

Annex D

Original Annex C examples presented as GeoJSON, JSON-LD (Compacted) and JSON-LD (Expanded).

Annex B

Original Annex D updated with content moved from inside document to this annex.

Original section 5.2.2 "[JSON-LD] instance diagrams" removed.

This Annex moved as Annex B as info is needed to understand following annexes with JSON-LD examples and properties.

All

mediaType property replaced by "type" and local context added to map "type" to "atom:type" in the scope of the "links"object.

7.1.4

Offering example added for WMS and WCS.

Table 4

Clarification added that geometry element can be a "null" value according to RFC 7946 to address comment from CWIC team (Eugene Yu and Linjun Kang) dated 17/03/2017.

 

 

 

Table 9

Multiplicity of "title" (Data Identification) corrected as per CWIC team comments 17/03/2017.

 

 

 

7.1

"properties": {} replaced by "properties": {...} and "geometry": {} replaced by "geometry": {...} in JSON examples as per CWIC team comments 17/03/2017.

 

 

 

7.6.2

"spectralRange" removed from Instrument table as included in WavelengthInformation.

 

 

 

7.4.1.4

JSON schema diagram for LineString corrected.

 

 

 

5.2.2

Section explaining JSONPath added.

 

 

 

7

JSONPath information added in dictionary tables.

25/04/2017

0.0.4 Draft D9

Y. Coene

Annex C2

Mapping on UMM improved with inputs from John Taylor.

 

 

 

7.7.2

Reference to ISO 8601 Duration added for CompositeType property

 

 

 

Table 7

media:* properties added and examples of quicklook, thumbnail and masks added below.

 

 

 

Annex B:

Annex D:

Mappings added for media:* properties.

 

media: namespace added to "expanded" examples.

24/05/2017

0.0.5 Draft D10

Y. Coene

Annex B

Annex C.3 with EO vocabulary definition (RDFS) updated and moved into JSON-LD Annex as B.3.

Included in Turtle format as more compact than RDF/XML format.

 

 

 

1.2

Aligned with modified table of content (Annex C.3 moved to B.3).

 

 

 

7.1.3

Example of local access link with "file" URI scheme added as per RFC8089.

 

 

 

7.7

format and archivingDate properties added in tables and figures.

 

 

 

Annex C

GeoJSON column in Annex C.2  moved to first column of table.

All tables from Annex C merged into a single table.

 

 

 

All

Single namespace eop: used instead of opt:, sar;, lmb: etc.

13/06/2017

0.0.6 Draft D11

Y. Coene

7.1

Figure 3 updated to allow for geometry=null in JSON Schema.

 

 

 

2.2

Description column filled in table with conformance classes.

 

 

 

7.6, 7.6

Requirement class ""instrument" added (7.5.1).

Requirement "wavelength-information" added (7.5.2).

Requirement acquisition-angles added as dependency in 7.5.4.

requirement quality-information added as dependency in 7.6.

 

 

 

Annex A

Conformance classes specified in same way as OGC 15-100r1.  Diagram with requirement (class) dependencies added.

 

 

 

Annex E

E.1.12: JSON Schema in E.1.12 (Geometry) updated to allow for geometry=null.

E.1.16: JSON Schema for Link aligned with content of document (e.g. category, expression, conformsTo).

E.1.17: JSON Schema for ProductInformation aligned with content of document (e.g. archivingDate).

21/06/2017

0.0.7 Draft D12

Y. Coene

7.4.1.5

MultiLineString example added.

 

 

 

7.1.4

Offering example for WPS added.

 

 

 

7.3

"lang" added to map UMM metadata language information.

 

 

 

9

typos "Application" corrected into "application".

 

 

 

B.2

eop: namespace corrected in JSON-LD context definitions.

 

 

 

B.3

Vocabulary updated to encode the individuals in a different way using intermediate classes for the enumerations. 

 

 

 

C.1

Mapping table completed/corrected for:

-       lang

-       alt:cycleNumber

-       discreteWavelengths

-       Spatial option 5.

-       Spatial option 7.

-       updated (EarthObservationMetadata/
creationDate)

 

 

 

E.1.12

bbox JSON schema definition updated.

06/09/2017

0.0.8 Draft D13

Y. Coene

 

Integration of comments received from CEOS WGISS NASA team (Allan Doyle, Michael Morahan, and Archie Warnock) on draft D12 as agreed during CEOS WGISS SLT teleconference 24/08/2017:

 

 

 

i

Comment AD2 (A. Doyle): "improvement" clarified.

Comment AD3: reference to definition of compaction added as footnote.

Comment AD4; added reference to OGC Simple Features.

 

 

 

1.1

Comment AD6: rephrase sentence confirming that CEOS WGISS review comments are taken into account.

CEOS added to list of submitting organisations in section iv as well.

 

 

 

Table 1

Comment AD8: caption updated to avoid "EO GeoJSON" term.

 

 

 

3

Comment AD9: Reference NR4 moved to OR33 to become non-normative.

 

 

 

4

Comment AD10: datastrip, swath, granule, dataset definitions added or improved.

 

 

 

6.2

Comment AD11: Sentence reworded.

 

 

 

Table 4 and other tables.

Comment AD13: title of first column in properties table changed from "GeoJSON Property" into "JSON Property".

 

 

 

Figure 4 and other figures.

Comment AD15: Remove "(GeoJSON)" from caption of JSON Schema figures except when appropriate.

 

 

 

Example 3 and others.

Comment AD18: Remove "(GeoJSON)" from caption of examples except where appropriate.

 

 

 

7.1.2

Comment AD21: Changed {} into {...}.

 

 

 

Example 12

Comment AD33: Added remark about line breaks which were added for readability of WPS example.

Comment MM4: invalid date corrected.

 

 

 

7.6.3

Comment AD57: Added missing caption.

 

 

 

D.1.2.2

Comment AD80: Made first and last position contain identical values in example.

 

 

 

6.1

Comment MM5: Sentence added to clarify that ordering of members of any JSON object is irrelevant.

 

 

 

7.4.2

Comment MM6: Example added for VerticalSpatialDomain encoding.

 

 

 

7.7

Comment MM6: Example of ProductInformation encoding extended with more properties.

 

 

 

C.1

Comment MM10: UMM-C property "Collection Status" mapped to "status".

 

 

 

Table 11

 

C.1

 

 

 

B.3

Comment AW3: definition of lower/upper bound corrected.  locationUnit added.

minimumAltitude and maximumAltitude replaced by lowestLocation and highestLocation.

locationUnit added to allow use of distance or pressure for expressing vertical spatial domain.

locationUnit added to vocabulary definition in Turtle.

 

 

 

[OR13]

Reference to CEOS Best Practice document OR13 removed (together with two related footnotes) in list of non-normative references as agreed in SWG telco 30/08/2017.

 

 

 

All

Editorial comments on previous version from John Taylor addressed.

22/01/2018

1.0.0 Draft D1

Y. Coene

 

 

 

 

 

B.2.2

JSON-LD 1.1 context updated to allow constants to be interpreted as relative/local  URI and be expanded using @base URI.

 

 

 

All

atom: replaced by "iana:" to align URI of relations with [NR11] and OGC JSON Best Practice Candidate Alpha version.

Added definition of "iana:" namespace.

 

 

 

7.1.5.

JSON Schema for OGC 14-055r2 Operation object added.

 

 

 

All

Reference to UMM-C added as [OR04].  Existing OR04 moved to OR13.

 

 

 

Annex F

Annex with download location for schemas and examples added.

 

 

 

Table 18, Annex B.3, C.1, E.1.15

Comment OB1 (22/12/2017) addressed: track/frame renamed into wrsLongitudeGrid/wrsLatitudeGrid.

 

 

 

Table 18, Annex B.3, C.1, E.1.15

Comment OB2 (22/12/2017) addressed: relativePassNumber renamed into relativeOrbitNumber.

 

 

 

Section 7.1.1

Mandatory "identifier" added in example.

 

 

 

Section 7.3

"identifier" added in figure.

Mandatory "identifier" added in example.

 

 

 

Annex D

"identifier" and "dct:identifier" property added in all examples.

 

 

 

Annex E.1.1

"identifier" added in JSON schema fragment.

 

 

 

Table 9,
Table 12, Table 13, Table 20, Table 22

Properties of type DateTime better defined referring to footnote with RFC3339 pattern to be used as discussed via OGC SWG email exchange.

 

 

 

Table 4

Comment AD37 closed in same way as in OGC 17-047: bbox definition updated reducing dimensions to n=2.

 

 

 

All and Annex A

Relative URI of requirement classes and requirements updated ("class" removed and "eo-geojson" removed as already part of common part of URI.  Core conformance class added as a choice of either a single object or collection of objects.

 

 

 

Section 2.2 and Annex A

Offering conformance class added.

 

 

 

Section 7.4.3.

Annex B.3

Annex C.1

Annex E.1.

Optional lastOrbitDirection added to close comment JG-01 (NASA).

01/02/2018

1.0.0 Draft D2

Y. Coene

All DateTime occurances and footnote 10.

dateTime format explanation updated as decided in SWG of 31/01/2018.

The definition is identical to the definition of dateTime in JSON Schema, i.e. refers to section 5.6 of RFC3339.  Non-UTC times are allowed again.

2018-10-24

1.0.0 Draft D4

Y. Coene

All

Integrated comments from OAB and Public Comments:

-       AA-1

-       AA-3

-       AA-4

-       Carl Reed (OAB Review).

-       DLR-1

-       DLR-2

-       DLR-3 (Partly)

-       DLR-4

-       DLR-5 (Partly)

-       DLR-6

-       DLR-7

-       DLR-8

-       DLR-9 (Partly)

-       DLR-10

-       DLR-12

-       DLR-14

-       DLR-15

-       DLR-17

-       DLR-62

-       DLR-63

-       OGC-1

-       OGC-2: http://www.opengis.net/owc/1.0/ and http://www.opengis.net/eo-geojson/1.0/ ontology namespaces renamed into http://www.opengis.net/ont/owc/1.0/ and http://www.opengis.net/ont/eo-geojson/1.0/ as per OGC 12-081.

-       VITO-2

Remain to be done:

-       DLR-11,

-       DLR-13 (no action)

-       DLR-16,

-       DLR-18 (no action)

-       DLR-61

-       AA-2 (no action)

 

 

 

2018-11-23

1.0.0 Draft D5

Y. Coene

All

Implemented decisions from SWG telco on 2018-11-06:

-       DLR-3: domain and range restrictions removed for remaining "iana" and "media" in Annex B.3.

-       DLR-5: line 1134 in OWL file (Annex B.3): antennaLookDirection changed into ObjectProperty.

-       DLR-9: line 896 in OWL file. Eop:discreteWavelengths  has "s" removed in its URI.  The explanation in the OWL file that it is a "list of something" is reworded as there are no lists/arrays in JSON-LD.  eop:samplingRates also changed into eop:samplingRate for same reason.

-       DLR-11: JSON-LD 1.0 @context removed from document (and Annex B.2).  Explanation added why a JSON-LD 1.0 @context was not considered.

-       DLR-16: "Unit of measure (m) is SI base unit (m) without prefix.".  Two times "(m)" inside this description is unnecessary.  All similar sentences were modified.

-       DLR-16: altitudeUnit made a URI in JSON-LD in eop: namespace and two individuals created corresponding to "m" and "bar".

-       DLR-61: Instrument object is split into Instrument (§7.6.2) (containing id, sensorType, instrumentShortName and description) and InstrumentParameters, both below the same parent object AcquisitionInformation.

Refactored JSON Schema in Annex E by isolating reusable definitions corresponding to lower level specifications in Annex E.2.

SpectralRange constants updated with values proposed by DLR (§7.6.3, B.3.1, E.1.16).

2019-02-07

1.0.0 Draft D6

Y. Coene

 

 

 

 

 

 

 

 

 

 

 

Annex A

 

Annex C:

Annex E.1

 

Aligned data and metadata dates with OGC 13-026r9 version uploaded after SWG telco on 16/01/2019.  Added in tables and XMLSpy diagrams:

-       published (metadata - Section 7.2)

-       creationDate (metadata - Section 7.2)

-       lang (metadata) – was missing.

-       created (data - Section 7.3)

-       available (data - Section 7.3)

Isolated metadata dates in separate MetadataInformation object (Section 7.2) for closer alignment with UMM-G metadata model.

Added conformance class for Section 7.3 in Annex A and figure in Annex A.1.

conformsTo and referenceSystemIdentifier entries corrected.

Updated JSON Schema for Properties, MetadataInformation and DataIdentification.

 

 

2019-02-19

1.0.0 Draft D7

Y. Coene

All

Solution for DLR-61 improved: Moved all InstrumentParameters properties to AcquisitionParameters as decided during the SWG telco on 18/02/2019.

conformsTo and referenceSystemIdentifier entries in JSON-LD context updated ("@id") as the properties are of type "URI".

 

2019-07-31

1.0.0 r2

Y. Coene

Section 3.2

Annex A

Annex B.2.1

Annex C.1

References [OR2], [OR3], [OR4],[OR32] updated to latest versions.

Typos in A.6 and A.12 tables corrected.

Encoding for "offerings", "operations", "contents" corrected. "kind" property added.

"published" mapped to dct:issued to be consistent with Annex B.2.1

 

 


[1] See section 4.1 and [OR13].

[2] http://opengeospatial.org/cite

[3] More details can be found in the online documentation of Altova XMLSpy 2016 available at http://manual.altova.com/xmlspy/spyenterprise/index.html?viewconfig.htm.

[4] https://en.wikipedia.org/wiki/International_System_of_Units

[5] Although "type": [ "Feature", "EarthObservation" ] is valid JSON, GeoJSON expects "type" to be a fixed string "Feature".

[6] This alternative Link model is used by the YouTube JSON API and the NASA CMR JSON responses for granules.

[7] OGC 14-055r2 allows additional attributes as "extension" in a DataType link.

[8] Mandatory also according to Table 2 of OGC 14-055r2.

[9] When specifying a temporal range the element should contain two dates separated by a slash, like: "2004-02-19T03:03:23.736Z/2010-09-12T15:57:36.072Z".

[10] A String matching RFC 3339 section 5.6. yyyy-MM-ddThh:mm:ss[.S](Z/(+/-)th:tm) where yyyy = Four digit year, MM = Two digit month (01 = January), dd = Two digit day of month (01 = first day), hh = Hour of day (00 – 23), mm = Minute of hour (00 – 59), ss = Second of minute (00 – 59), S = fraction of seconds with any precision. Times are in UTC (ending with the mandatory Z character) or defined with an offset w.r.t. UTC: th = Time offset hours (00 - 23), tm = Time offset minutes (00 - 59).

[11] Future work: model dependency of some attributes on the value of this property using JSON Schema dependencies.

[12] https://en.wikipedia.org/wiki/International_System_of_Units#Derived_units

[13] https://en.wikipedia.org/wiki/ISO_8601#Durations

[14] Note that "method" as property name would conflict with the "method" property in Offerings.

[15] http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.pdf

[16] http://docs.oasis-open.org/search-ws/searchRetrieve/v1.0/os/part0-overview/searchRetrieve-v1.0-os-part0-overview.html

[17] http://ontorule-project.eu/parrot/parrot

[18] http://www.essepuntato.it/lode

[19] https://github.com/dgarijo/Widoco

[20] UMM-Common [OR3] has removed notion of "sensor" since version 1.4, but allows for instruments composed of instruments (See [OR3] section 1.9.20.1).

[21] E.g. https://jsonschemalint.com/#/version/draft-04/markup/json or http://www.jsonschemavalidator.net/

[22] https://www.openapis.org/specification/repo

[23] "SJOT: Schemas for JSON Objects", https://www.genivia.com/sjot.html