Skip to content

Commit 1bc21dc

Browse files
committed
Clarifications
1 parent e472bc6 commit 1bc21dc

File tree

1 file changed

+28
-4
lines changed

1 file changed

+28
-4
lines changed

crosswalks/ogcapi-processes.md

+28-4
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,27 @@ This document gives a brief overview over similarities and differences between
66

77
In the following I use **OAP1** as an abbreviation for **OGC API - Processes - Part 1**.
88

9-
## General
9+
## Introduction
1010

1111
OCG API - Processes defines just processing, while the openEO API has a much broader scope.
1212
openEO covers many parts that other OGC API specifications define, some are aligned some are not.
1313

14+
### tl;dr
15+
16+
Conceptually the APIs are similar, but have some conflicts that can't be resolved easily
17+
(e.g. process description with multiple outputs in OAP1, job listing with different job status values).
18+
19+
A key differentiator between OAP1 and openEO is that process chaining is a fundamental concept in openEO
20+
to build your own workflows while OAP1 is more meant to run larger "black box" workflows. You can add
21+
workflows with Part 3 of OGC API - Processes.
22+
23+
Another key differentiator is that openEO has a list of pre-defined but extensible processes available
24+
while OGC API - Processes doesn't predefine processes.
25+
26+
As such the target audience of OAP1 and openEO is probably only partially overlapping.
27+
1428
The openEO API covers the following "categories" of endpoints:
29+
1530
- [API discovery](#api-discovery) - partially covered by OGC API - Processes - Part 1
1631
- [Authentication](#authentication) - not defined by OGC
1732
- [Data Discovery](#data-discovery) - covered by various other OGC APIs (Coverages, EDR, Features, Records, ...)
@@ -24,6 +39,8 @@ The openEO API covers the following "categories" of endpoints:
2439
- [On-demand processing](#on-demand-processing) - covered by other OGC APIs (Maps, Tiles, ...)
2540
- [File Storage](#file-storage) - not covered by OGC APIs
2641

42+
## General API mechanics
43+
2744
Both APIs use HTTP as the basis and encourage HTTPS.
2845
HTTP 1.1 is required for OAP1, while openEO doesn't specify a specific HTTP version.
2946
The APIs follow REST principles and make use of HTTP content negotiation.
@@ -132,11 +149,18 @@ and OAP1 still provides a predefined set of fields which conflict with openEO (s
132149

133150
The openEO API specifies a single encoding for process descriptions.
134151

135-
An important difference is that in OAP1 you usually execute just one process
152+
An important difference is that in OAP1 you just execute one process
136153
(you can optionally chain them using OGC API - Processes - Part 3).
137-
This means a process in OAP1 are usually more complex.
138-
In openEO a process is usually very fine-granular (e.g. addition of two numbers)
154+
This means a process in OAP1 is often more complex.
155+
In openEO a process is often very fine-granular (e.g. addition of two numbers)
139156
and you usually chain multiple of them to a more complex process (graph).
157+
The process chaining into a full graph is fundamental in openEO.
158+
159+
Another major difference is that in openEO there are
160+
[pre-defined process descriptions available for common use cases](https://processes.openeo.org).
161+
OGC API - Processes doesn't provide pre-defined process descriptions.
162+
In theory, you could re-use the openEO processes in OGC API - Processes
163+
if OGC API - Processes - Part 3 is implemented for chaining.
140164

141165
### Pre-defined processes
142166

0 commit comments

Comments
 (0)