@@ -6,12 +6,27 @@ This document gives a brief overview over similarities and differences between
66
77In the following I use ** OAP1** as an abbreviation for ** OGC API - Processes - Part 1** .
88
9- ## General
9+ ## Introduction
1010
1111OCG API - Processes defines just processing, while the openEO API has a much broader scope.
1212openEO 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+
1428The 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+
2744Both APIs use HTTP as the basis and encourage HTTPS.
2845HTTP 1.1 is required for OAP1, while openEO doesn't specify a specific HTTP version.
2946The 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
133150The 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)
139156and 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