HMAS Specifications OGC 14 012 OGC RESTful encoding

  • Slides: 22
Download presentation
HMA-S Specifications OGC 14 -012 OGC RESTful encoding of Sensor Planning Service for Earth

HMA-S Specifications OGC 14 -012 OGC RESTful encoding of Sensor Planning Service for Earth Observation satellite Tasking N. Fanjeau, Airbus Defence & Space June 11, 2014 OGC TC Geneva / HMA-S /FP Page 1 - 11/06/2014

Summary • Overview • Items • Operations • Methodology • Resources – Capabilities –

Summary • Overview • Items • Operations • Methodology • Resources – Capabilities – URLs • Resources – Capabilities – HTTP Methods • Resources – Procedure – URLs & Parameters • Error Handling • Requirement Classes • Best Practice • Demonstrator • ETS • Resources OGC TC Geneva / HMA-S /FP Page 2

Overview • The OGC Best Practice document OGC 14 -012 OGC RESTful encoding of

Overview • The OGC Best Practice document OGC 14 -012 OGC RESTful encoding of Sensor Planning Service for Earth Observation Satellite Tasking (RESET) is a “RESTful” version of the OGC 10 -135 OGC Sensor Planning Service Interface Standard 2. 0 Earth Observation Satellite Tasking Extension allowing accessing to Feasibility and Mission Planning functions via appropriate HTTP requests and not via SOAP based Web Services calls. • In this way Feasibility and Planning functions will be available to Web browsers without the need of more complex infrastructures based on SOAP. • This protocol covers, in RESTful way, the 6 mandatory operations and 10 optional. OGC TC Geneva / HMA-S /FP Page 3

Items • Sensor description, which permits to give descriptions of the sensors that can

Items • Sensor description, which permits to give descriptions of the sensors that can be tasked. These descriptions can be provided in multiple OGC standards, including Sensor. ML, SOS, etc. • Tasking requests, which are the requests to be sent, that contain all the information to configure the acquisition of a sensor, or set of sensors; • Feasibility Study, which describes the result of a study of feasibility. This preliminary process permits to calculate the possibilities offered by a given sensor to perform a given tasking request. This structure contains a list of Segment, which represent a given acquisition. • Programming Status, that describes the results of the submission of a task. It describes the current status of the Segment, which represent a single acquisition. OGC TC Geneva / HMA-S /FP Page 4

Operations • Get. Capabilities M • Get. Status M • Describe. Sensor M •

Operations • Get. Capabilities M • Get. Status M • Describe. Sensor M • Get. Task M • Describe. Tasking M • Describe. Result. Access O • Get. Sensor. Availibility O • Cancel O • Get. Station. Availibility O • Validate O • Get. Feasibility O • Reservation system: – Reserve O • Submit M – Update O • Submit. Segment. By. ID O – Confirm O • O, Optional • M, Mandatory OGC TC Geneva / HMA-S /FP Page 5

Methodology The structure has been defined after reviewing other OGC REST specifications: WMTS, WFS

Methodology The structure has been defined after reviewing other OGC REST specifications: WMTS, WFS REST binding change request, WCS Extension for REST binding. – Structured by Resources: Capabilities, Procedure, Feasibility, Planning & Reservation. Each resource has a dedicated section including description, URLs, supported HTTP methods. – Addressability: each identified resource has specified URLs. – Uniform interface: the operations performed on resources are only the Methods of HTTP protocol: • GET for reading a resource; • POST for creating a resource with ID defined by the server; • PUT for creating / replacing a resource with ID defined by the client; • DELETE for deleting a resource. – Connectdness: each resource has links (URLs) to the other related resources. OGC TC Geneva / HMA-S /FP Page 6

Resources – Capabilities - URLs <Service Root URL> http: //<host. Name>: <host. Port>/<cont ext.

Resources – Capabilities - URLs <Service Root URL> http: //<host. Name>: <host. Port>/<cont ext. Path> <ROSEO Root Path> <Service Root URL>/RESET/<version> URL <Capabilities. Resource. URL> <Service. Identification> <Service. Provider> <Operations. Metadata> <Notifications> <Contents> OGC TC Geneva / HMA-S /FP Definition <Reset. Root. Path> <Capabilities. Resource. URL>/identification <Capabilities. Resource. URL>/provider <Capabilities. Resource. URL>/operations <Capabilities. Resource. URL>/notifications <Capabilities. Resource. URL>/contents Page 7

Resources – Capabilities – HTTP Methods HTTP Method GET URL <RESET Root Path> It

Resources – Capabilities – HTTP Methods HTTP Method GET URL <RESET Root Path> It returns the complete capabilities document. <RESET Root It returns the Path>/Service. Identificatio ion n element. <RESET Root It returns the Path>/Service. Provider element. <RESET Root It returns the Path>/Contents element. <RESET Root It returns the Path>/Operations. Metadat ata a element. <RESET Root Path>/Notifications OGC TC Geneva / HMA-S /FP Definition It returns the Notifications element. Page 8 Request Entity Response Body Entity Body Empty <sps: Capabilities > element instance Empty Empty <ows: Service. Ide ntification> element instance <ows: Service. Pro vider> element instance <sps: Contents> element instance <ows: Operations. Metad ata > element instance <sps: Notifications > element instance

Resources – Procedure – URLs & Parameters URL <Procedure. Resource. URL> <Sensor Description> in

Resources – Procedure – URLs & Parameters URL <Procedure. Resource. URL> <Sensor Description> in canonical XML format <Sensor and Tasking Description> in Open. Search Description Document (OSDD) <Tasking Description> <Availability> Names Definition <Reset. Root. Path>/procedures/{procedure} / <Procedure. Resource. URL>/{sensor. Descript ion. Format} <Procedure. Resource. URL>/osdd <Procedure. Resource. URL>/tasking <Procedure. Resource. URL>/availability Definition {procedure} Identifier of the sensor, or sensor type, which description is required. {sensor. Description. For XML format in which the mat} sensor description is required. OGC TC Geneva / HMA-S /FP Page 9 Data type and values xs: string (max 255 chars) URL encoded

Resources – Procedure – HTTP Methods & Parameters HTTP Method GET URL Definition Request

Resources – Procedure – HTTP Methods & Parameters HTTP Method GET URL Definition Request Entity Body Response Entity Body <Reset. Root. Path>/proced It returns the Empty ures/{procedure}/{sensor description of the Description. Format} sensor in the required format. <Reset. Root. Path>/proced It returns the Empty ures/{procedure}/osdd Service. Identificatio n element. <Reset. Root. Path>/proced It returns the Empty ures/{procedure}/tasking Service. Provider element. <eosps: eo. Tasking. Parameters > element instance <Reset. Root. Path>/proced It returns the Empty ures/{procedure}/availabi Contents element. lity <eosps: Get. Sensor. Avail ability. Response> element instance Names {procedure} <swes: procedure. Description. For mat > element instance Definition Data type and value Identifier of the sensor, or sensor xs: string (max 255 chars) type, which description is required. URL encoded {sensor. Description. Format} XML format in which the sensor description is required. OGC TC Geneva / HMA-S /FP <swes: Service. Identifica tion> element instance Page 10 Allowed values are described in the Capabilities. xs: string (max 255 chars) URL encoded Allowed values are described in the Capabilities.

Resources – Feasibility – URLs & Parameters URL <Feasibility. Resource. URL> / <All. Tasks>

Resources – Feasibility – URLs & Parameters URL <Feasibility. Resource. URL> / <All. Tasks> <Task Status By ID> in canonical XML format <Task. Segments. By. ID> in canonical XML format Names {task. Id} OGC TC Geneva / HMA-S /FP Definition <Reset. Root. Path>/feasibility/ <Feasibility. Resource. URL>/{task. Id}/seg ments Definition Identifier of the task required by the user. Page 11 Data type and values xs: string (max 255 chars) URL encoded

Resources – Feasibility – HTTP Methods & Parameters HTTP Method GET URL <Reset. Root.

Resources – Feasibility – HTTP Methods & Parameters HTTP Method GET URL <Reset. Root. Path> /feasibility/{task. Id}/segments Definition Equivalent to Get. Status Request Entity Body Empty Response Entity Body < eosps: Status. Report > element instance It returns the status of a task. Equivalent to Get. Task. Empty < eosps: Status. Report > element instance It returns the results of a task. POST Names {task. Id} {segment. Id} { is. Synchronous } OGC TC Geneva / HMA-S /FP <Reset. Root. Path> Equivalent to Get. Feasibility /feasibility? synchronous={is. S ynchronous} Permits to perform a Feasibility analysis. EO-SPS: Tasking Parameters <Reset. Root. Path>/ feasibility/{task. Id}/ segments/{segment. ID*} Empty Equivalent to Submit. Segment. By. ID. It permits to submit the segments resulting from a Feasibility Analysis. < eosps: Feasibility. Study> element instance < eosps: Status. Report > element instance < eosps: Feasibility. Study> element instance if synchronous processing < eosps: Status. Report > element instance <eosps: Feasibility. Study> element instance Definition Data type and value Identifier of the sensor, or sensor type, xs: string (max 255 chars) which description is required. URL encoded Allowed values are described in the Get. Task operation. Identifier of a segment, within the given xs: string (max 255 chars) task, to be submitted for planning. URL encoded Allowed values are described in the Get. Task operation A Boolean permitting the client between xs: boolean (true or false) synchronous and asynchronous processing when starting a feasibility Page 12 analysis.

Resources – Planning – URLs & Parameters URL <Planning. Resource. URL> / <All. Tasks>

Resources – Planning – URLs & Parameters URL <Planning. Resource. URL> / <All. Tasks> <Task Status By ID> in canonical XML format <Task. Segments. By ID> in canonical XML format <Task. Results. By ID> in canonical XML format <Segment. By ID> in canonical XML format Names {task. Id} {segment. Id} OGC TC Geneva / HMA-S /FP Definition <Reset. Root. Path>/planning/ < Planning. Resource. URL >/{task. Id}/segments < Planning. Resource. URL >/{task. Id}/results < Planning. Resource. URL >/{task. Id}/segments/{segment. Id} Definition Identifier of the task required by the user. Data type and values xs: string (max 255 chars) URL encoded Identifier of the segment of xs: string (max 255 chars) the task required by the user. URL encoded Page 13

Resources – Planning – HTTP Methods & Parameters HTTP Method GET URL <Reset. Root.

Resources – Planning – HTTP Methods & Parameters HTTP Method GET URL <Reset. Root. Pa th>/ planning/{tas k. Id}/segment s <Reset. Root. Pa th>/ planning/{tas k. Id}/results POST <Reset. Root. Pa th>/ planning/ <Reset. Root. Pa th/ planning/{tas k. Id}/ segments/{se gment. ID*} PUT Definition Request Entity Response Entity Body Equivalent to Empty <eosps: Status. Re Get. Status port> element instance It returns the status of a task. Equivalent to Empty <eosps: Status. Re Get. Task. port> element instance It returns the results of a <eosps: Program task. ming. Status> element instance Equivalent to Empty <sps: Describe. Resul sult. Access Document> It returns the links to the <sps: Data. Availa products ble> generated by the task. <sps: Data. Not. Av ailable> Equivalent to EO-SPS: <eosps: Status. Re Submit Tasking port> element Parameters instance Permits to perform a <eosps: Program Planning ming. Status> request. element instance Equivalent to Empty < Validate. eosps: Status. Rep ort > element instance It permits to validate a (set of) <eosps: Program segment(s). ming. Status> element instance Not used by this document. DELETE <Reset. Root. Pa Equivalent to Empty th>/ Cancel. planning/{tas It permits to k. Id} cancel a task that has been submitted earlier. OGC TC Geneva / HMA-S /FP Names {task. Id} Data type and value xs: string (max 255 chars) URL encoded Allowed values are described in the Get. Task operation. xs: string (max 255 chars) {segment. Id Identifier of a } segment, within the URL encoded given task, to be submitted for Allowed values are described planning. in the Get. Task operation. <eosps: Status. Re port> element instance <eosps: Program ming. Status> element instance Definition Identifier of the sensor, or sensor type, which description is required. Page 14

Resources – Reservation – URLs & Parameters URL <Reservation. Resource. URL> / <All. Tasks>

Resources – Reservation – URLs & Parameters URL <Reservation. Resource. URL> / <All. Tasks> <Task By ID> in canonical XML format Names {task. Id} OGC TC Geneva / HMA-S /FP Definition <Reset. Root. Path>/reservation/ <Reservation. Resource. URL>/{task. Id} Definition Identifier of the task required by the user. Page 15 Data type and values xs: string (max 255 chars) URL encoded

Resources – Reservation – HTTP Methods & Parameters HTTP Method GET POST URL Definition

Resources – Reservation – HTTP Methods & Parameters HTTP Method GET POST URL Definition <Reset. Root. Pat Equivalent to h>/ Get. Task. reservation/{t ask. Id} It returns the results of a task. <Reset. Root. Pat Equivalent to h>/ Reserve planning/ Permits to reserve a Planning request. <Reset. Root. Pat Equivalent to h/ Confirm. planning/{task Id}/ It permits to validate a task by sending it to the mission planning system. PUT <Reset. Root. Pat Equivalent to h>/ Update. reservation/{t ask. Id} It permits to update the tasking parameters of a task. DELETE <Reset. Root. Pat Equivalent to h>/ Cancel. planning/{task It permits to Id} cancel a task that has been reserved OGC TC Geneva / HMA-S /FP earlier. Request Entity Response Entity Body Empty <eosps: Status. Re port> element instance EO-SPS: Tasking Parameters Empty <eosps: Program ming. Status> element instance <eosps: Status. Re port> element instance <eosps: Program Names ming. Status> element instance {task. Id} < eosps: Status. Repo rt > element instance <eosps: Program ming. Status> element instance EO-SPS: Tasking Parameters Empty < eosps: Status. Repo rt > element instance <eosps: Program ming. Status> element instance <eosps: Status. Re port> element instance Page 16 Definition Data type and value Identifier of the xs: string (max 255 chars) sensor, or sensor URL encoded type, which description is Allowed values are required. described in the Get. Task operation.

Error Handling • In the event that a RESET server encounters an error during

Error Handling • In the event that a RESET server encounters an error during the access to some resource, then it returns an HTTP response including: – HTTP Status Code: 4 XX for errors on the client side; 5 XX for errors on server side. – HTTP Entity Body: ows: Exception. Report element. • The specific values for Status Code and ows: Exception. Report depend on the accessed resource and performed HTTP method. There are dedicated errors for each of them. OGC TC Geneva / HMA-S /FP Page 17

Requirement Classes • • • Core, minimum behaviour that all RESET servers shall implement.

Requirement Classes • • • Core, minimum behaviour that all RESET servers shall implement. Operations Tasking description, Sensor description or Task description. Feasibility, for performing a feasibility analysis process. Planning, for performing a planning process. Feasibility Planning, for performing a feasibility analysis process, and then submitting the results of this process. Reservation, for performing a feasibility analysis process, and then submitting the results of this process. Cancellation, for performing the cancel Page of 18 planning or reservation process. OGC TC Geneva / HMA-S /FP

Best Practice OGC TC Geneva / HMA-S /FP Page 19

Best Practice OGC TC Geneva / HMA-S /FP Page 19

Demonstrator OGC TC Geneva / HMA-S /FP Page 20

Demonstrator OGC TC Geneva / HMA-S /FP Page 20

ETS OGC TC Geneva / HMA-S /FP Page 21

ETS OGC TC Geneva / HMA-S /FP Page 21

Resources • Google Code: • restful-sps-earth-observation-server https: //code. google. com/p/restful-sps-earth-observation-server/ • opensearch-earth-observation-products-system https: //code.

Resources • Google Code: • restful-sps-earth-observation-server https: //code. google. com/p/restful-sps-earth-observation-server/ • opensearch-earth-observation-products-system https: //code. google. com/p/opensearch-earth-observation-products-system/ OGC TC Geneva / HMA-S /FP Page 22