Live Chat
Welcome to the ESA Earth Observation Framework (EOF) website! If you have any questions about EOF, I’m here to help.
26/04/2023

ESA EO Framework (EOF) – CSC – Common Entity Definition Document

Reference: ESA-EOPG-EOPGC-IF-5
Version: 1.4
Author: CSC Team
Download file:

ESA UNCLASSIFIED - For ESA Official Use Only

1 Introduction

1.1 Purpose and Scope

The purpose of this document is to provide a common definition for basic entities managed by Copernicus Space Component Ground Segment service elements. These definitions are used to derive the RESTful Application Programming Interfaces (API) of the GS elements through which production, archival and distribution of Copernicus Sentinel mission data products may be coordinated.

This specification drives the definition of the OData v4 standard for RESTful APIs for the GS elements, evolving from the v2 standard successfully adopted within the Copernicus Sentinel Data Distribution Service (DHuS) put in place by ESA for the initial missions operations. OData entities and enumerations are detailed, including applicability to GS elements and commonalities. In addition, a generic Reporting interface is described, intended for the collection of reporting parameters which are expected from each GS element.

The document is intended to compliment the lower-level ‘per-GS element’ ICDs, which describe in more detail the specifics of the OData APIs as applicable to each GS element and any intended sequencing expected to achieve the API objectives. This document is intended to capture the common definition for the basic entities, and is presented as a guideline for the evolution of the lower level ICDs. In case the APIs within the lower-level ICDs are considered to be further evolved the definitions in this document should be preferred in order to ensure a harmonised approach in the overall GS management avoid any ad-hoc implementation of the interfacing between GS elements.

1.2 Structure of the Document

This document is structured as follows:

-Section 1 (this section): Introduction, providing document structure, reference documents and definitions/acronyms

-Section 2 describes the Copernicus GS Data Access context and elements and introduces the OData API. Additional common factors, including priority/quota and authorisation/authentication are described.

-Section 3 provides a generic OData interface description, including details of the entities and enumerations, and applicability to each GS element.

-Section 4 describes the generic reporting interface.

-Section 5 lists the OData enumerations, the entities to which they are applicable and the available list of values.

-Section 6 describes the Interface Delivery Point domain naming.

-Appendix A provides a summary of the interface delivery points’ conformance approach.

1.3 Applicable Documents

[AD-1] CSC Sentinel-1 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-]

[AD-2] CSC Sentinel-2 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-2]

[AD-3] CSC Sentinel-3 Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-3]

[AD-4] CSC Sentinel-5P Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-4]

[AD-5] CSC POD Product Unit Definition and Metadata ICD [ESA-EOPG-EOPGC-SP-5]

1.4 Reference Documents

[RD-1] CSC Operations – ESA Framework – Ground Segment Architecture [ESA-EOPG-EOPGC-TN-7]

[RD-2] CSC Operations – ESA Framework - Master Interface Control Document [ESA-EOPG-EOPGC-IF-6]

[RD-3] Long Term Archive (LTA) Interface Control Document [ESA-EOPG-EOPGC-IF-2]

[RD-4] Production Interface Delivery Point (PRIP) Interface Control Document [ESA-EOPG-EOPGC-IF-3]

[RD-5] Data Distribution Interface Control Document, [ESA-EOPG-EOPGC-IF-4]

[RD-6] Auxiliary Data Interface Delivery Point Specification [ESA-EOPG-EOPGC-IF-10]

[RD-7] OData Documentation – OData – the Best Way to REST – v4.01 ISO standard
http://www.odata.org/documentation/

[RD-8] OData Protocol
http://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html

[RD-9] OData JSON Format Version 4.01
https://docs.oasis-open.org/odata/odata-json-format/v4.01/odata-json-format-v4.01.html

1.5 Definitions

API – Application Programming Interface – a set of routines, protocols, and tools for building software applications.

Batch Order – A client request to trigger the delivery of products making up a particular Batch (resulting from a Bulk), making them available for download by the requesting user.

Bulk Request – A client request to trigger the creation of a Bulk, defined by a list of products or query filter parameters and a Batch size. The GS element breaks the Bulk into Batches, based on the Batch size provided and the most efficient ordering of products.

Client – any HTTP client performing HTTP/OData requests to the LTA

Order – A client request for a data product to be retrieved by the GS element and made available for download by the requesting user.

Product – Packaged set of data files corresponding to EO or auxiliary product format specification

Quota – Refers to the maximum number of requests per user to be processed in parallel.

Subscription – A client request for notification of future products entering the GS element which fulfil particular query filter parameters.

1.6 List of Acronyms

AD – Applicable Document

ADG – Auxiliary Data Gathering

AIP – Archive Interface delivery Point

API  – Application Programming Interface

AUX – Auxiliary

AUXIP – Auxiliary Interface Delivery Point

CSC  – Copernicus Space Component

DA – Data Access Service

DHuS  – ESA Data Distribution Service

E2E  – End-to-End

EO  – Earth Observation

ESA  – European Space Agency

FIFO  – First In, First Out

GS  – Ground Segment

HTTP(S) – Hypertext Transfer Protocol (Secure)

ID  – Identifier

ICD  – Interface Control Document

JSON  – JavaScript Object Notation

LTA – Long Term Archive

OData  – Open Data Protocol

ODP – On Demand Production system

POD  – Precise Orbit Determination

PRIP  – PRoduction Interface delivery Point

RD  – Reference Document

REST  – Representational State Transfer

TBD – To Be Defined

TBW  – To Be Written

URI  – Uniform Resource Identifier

UTC  – Coordinated Universal Time

UUID  – Universally Unique Identifier

2 CSC Ground Segment and OData API Overview

2.1 Ground Segment Context

To meet its objectives, the CSC Ground Segment architecture [RD-1] includes the following main functionalities:

Data Acquisition

Mission Planning, including the definition of the instrument sensing and downlink plan

Systematic and on-demand production

Data preservation

User products access

Precise orbit determination

User products calibration and validation and algorithms and processors maintenance

Production quality verification and maintenance

Operations performance monitoring

Spacecraft operations and control, including in particular:

oMission Control System operations (including mission scheduling)

oTelemetry, telecommand and tracking operations within the S-band frequency

oSatellite orbit maintenance, debris monitoring.

Satellite Platform and Instrument(s) performance monitoring

Satellite post launch maintenance activities

Some of these functions are common to all Sentinel missions while other are specifically implemented and operated for each Sentinel mission. In the specific case of Sentinel-3, spacecraft operations have been handed over to EUMETSAT.

The functions composing the Ground Segment architecture are implemented in the form of operational services, complying to a set of applicable input and output interfaces and to the corresponding operational performance requirements.

Data flow interfaces, for systematic data transfer between services, are based on the concept of small data cache areas, referred to as data “interface delivery points” (IP) hereafter. Each function or service generating a systematic or routine data flow to be further managed by one or more services, is making the output data available in an interface delivery point located on a cloud-based environment, which is logically considered as part of, and under the responsibility of, the data source service.

The high level architectural decomposition is provided in the figure below, including whenever necessary multiple instances of the same service to follow the principles indicated earlier. The number of instances illustrated for each service in the figure is not intended to represent a precise number of instances but the fact that multiple instances are present for the same service or function.

Picture 9

Figure 1: High level decomposition of the ESA Copernicus Ground Segment Architecture

The components composing the Ground Segment architecture listed below:

Mission planning (MP)

Data Acquisition (ACQ)

Systematic Processing and routine quality control (PR)

On-Demand Production (ODP)

Auxiliary Data Gathering (ADG)

Precise Orbit Determination (POD)

Data Preservation (Long Term data Archiving (LTA))

Data Access, including Data Access (DA)

E2E Operations performance monitoring

Flight Operations Services (FOS)

Instrument data processing algorithm and operational processor maintenance

Instrument and products calibration and validation

Security Monitoring

E2E Operations coordination

Satellite Post Launch Support services

The interfaces between the GS elements are traced within the Master Interface Control Document [RD-2]

The CSC Ground Segment Architecture aims to harmonise the interfaces between the “interface delivery points” (IP) and avoid ad-hoc implementation of interfaces so that the GS elements may be independently operated and interchanged with minimum configuration. To this end a common model that allows a standard definition of the data, instructions and monitoring information exchanged between elements is pursued through the various interface control documents applicable to the Services [RD-3][RD-4][RD-5][RD-6].

2.2 OData API Overview

The common model chosen to be applied across the GS elements is following the OData Standard [RD-7].

The OData protocol [RD-8] defines a standard framework for describing HTTP RESTful interfaces towards a referenced data model (entities, relationships, entity sets, actions, and functions). The protocol supports describing the service interface model ($metadata) and allows this model to be encoding in standard patterns ($format). The model provides query capabilities ($filter), paging capabilities ($top, $skip etc.), as well as common patterns for functions, actions, media download ($value), etc.

In line with the scope of the document, this Common Definition does not attempt to further define the needed filter capabilities etc. to be supported for each Entity. These details are left to the ‘per-GS element’ ICDs and the compliance test suites (Appendix A). This document provides instead a common / high level view of the common Entities that are necessarily supported by the various GS elements.

All examples are provided in the JSON encoding [RD-9], which is the mandatory encoding for inter GS element interactions. Additional encodings are in general only relevant for the Data Access element, providing backwards compatibility towards the initial operations.


3 Generic OData Interface Description

OData entities and enumerations adopted by each GS element are described in this section, including the applicability to each element. For specific examples of each property and details of the operations which may be executed on each entity (e.g. ordering), the specific lower level per-element ICDs should be referred to (RD-3 – RD6).

3.1 Overall OData Entities to GS Elements Mapping

The table below lists all OData Entities and their applicability to each Ground Segment: the Production Interface Delivery Point (PRIP), which encompasses Systematic Production (PR) and On-Demand Processing (ODP), the Data Access (DA), the Long-Term Data Archiving (LTA) and the Auxiliary Data Interface Delivery Point (AUXIP).

OData Entity

Ground Segment Element

Production Interface (PRIP)

Data Access (DA)

Long-Term Data Archiving (LTA)

Auxiliary Interface (AUXIP)

Product

X

X

X

X

Attributes

X

X

X

X

Collections

X

Nodes/Components

TBD

Deleted Product

X

Order

X

X

ProductionOrder

X

X

Workflow

X

WorkflowOptions

X

ProductionOrder Notification

X

Bulk

X

BatchOrder

X

Subscription

X

X

X

Notification

X

X

X

System & User-Related

System

X

X

X

X

User

X

X

X

X

SystemRole

X

X

X

X

Restriction

X

Monitoring-Related

Event

X

X

X

Metric

X

X

X

X

Table 1 – CSC GS Applicability of OData Entities

3.2 OData Entities Description

The following sections provide a description of the properties of each OData element, including the type and the mapping to each GS element. Descriptions are on a generic level; for further details on the specific description for each element, requisiteness of each property and examples, the lower level element-specific ICDs should be referred to.

3.3 Product

In the context of the Copernicus GS, a Product is a packaged set of data files corresponding to a well-defined EO or auxiliary product format specification. The OData definition of the Product entity provides the basic elements to describe the product and facilitate the download and the check of integrity during the circulation between GS elements and basic reporting for the handling of the product. The Product definition includes footprint and sensing date that enables the basics for an EO related temporal spatial query directly on this element. The Product definition avoids to bundle all EO metadata in the basic element definition, preferring a generic approach using the Attributes entity allowing a high degree of flexibility in defining any relevant query condition without creating complex associations to groupings of attributes.

Products Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID). The Id is a local identifier for the product instance within the GS element.

X

X

X

X

Name

String

Data file name (according to the Sentinel file naming conventions) plus the file extension

X

X

X

X

ContentType

String

The Mime type of the product

X

X

X

X

ContentLength

Int64

Actual size in bytes (B) of the downloadable product package

X

X

X

X

OriginDate

DateTimeOffset

Date and time of the product at the source (e.g. Publication date time on the PRIP). Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ. This element is used to calculate the latency in publication of the GS element.

X

X

X

X

PublicationDate

DateTimeOffset

Publication date and time of the product (time at which the product becomes accessible for retrieval to the client within the interface delivery point). Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

X

ModificationDate

DateTimeOffset

Date when the product metadata was last modified. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

Online

Boolean

Indication of current online presence. Default: false

X

X

EvictionDate

DateTimeOffset

Date when the data file will be removed from the Archive delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided if Online = true

X

X

X

X

Checksum (Algorithm, Value and ChecksumDate)

Checksum[]

Represents the known checksums for the product’s physical data, providing a unique value for supporting download integrity check as well as the associated Algorithm (string format). At least the MD5 checksum is mandatory. Each checksum also includes the ChecksumDate when it was calculated, in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ.

Example:

"Checksum":

[

{

"Algorithm":"MD5",

"Value":"e8a303bf3d85200

514f727db60e7db65"

"ChecksumDate":"2018-01-22T18:00:00.000Z",

}

]

X

X

X

X

ContentDate

TimeRange

The sensing range period. Compound property with start and end times in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ:

"ContentDate":

{

"Start": "YYYY-MM-DDThh:mm:ss.sssZ",

"End": "YYYY-MM-DDThh:mm:ss.sssZ"

}

X

X

X

X

ProductionType

ProductionType Enum

ProductionType values:

-systematic_production

-on-demand default

-on-demand non-default

Where:

- systematic_production means that standard systematic production has been applied

- on-demand default means that the production is the result of an on-demand processing request with default workflow options applied.

- on-demand non-default means that the production is the result of an on-demand processing request with non-default workflow options applied.

NB: while ‘on-demand non-default’ signifies that options have been applied, it does not indicate precisely which options. The selected options will, however, be reflected within the attributes of the product.

X

Footprint

Geography

Footprint of the product

X

X

X

GeoFootprint

Geography

Mandatory for georeferenced products, following the definition in [RFC7946 ], with the following modification, according to [OData JSON Format Version 4.01 – Section 7.1]:

-Keys should be ordered with type first, then coordinates, then any other keys

Example:

"GeoFootprint":{

"type": "Polygon",

"coordinates": [

[

[-59.3169, 2.6367],

[-63.105, -14.0539],

[-60.8506, -14.4245],

[-57.1309, 2.3269],

[-59.3169, 2.6367]

]

]

}

X

X

X

Table 2 – Product Entity Properties and GS Applicability

3.4 Attributes

The Attributes entity provides the model for any other Product metadata. To assure a harmonized approach across all GS elements a precise mapping of each metadata attribute to the product format specification is performed. This is described in a series of documents dedicated to each mission, see section 1.3.

Attributes Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Name

String

String name of the attribute

X

X

X

X

ValueType

String

The type of attribute. This shall correspond to the following:

- String

- Integer

- DateTimeOffset

- Double

- Boolean

X

X

X

X

Value

Depends on ValueType

The value of the attribute, depending on the ValueType

X

X

X

X

Table 3 – Attributes Entity Properties and GS Applicability

3.5 Collection

In the context of the Copernicus GS, a Collection is a grouping of Products that may correspond to defined criteria, e.g. instrument, product types, data timeliness etc. Collections may be used as part of standard catalogue queries, and users may be authorized to access only specific Collections.

Collections Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Name

String

Collection name

X

Description

String

Collection textual description

X

Scope

Enum

Public

Private

X

CreationDate

DateTimeOffset

Date of collection creation

X

Table 4 – Collection Entity Properties and GS Applicability

3.6 Nodes/Components

Supporting the capability to inspect / download components from the product package. This definition is due for further detailing.

3.7 Deleted Product

The DeletedProduct Entity is provided in the Data Access element to provide a reference to data which have been deleted from the GS due to a quality issue or GS anomaly. The Entity allows clients to be routinely informed of any deletion and data and thus align any external catalogue or system.

DeletedProduct Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID). The Id the identifier initially used to publish the product instance within the GS element.

X

Name

String

Data file name (according to the Sentinel file naming conventions) plus the file extension)

X

PublicationDate

DateTimeOffset

Publication date and time of the product (time at which the product originally become accessible for retrieval to the client within the LTA). Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

DeletionDate

DateTimeOffset

Date and time of the product deletion from the Ground Segment element. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

DeletionCause

String

Reason for the deletion

X

Checksum (Algorithm, Value and ChecksumDate)

Checksum[]

Represents the known checksums for the product’s physical date, providing a unique value for supporting download integrity check. At least MD5 checksum is mandatory. Each checksum also includes the ChecksumDate when it was calculated, in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

ContentDate

TimeRange

The sensing range period. Start and end times are in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

Footprint

Geography

Footprint of the product

X

GeoFootprint

Geography

Footprint of the product following the GeoJSON format

Table 5 – DeletedProduct Entity Properties and GS Applicability

3.8 Order

In the context of the Copernicus GS, an Order is a client request for an offline data product to be retrieved by the GS element and made available for download by the requesting user.

Order Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID).

The Id is a local identifier for the Order instance within the element, assigned upon Order creation.

X

X

Status

JobStatus enumeration

JobStatus value:
- queued

- in_progress
- completed
- failed
- cancelled

X

X

StatusMessage

String

Text message providing additional information on the returned status, e.g. the reason for a failure.

X

X

OrderSize

Int64

Actual size in bytes (B) of the data composing the Order (which would be the ProductSize unless any transformation is performed, e.g. band extraction)

Only provided if the order is in status completed

X

X

SubmissionDate

DateTimeOffset

Date and time at which the order was received by the element. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

EstimatedDate

DateTimeOffset

Estimated date and time when the product will be available for download from the Archive delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

The EstimatedDate is assigned upon initial Order response and is not subsequently updated. The EstimatedDate is assigned on the basis of the retrieval queue when the order is processed (the actual CompletedDate could be impacted by subsequent incoming higher priority orders)

X

X

Origin Date

DateTimeOffset

Date and time when the product was available for download from the delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided if the order is in status completed

X

CompletedDate

DateTimeOffset

Date and time when the product was available for download by the ordering client. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sss

Only provided if the Order is in status completed

X

X

EvictionDate

DateTimeOffset

Date when the Product related to the Order will be removed from the Archive delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided if the Order is in status completed

X

X

Priority

Int64

Priority of the order. It is an integer from 1-100, where 100 is the highest priority.

There is always a priority associated to an order: if it is not set within the Order Request, then it is automatically set to the default priority assigned to the user. If the Order Request sets a priority higher than the highest priority assigned to the user then it is automatically set at the highest priority assigned.

X

X

NotificationEndpoint

String

URI used by the LTA for product download readiness notifications, should these be required. If not provided, no notifications will be sent.

X

NotificationEpUsername

String

The username associated with the Endpoint URI provided.

Mandatory if Endpoint is provided, and requires authentication.

X

NotificationEpPassword

String

The password associated with the Endpoint URI provided.

Shall be suitably secured to not be disclosed in subsequent queries via the OData interfaces.

X

Table 6 – Order Entity Properties and GS Applicability


3.9 Bulk

A Bulk is an entity created following a client request to trigger bulk retrieval of a set of data, defined by a query filter parameters and a Batch size. The GS element breaks the Bulk into Batches, based on the Batch size provided and the most efficient ordering of products.

Bulk Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID).

The Id is a local identifier for the Bulk instance within the element, assigned upon Bulk creation.

X

Status

JobStatus enumeration

JobStatus value:
- created
- in_progress
- completed
- failed

- cancelled

X

StatusMessage

String

Text message providing additional information on the returned status, e.g. the reason for a failure. Example values are:

If status = ‘created’

‘Bulk has been created but no BatchOrders have been triggered’

If status = ‘in_progress’

‘One or more BatchOrders are under processing’

If status = ‘completed’:

‘requested products of all BatchOrders comprising the Bulk are in status ‘completed’’

If status = ‘failed’:

‘at least one product retrieval has failed’

‘at least one product currently unavailable’

‘at least one product not found on LTA’

If status = cancelled:

‘Bulk cancelled by user’

X

FilterParam

String

The filter parameters of the Bulk request (refers to the $filter= parameter of any Products? query)

X

OrderbyParam

String

Optional specification of the sorting order for the products within the batches. This would override any ordering from the element and could result in a less efficient Bulk extraction, so should be used only if critical for the organisation of the Bulk (refers to the $orderby= parameter of any Products? query)

X

BatchsizeProducts

Int64

The maximum number of products making up each child BatchOrder making up the Bulk. If this number causes the BatchsizeVolume to be exceeded then the number is limited to that which make up the BatchsizeVolume.

The BatchsizeProducts serves as an optional information of the client to the service. The service shall be eligible to overwrite the value specified by the client.


If not provided, a configurable default BatchsizeProducts value is used

X

BatchsizeVolume

Int64

The maximum volume of each child BatchOrder making up the Bulk, in GiB. This value takes precedence of the BatchsizeProducts value.

The BatchsizeVolume serves as an optional information of the client to the service. The service shall be eligible to overwrite the value specified by the client.

If the value exceeds a configurable default maximum LTA BatchsizeVolume value, then the BatchsizeVolume is limited to this maximum value.

If not provided then the maximum default BatchsizeVolume value is used.

X

SubmissionDate

DateTimeOffset

Date and time at which the Bulk request was received by the element. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

CompletedDate

DateTimeOffset

Date and time when all child BatchOrders were in status completed. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided when status is completed.

X

NotificationEndpoint

String

URI used by the element for product download readiness notifications, should these be required. If not provided, no notifications will be sent.

X

NotificationEpUsername

String

The username associated with the EndPoint URI provided

Mandatory if EndPoint is provided, and requires authentication.

X

NotificationEpPassword

String

The password associated with the EndPoint URI provided

Shall be suitably secured to not be disclosed in subsequent queries via the OData interfaces

X

Table 7 – Bulk Entity Properties and GS Applicability

3.10 BatchOrder

A BatchOrder entity is a client request to trigger the delivery of products making up a particular Batch (resulting from a Bulk), making them available for download by the requesting user.

BatchOrder Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID).

The Id is a local identifier for the BatchOrder instance within the element, assigned upon BatchOrder creation.

X

Status

JobStatus enumeration

JobStatus value:
- queued
- in_progress
- completed
- failed
- cancelled

Where:

- queued means the BatchOrder is queued and has not yet been triggered

- in_progress means that the products making up the BatchOrder are being retrieved and disseminated to the AIP

- completed means that all products making up the BatchOrder were successfully disseminated to the AIP and are available for download

- failed means the retrieval and dissemination of one or more products making up the BatchOrder has failed

- cancelled means that the BatchOrder has been cancelled by the user (while in status queued or in_progress)

X

StatusMessage

String

Text message providing additional information on the returned status, e.g. the reason for a failure. Example values are:

If status = ‘queued’:

‘BatchOrder request is queued’

If status = ‘in_progress’:

‘BatchOrder is under processing’

If status = ‘completed’:

‘requested products of BatchOrder are available’

If status = ‘failed’:

‘at least one product retrieval has failed’

‘at least one product currently unavailable’

‘at least one product not found on LTA’

If status = cancelled:

‘BatchOrder cancelled by user’

X

OrderSize

Int64

Sum of actual size in bytes (B) of the data of all products making up the BatchOrder.

Only provided if the BatchOrder is in status completed

X

SubmissionDate

DateTimeOffset

Date and time at which the BatchOrder was triggered (i.e. changed from status created to status in_progress). No SubmissionDate is provide when the BatchOrder is in status created, or in status cancelled should the BatchOrder have been cancelled before it was triggered. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

EstimatedDate

DateTimeOffset

Estimated date and time when the products making up the BatchOrder will be available for download from the Archive delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

The EstimatedDate is assigned when the BatchOrder is triggered (it is not provided for status created) and is not subsequently updated. The EstimatedDate is assigned on the basis of the retrieval queue when the BatchOrder is processed (the actual CompletedDate could be impacted by subsequent incoming higher priority orders)

X

CompletedDate

DateTimeOffset

Date and time when the products composing the BatchOrder were all available for download from the Archive delivery Interface Point. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided when Status is completed.

X

Priority

Int64

Priority of the BatchOrder. It is an integer from 1-100, where 100 is the highest priority.

There is no priority associated with a BatchOrder when it is in status created. In other statuses there is always a priority associated to a BatchOrder: if it is not set within the BatchOrder triggering request, then it is automatically set to the default priority assigned to the user. If the BatchOrder triggering request sets a priority higher than the highest priority assigned to the user then it is automatically set at the highest priority assigned.

X

Table 8 – BatchOrder Entity Properties and GS Applicability

3.11 Workflow

The workflow entity is applicable to the On-Demand Processing, as part of a ProductionOrder. Following the initial identification of an input product to which on-demand processing is to be applied, the On-Demand PRIP (ODPRIP) Client may query the ODPRIP Service for relevant Workflows to apply.

Workflow Properties

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

The Id is a local unique identifier for the Workflow instance within the ODPRIP, assigned upon Workflow creation.

X

X

Name

String

Short name of the workflow

X

X

Description

String

Textual description of the workflow, including details of the processor version and configuration applicable

X

X

InputProductType

String

Product Type of the Input Product

X

X

OutputProductType

String

Product Type of the Output Product

X

X

WorkflowVersion

String

Version number applicable to the workflow

X

X

Table 9 – Workflow Entity Properties

3.12 WorkflowOptions

The WorkflowOptions refer to the options that a Client can select as part of a ProductionOrder workflow. Each Workflow may include zero or more client-selectable WorkflowOptions.

WorkflowOptions Properties

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Name

String

The name of the option

X

X

Description

String

Textual description of the option

X

X

Type

String

Type of the option

X

X

Default

String

The default value of the option, if there is one

X

X

Value

Value[]

Array representing all possible values of the option:

-Option 1

-Option 2

-Option 3

-etc.

X

X

Table 10 – WorkflowOptions Entity Properties

3.13 ProductionOrder

The On-Demand Processing API allows a user to request the on-the-fly processing of a parent (input) product into a higher level (output) product. This is achieved by creating a ProductionOrder entity which specifies the product to be used as input, the workflow to apply, and the options, if any, for customising the workflow.

ProductionOrder Properties

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

The Id is a local unique identifier for the ProductionOrder instance within the ODPRIP, assigned upon ProductionOrder creation.

X

X

Status

JobStatus enumeration

JobStatus value:

-queued

-in_progress

-completed

-failed

-cancelled

Where:

- queued means that the ordered production request is in the queue to be performed

- in_progress means that the ordered production request is being performed

- completed means that that the ordered output product has been produced is available for download

- failed means the production of the ordered output product has failed

- cancelled means that the ProductionOrder has been cancelled by the user (while in status in_progress)

X

X

StatusMessage

String

Text message providing additional information on the returned status, e.g. the reason for a failure. Example values are:

If status = ‘queued’:

‘request is queued for processing’

If status = ‘in_progress’:

‘request is under processing’

If status = ‘completed’:

‘requested output product is available’

If status = ‘failed’:

‘production has failed’

‘input product currently unavailable’

‘input product not found on LTA’

If status = cancelled:

‘request cancelled by user’

X

X

OrderOutputSize

Int64

Actual size in bytes (B) of the output Product composing the Order.

Only provided if the ProductionOrder is in status completed

X

X

SubmissionDate

DateTime
Offset

Date and time at which the ProductionOrder was received by the ODPRIP. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

EstimatedDate

DateTime
Offset

Estimated date and time when the product will be available for download from the ODPRIP. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

The EstimatedDate is assigned upon initial ProductionOrder response and is not subsequently updated. The EstimatedDate is assigned on the basis of the queue when the ProductionOrder is processed (the actual CompletedDate could be impacted by subsequent incoming higher priority orders)

X

X

CompletedDate

DateTime
Offset

Date and time when the product was available for download from the ODPRIP. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided if the ProductionOrder is in status completed

X

X

EvictionDate

DateTime
Offset

Date when the Product related to the order will be removed from the ODPRIP. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided if the ProductionOrder is in status completed

X

X

Priority

Int64

Priority of the ProductionOrder. It is an integer from 1-100, where 100 is the highest priority.

There is always a priority associated to a ProductionOrder: if it is not set within the ProductionOrder Request, then it is automatically set to the default priority assigned to the user. If the ProductionOrder Request sets a priority higher than the highest priority assigned to the user then it is automatically set at the highest priority assigned.

X

X

InputProductReference (Reference, ContentDate)

InputProductReference

Complex type used to unambiguously identify the input product. It contains:

-Reference (String): Identifier of the product, typically the product file name or other similar value

-ContentDate (TimeRange): The sensing range period. S Start and end times are in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

At least one of the Reference or the ContentDate must be included.

The optionality and precise definition of the InputProductReference should be described in an explicit tailoring, see for example Annex A.

X

X

WorkflowId

Guid

The Id is a local unique identifier for the Workflow instance within the ODPRIP which is applicable to the ProductionOrder

Maps to Workflow.Id

X

X

WorkflowName

String

Short name of the workflow

Maps to Workflow.Name

X

X

WorkflowOptions

(Name, Value)

WorkflowOptions[]

Selection of applicable options from the Workflow. Each option is provided in the format (taken from the WorkflowOptions entity):

Name:Value

If no options are selected, the default value is applied in each case.

X

X

NotificationEndpoint

String

URI used by the ODPRIP for product download readiness notifications, should these be required. If not provided, no notifications will be sent.

X

NotificationEpUsername

String

The username associated with the EndPoint URI provided.

Mandatory if NotificationEndpoint requires authentication

X

NotificationEpPassword

String

The password associated with the EndPoint URI provided.

Mandatory if NotificationEndpoint requires authentication

Shall be suitably secured to not be disclosed in subsequent queries via the OData interfaces.

X

Table 11 – ProductionOrder Entity Properties

3.14 ProductionOrder Notification

The ProductionOrder Notification entity is a notification to users concerning products processed on-demand, for which they have requested to be notified.

ProductionOrder Notification Properties

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

ProductId

Guid

The unique identifier of the product being notified. Maps to Product.Id

X

ProductName

String

The data file name of the product being notified. Maps to Product.Name

X

ProductionOrderId

Guid

The identifier of the ProductionOrder being notified. Maps to ProductionOrder.Id

X

NotifictionDate

DateTimeOffset

Date and time at which the notification was generated. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

Table 12 – ProductionOrder Notification Entity Properties and GS Applicability

3.15 Subscription

The Subscription entity refers to a client request for notification of future products entering the GS element which fulfil particular query filter parameters. A Subscription can optionally request for such products to be automatically Ordered by the GS element, thus made available for download.

Subscription Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID).

The Id is a local identifier for the Subscription instance within the element, assigned upon Subscription creation.

X

X

X

Status

SubscriptionStatus enumeration

SubscriptionStatus value:
- running
- paused
- cancelled

X

X

X

SubscriptionEvent

SubscriptionEvent enumeration

The subscription event to be monitored and for which notification is provided, from:
- created
- deleted

X

FilterParam

String

The filter parameters of the Subscription (refers to the $filter= parameter of any Products? query)

X

X

X

SubmissionDate

DateTimeOffset

Date and time at which the subscription was received by the element. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

LastNotificationDate

DateTimeOffset

Date and time corresponding to the last the time the Subscription was queried. Used by the element to limit the next query from the LastNotificationDate to the current date. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

Only provided following the initial Subscription query.

X

X

X

StageOrder

Boolean

Automatically orders the staging of products fulfilling the subscription filter parameters

Only used if SubscriptionEvent = created

X

Priority

Int64

Priority of the created orders resulting from the subscription. It is an integer from 1-100, where 100 is the highest priority.


Only provided if:
- SubscriptionEvent = created
AND
- the Subscription has stageOrder=true

There is always a priority associated to an order: if it is not set within the Subscription Create Request, then it is automatically set to the default priority assigned to the user. If the Subscription Create Request sets a priority higher than the highest priority assigned to the user then it is automatically set at the highest priority assigned.

X

NotificationEndpoint

String

URI used by the element for subscription notifications

X

X

X

NotificationEpUsername

String

The username associated with the EndPoint URI provided

Mandatory if NotificationEndpoint requires authentication

X

X

X

NotificationEpPassword

String

The password associated with the EndPoint URI provided

Mandatory if NotificationEndpoint requires authentication

X

X

X

Table 13 – Subscription Entity Properties and GS Applicability

3.16 Notification

The Notification entity is a notification to users concerning products which they have requested to be notified on, either which are now available on the GS element, specifically available for download, or deleted.

Notification Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

ProductId

Guid

The universally unique identifier (UUID) of the product being notified. Maps to Product.Id

X

X

X

ProductName

String

The data file name of the product being notified. Maps to Product.Name

X

X

X

SubscriptionId

Guid

The UUID of the Subscription being notified. Maps to Subscription.Id

X

X

X

OrderId

Guid

The UUID of the order being notified. Maps to Order.Id

X

BatchOrderId

Guid

The UUID of the BatchOrder being notified. Maps to BatchOrder Id

X

SubscriptionEvent

SubscriptionEvent

The subscription event set in the parent Subscription to be monitored and for which notification is provided, from:
- created
- deleted

X

NotificationDate

DateTimeOffset

Date and time at which the notification was generated. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

Table 14 – Notification Entity Properties and GS Applicability

3.17 GS Element (or Service)

System Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

String

Unique string identifier of the GS Element

X

X

X

X

Organisation

String

Organisation responsible for GS Element

X

X

X

X

Logo

String

Logo of the System Element

X

X

X

X

Location

Coordinates of the System Element

X

X

X

X

Description

String

Description of the System

X

X

X

X

Available to the reporting user


3.18 User

The User entity is a read-write entity that allows to define details of the user the system role of the user within the GS element. It is identified by the key property Username.

User Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Username

String

Unique string identifier of the User

X

X

X

X

Email

String

Email of the User

X

X

X

X

ServiceAlias

String

Generic string to describe the client

X

X

X

X

Country

String

Country of the user

X

Domain

String

Domain of the User, selected from:

-Atmosphere

-Climate

-Emergency

-Land

-Marine

-Security

-Other

X

SubDomain

String

-SubDomain if Domain is Other

X

Usage

Usage of the User, selected from:

-Commercial

-Education

-Research

-Other

X

SubUsage

String

-SubUsage if Usage is Other

X

Created

DateTimeOffset

Date/time of user creation. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

X

DefaultPriority

Int64

The default order priority assigned to the User. It is an integer from 1-100 (TBC), where 100 is the highest priority.

X

X

MaxPriority

Int64

The maximum priority which can be assigned to an order by the User. It is an integer from 1-100 (TBC), where 100 is the highest priority.

It must be equal to or higher than the DefaultPriority

X

X

OrderQuota

Int64

Refers to the maximum number of orders for allowed to be processed in parallel (i.e. in status in_progress) which a user may have ongoing at a particular time.

X

X

X

DownloadQuota

Int64

Refers to the maximum number of downloads that may be performed in parallel by the user.

X

X

X

X

BatchOrderQuota

Int64

X

OrderTimeQuota

(Quota, Interval)

OrderTimeQuota

Refers to the maximum number of Orders (as Int64) allowed to be submitted by a user in a given time period (e.g. 1 hour or 1 day – defined in seconds (as Int64)).

X

ProductionOrderQuota

Int64

Refers to the maximum number of On-Demand Production Orders allowed to be processed in parallel (i.e. in status in_progress) which a user may have ongoing at a particular time.

X

ProductionOrderTimeQuota

(Quota, Interval)

ProductionOrderTimeQuota

Refers to the maximum number of On-Demand Production Orders (as Int64) allowed to be submitted by a user in a given time period (e.g. 1 hour or 1 day – defined in seconds (as Int64))

X

Table 15 – User Entity Properties and GS Applicability

3.19 SystemRole

The SystemRole entity describes the rights and capabilities granted to a user.

SystemRole Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Name

SystemRole enumeration

Unique string identifier of the Role, defining which functions may be accessed

X

X

X

X

Description

String

Textual description of the Role

X

X

X

X

Table 16 – SystemRole Entity Properties and GS Applicability

3.20 Restriction

The Restriction entity describes any restriction which may apply to a user’s account.

SystemRole Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

The unique identifier of the restriction.

X

RestrictionType

RestrictionType enumeration

Any of:

-LockedAccessRestriction

-TmpUserLockedAccessRestriction

-TBD

X

Reason

String

Message explaining what caused the restriction on the user

X

Table 17 – Restriction Entity Properties and GS Applicability

4 Generic Reporting Interface

This section describes the reporting statistics to be provided on a routine basis by all GS elements. This is largely concerned metrics for summary reporting and monitoring. For additional reporting at the specific element level, the lower level ICDs should be referred to.

4.1 Metrics Reporting Model

Metrics Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Name

String

Name of metric according to a standard naming convention TBW

X

X

X

X

Timestamp

DateTimeOffset

Date/time of metric reporting. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

X

MetricType

Enum

Gauge or Counter

X

X

X

X

Gauge

String

Value of Gauge at reporting timestamp (mandatory if MetricType=Gauge)

X

X

X

X

Counter

Int64

Value of Counter at reporting timestamp

(mandatory if MetricType=Counter)

X

X

X

X

Example metrics are described below.

Metric

Description

Type

Archived.<productType>.<platformShortName>.<platformSerialIdentifier>.size

Cumulative volume of <productType> of mission

<platformShortName>.<platformSerialIdentifier> in archive in Bytes

Counter

Archived.<productType>.<platformShortName>.<platformSerialIdentifier>.count

Cumulative number of <productType> of mission <platformShortName>.<platformSerialIdentifier> in archive

Counter

Archived.<platformShortName>.<platformSerialIdentifier>.size

Total cumulative volume of data in archive for <platformShortName> <platformSerialIdentifier>.

Counter

Archived.<platformShortName>.<platformSerialIdentifier>.count

Total cumulative number of products in archive for <platformShortName> <platformSerialIdentifier>.

Counter

Retrieved.<productType>.<platformShortName>.<platformSerialIdentifier>.size

Cumulative volume of <productType> of mission <platformShortName>.<platformSerialIdentifier> ordered and delivered to archive interface point in Bytes

Counter

Retrieved.<productType>.<platformShortName>.<platformSerialIdentifier>.completed

Cumulative number of <productType> of mission <platformShortName>.<platformSerialIdentifier> ordered and delivered to archive interface point

Counter

Retrieved.<productType>.<platformShortName>.<platformSerialIdentifier>.failed

Cumulative number of <productType> of mission <platformShortName>.<platformSerialIdentifier> ordered and failed to be delivered to archive interface point

Counter

Download.<productType>.<platformShortName>.<platformSerialIdentifier>.<ServiceAlias>.completed

Cumulative number of <productType> of mission <platformShortName>.<platformSerialIdentifier> downloads completed (by <ServiceAlias>)

Counter

Download.<productType>.<platformShortName>.<platformSerialIdentifier>.<ServiceAlias>.failed

Cumulative number of <productType> of mission <platformShortName>.<platformSerialIdentifier> downloads failed (by <ServiceAlias>)

Counter

Download.<productType>.<platformShortName>.<platformSerialIdentifier>.<SerivceAlias>.size

Cumulative size of <productType> of mission <platformShortName>.<platformSerialIdentifier> downloaded (by <ServiceAlias>) in Bytes

Counter

OriginToPublication.Daily.min.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Daily minimum time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of 24 hours)

Gauge

OriginToPublication.Daily.max.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Daily maximum time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of 24 hours)

Gauge

OriginToPublication.Daily.avg.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Daily average time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of 24 hours)

Gauge

OriginToPublication.Monthly.min.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Monthly minimum time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of last month)

Gauge

OriginToPublication.Monthly.max.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Monthly maximum time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of last month)

Gauge

OriginToPublication.Monthly.avg.time.<productType>.<platformShortName>.<platformSerialIdentifier>

Monthly average time difference in seconds between PRIP PublicationDate and LTA PublicationDate of <productType> of mission <platformShortName>.<platformSerialIdentifier> (sliding window of last month)

Gauge

SubmissionToCompletion.Daily.min.time

Minimum time from order submission to delivery on archive interface point (sliding window of 24 hours)

Gauge

SubmissionToCompletion.Daily.max.time

Maximum time from order submission to delivery on archive interface point (sliding window of 24 hours)

Gauge

SubmissionToCompletion.Daily.avg.time

Average time from order submission to delivery on archive interface point (sliding window of 24 hours)

Gauge

SubmissionToCompletion.Monthly.min.time

Minimum time from order submission to delivery on archive interface point (sliding window of last month)

Gauge

SubmissionToCompletion.Monthly.max.time

Maximum time from order submission to delivery on archive interface point (sliding window of last month)

Gauge

SubmissionToCompletion.Monthly.avg.time

Aveage time from order submission to delivery on archive interface point (sliding window of last month)

Gauge

Service.<KPI>.value

KPI value

Gauge

4.2   Event Reporting Model

The Event entity records information on events concerning a GS element which have taken place or are planned to take place in the future. Events include, for example, planned unavailabilities due to service or infrastructure maintenance and unplanned availabilities due to e.g. network issues.

Event Property

Type

Description

GS Element Applicability

PRIP

DA

LTA

AUXIP

Id

Guid

It is a universally unique identifier (UUID).

The Id is a local identifier for the Event instance within the element, assigned upon creation of the Event.

X

X

X

Title

String

Title of the Event (concise summary)

X

X

X

Description

String

Description of the Event

X

X

X

EventCategory

Category enumeration

Chosen from a predefined list of categories (single selection available):

-Service Maintenance

-Infrastructure

-Maintenance

-Network

-AIP

-PRIP

-TBC

X

X

X

EventDate (start and stop)

TimeRange

The Event range period. Times are in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

PublicationDate

DateTimeOffset

Publication date and time of the Event entity. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

ModificationDate

DateTimeOffset

Last modificaion date and time of the Event entity. Time is in UTC in the format YYYY-MM-DDThh:mm:ss.sssZ

X

X

X

MissionTag

MissionTag enumeration

Chosen from a predefined list of missions (multiple selection available):
- Sentinel-1
- Sentinel-2
- Sentinel-3
- Sentinel-5p

X

X

InstrumentTag

InstrumentTag enumeration

Chosen from a predefined list of instruments (multiple selection available):
- SAR
- Optic
- SRAL
- OLCI
- SLSTR
- Synergy

X

X

LocalEvent

Boolean

TBD

X

PublicEvent

Boolean

TBD

X

DistributionScope

DistributionScope enumeration

This field is relevant only for events concerning the Service availability. Chosen from a predefined list of Data Access entities (multiple selection available):
- Long Term Archive
- Data Access
- Systematic Processing
- On-Demand Processing

X

X

X

InformationUrl

String

External link to the information within anomaly tracking.

X

X

X

Service

Boolean

Event service calendar flag:
- TRUE = service availability;
- FALSE = product availability

X

Table 18 – Event Entity Properties and GS Applicability

5 OData Enumerations

The list of OData enumerations, the entities to which they are applicable and available list of values, are provided in the table below.

Enumeration

List of Values

Applicable Entities

EventCategory

Service Maintenance

Infrastructure

Maintenance

Network

AIP

TBC

Event

DistributionScope

Data Access – Open Access

Data Access – Collaborative Access

Long Term Archive

On-Demand Processing

Systematic Processing

Event

Domain

Atmosphere

Climate

Emergency

Land

Marine

Security

Other

User

InstrumentTag

SAR

Optic

SRAL

OLCI

SLSTR

Synergy

Event

JobStatus

queued

created

in_progress

completed

failed

cancelled

Order

Bulk

BatchOrder

ProductionOrder

MissionTag

Sentinel-1

Sentinel-2

Sentinel-3

Sentinel-5p

Event

ProductionType

systematic_production

on-demand default

on-demand non-default

Product (PRIP)

RestrictionType

ExpiredAccessRestriction

LockedAccessRestriction

TmpUserLockedAccessRestriction

Restriction

SubscriptionEvent

created

deleted

Subscription

Notification

SubscriptionStatus

running

paused

cancelled

Subscription

SystemRoles

Search

Download

Order

Bulk

Reporting

UserAdmin

SystemRole

Usage

Commercial

Education

Research

Other

User

MetricType

Gauge

Counter

Metric

6 Interface Delivery Point Naming

Each interface delivery point within the CSC ESA Ground Segment Operations Framework shall apply a common naming schema.

The domain name for the interface delivery point should in general follow the schema below:

csc-<ele>-<name>.copernicus.eu

This defines the service-root-uri at which the interface delivery point may be addressed, and where <ele> describes the Ground Segment Element according to:

xbi

X-Band Service

pro

Production Service

lta

Long Term Archive Service

adg

Auxiliary Data Gathering Service

pod

Precise Orbit Determination

mpc

Mission Performance Cluster

and where <name> is a 4 letter acronym uniquely indicating the service provider within that service domain

Requests for DNS naming can be made through “ICF Next” (exact contact point to be specified at a later stage), specifying the IP address to which the domain shall be associated.

When making such a request the ESA Technical Officer of the relevant contract shall be copied and the request to “ICF Next” shall specify “This DNS naming request is for the purposes of the EU Copernicus Sentinels Operations as a service under contract to the European Space Agency”.


Appendix A Interface Delivery Point Conformance Approach

The present annex provides an overview of the Interface Delivery Points conformance approach.

ESA provides a freely available compliance test suite that may be used by each GS element service to run independent tests on their IDP. The test suite is provided as a Postman Collection JSON file consisting of a set of (OData) requests to be sent to the IDP as well as a series of test scripts for verifying the received responses.

The Ground Segment Interface Delivery Point test suite is available at: https://github.com/SercoSPA/CSC-Ground-Segment-Interface-Delivery-Point-Test-Suite

The test suite uses automatically generated Ground Segment interface tests in Postman. The Collection is based on the specifications of [AD-1] to [AD-5], as well as those described in [RD-3], [RD-4], [RD-5] and [RD-6].

Picture 8

Figure 2: Overview of the GS IDP Test Suite Preparation

The Postman Test Suite Collection is divided into logical folders:

-Mission Specific folders, containing tests based on [AD-1] to [AD-5], and divided by IDP subfolders: PR (=PRIP), DA, LTA, POD

-Filters folder, containing tests for the Product and Attributes entities

-Entity Specific folders, focusing on testing the main entities of each GS element: Orders, Bulk and Batch Orders, Subscriptions, Metrics

Contents

Scroll to Top