# Process Profiles
The following image provides an overview of the openEO Processes profiles. The minimal profile that allows an openEO implementation to be called "openEO-compliant" is L1 Minimal.
- L1 Minimal ensures that the openEO implementation has a minimal set of functionality which allow users to execute basic use-cases.
- L2 Recommended add functionality that we recommend to be available so that users can more effectively make use of the openEO implementation.
- L3 Advanced allows users to execute more advanced use cases.
- L4 Above and Beyond adds very specific and complex requirements for very specific and highly advanced use cases.
There are various sub-profiles in L2 (e.g., L2-Date) and L3 (e.g., L3-ML) that add a specific set of functionalities centered around specific needs such as date/time manipulation or execution of machine learning workflows.
In the following chapter you can find a list of requirements per profile.
# Requirements per Profile
Note
Missing experimental processes should (by default) lead to a "warning", but not lead to a rejection of that level in openEO.
# L1: Minimal
absolute
add
and
apply
apply_dimension
- All dimensions that your datacubes can include are supported - x and y can usually be excluded
arccos
arcsin
arctan
array_concat
array_create
array_element
between
ceil
clip
constant
cos
divide
e
eq
exp
first
floor
gt
gte
int
last
ln
load_collection
- Parameter
temporal_extent
: All temporal formats are supported (date-time and date)
- Parameter
log
lt
lte
max
mean
median
min
mod
multiply
neq
not
or
pi
power
product
quantiles
reduce_dimension
- Parameter
reducer
: At least all processes (up to L1) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes). - Parameter
dimension
: All dimensions that your datacubes can include are supported - x and y are excluded as they are handled with reduce_spatial
- Parameter
round
save_result
sd
sgn
sin
sqrt
subtract
sum
tan
variance
# L2: Recommended
add_dimension
- Parameter
name
: All suitable dimensions are supported
- Parameter
aggregate_temporal
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes). - Parameter
reducer
: Supports access to labels in the callback - Parameter
dimension
: All suitable dimensions are supported
- Parameter
aggregate_temporal_period
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes). - Parameter
reducer
: Supports access to labels in the callback - Parameter
dimension
: All suitable dimensions are supported - Parameter
period
:enum
reflects implemention (all values are supported)
- Parameter
all
any
apply_dimension
- Parameter
process
: Supports access to labels in the callback
- Parameter
arcosh
arctan2
array_element
- Supports labeled arrays
array_find
arsinh
artanh
cosh
count
dimension_labels
- Parameter
dimension
: All suitable dimensions are supported
- Parameter
drop_dimension
- Parameter
name
: All suitable dimensions are supported
- Parameter
extrema
filter_bbox
filter_temporal
- Parameter
dimension
: All suitable dimensions are supported - All temporal formats are supported (date-time and date)
- Parameter
if
inspect
(experimental)- Parameter
level
:enum
reflects implemention (all values are supported)
- Parameter
is_nan
is_nodata
is_valid
linear_scale_range
nan
(experimental)normalized_difference
reduce_dimension
- Parameter
reducer
: At least all processes (up to L2) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes). - Parameter
reducer
: Supports access to labels in the callback
- Parameter
rename_dimension
rename_labels
- Parameter
dimension
: All dimensions that your datacubes can include are supported - x and y can usually be excluded
- Parameter
sinh
sort
tanh
xor
# L2A: Recommended Raster
aggregate_spatial
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes).
- Parameter
apply_kernel
- Parameter
border
:enum
reflects implemention (all values are supported)
- Parameter
filter_bands
- Supports filtering by band name
filter_spatial
load_collection
- Parameter
bands
: Supports filtering by band name and common name
- Parameter
mask
mask_polygon
resample_spatial
- Parameter
method
:enum
reflects implemention (all values are supported)
- Parameter
# L2B: Recommended Vector
filter_vector
(experimental)vector_buffer
(experimental)vector_reproject
(experimental)
# L2-Date: Date & Time manipulation
date_between
(experimental)date_difference
(experimental)date_shift
(experimental)
# L2-Text: Text manipulation
text_begins
text_concat (text_merge)
text_contains
text_ends
# L3: Advanced
add_dimension
- Parameter
type
:enum
reflects implemention (all values are supported)
- Parameter
aggregate_spatial
- Parameter
reducer
: Supports access to labels in the callback - Parameter
context
: is supported and passed to the callback
- Parameter
aggregate_spatial_window
(experimental)aggregate_temporal
- Parameter
context
: is supported and passed to the callback - All temporal formats are supported (date-time, date and time)
- Parameter
aggregate_temporal_period
- Parameter
context
: is supported and passed to the callback
- Parameter
apply
- Parameter
process
: At least all processes (up to the level of this requirement) in the categoriescomparison
,logic
andmath
can be used (also in a chain of processes). - Parameter
context
: is supported and passed to the callback
- Parameter
apply_dimension
- Parameter
process
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes). - Parameter
context
: is supported and passed to the callback
- Parameter
apply_neighborhood
- Parameter
process
: Supports access to labels in the callback - Parameter
context
: is supported and passed to the callback - Parameter
data
: All listed label types supported. - Parameter
size
/overlap
: Unitsm
,px
andnull
are supported
- Parameter
array_append
- Supports labeled arrays
array_apply
- Parameter
process
: Supports access to labels in the callback - Parameter
context
: is supported and passed to the callback - Supports labeled arrays
- Parameter
array_concat
- Supports labeled arrays
array_contains
array_create_labeled
(experimental)array_filter
- Parameter
context
: is supported and passed to the callback - Supports labeled arrays
- Parameter
array_find_label
(experimental)array_interpolate_linear
- Supports labeled arrays
array_labels
array_modify
(experimental)- Supports labeled arrays
cloud_detection
(experimental)count
- Parameter
context
: is supported and passed to the callback
- Parameter
create_data_cube (create_raster_cube)
cummax
(experimental)cummin
(experimental)cumproduct
(experimental)cumsum
(experimental)filter_bands
- Supports filtering by common name
filter_labels
(experimental)- Parameter
context
: is supported and passed to the callback - Parameter
dimension
: All suitable dimensions are supported
- Parameter
flatten_dimensions
(experimental)is_infinite
(experimental)load_collection
- Parameter
properties
: Supports querying by queryables defined via the API.
- Parameter
load_geojson
(experimental)load_stac (load_result)
(experimental)- Supports loading from STAC API - Features.
- Supports loading from STAC API - Item Search.
- Supports loading from static STAC.
- Parameter
temporal_extent
: All temporal formats are supported (date-time and date) - Parameter
bands
: Supports filtering by band name and common name
merge_cubes
- Parameter
context
: is supported and passed to the callback
- Parameter
ndvi
- Supports common names as band names
order
rearrange
reduce_dimension
- Parameter
context
: is supported and passed to the callback
- Parameter
reduce_spatial
(experimental)- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoryreducer
that accept an array as input and return a single value as output can be used (also in a chain of processes). - Parameter
reducer
: Supports access to labels in the callback - Parameter
context
: is supported and passed to the callback
- Parameter
resample_cube_spatial
- Parameter
method
:enum
reflects implemention (all values are supported)
- Parameter
resample_cube_temporal
- Parameter
dimension
: All suitable dimensions are supported
- Parameter
resample_spatial
- Parameter
align
:enum
reflects implemention (all values are supported)
- Parameter
trim_cube
unflatten_dimensions
(experimental)vector_to_random_points
(experimental)vector_to_regular_points
(experimental)
# L3-ML: Machine Learning
fit_curve
(experimental)fit_regr_random_forest
load_ml_model
(experimental)predict_curve
(experimental)save_ml_model
(experimental)
# L3-UDF: User-Defined Functions
run_udf
- Parameter
context
: is supported and passed to the callback
- Parameter
run_udf_externally
(experimental)
# L3-Clim: Cimatology
anomaly
climatological_normal
# L3-ARD: Analysis-Ready Data
ard_normalized_radar_backscatter
(experimental)- has been tested on > 100x100km at 10m resolution (or equivalent)
- Custom parameters are provided via the
options
parameter
ard_surface_reflectance
(experimental)- Parameter
atmospheric_correction_method
:enum
reflects implemention (all values are supported) - Parameter
cloud_detection_method
:enum
reflects implemention (all values are supported) - Custom parameters are provided via the
atmospheric_correction_options
and/orcloud_detection_options
parameters
- Parameter
# L4: Above and Beyond
aggregate_spatial
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
aggregate_temporal
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
aggregate_temporal_period
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
apply_neighborhood
- Parameter
process
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
apply_polygon (chunk_polygon)
(experimental)array_apply
- Parameter
process
: At least all processes (up to the level of this requirement) in the categoriescomparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
atmospheric_correction
(experimental)- Parameter
method
:enum
reflects implemention (all values are supported) - Custom parameters are provided via the
options
parameter
- Parameter
filter_bands
- Supports filtering by wavelength
filter_bbox
- Parameter
extent
: Supports filtering by base/height
- Parameter
load_collection
- Parameter
spatial_extent
: Supports filtering by base/height
- Parameter
load_stac (load_result)
(experimental)- Parameter
spatial_extent
: Supports filtering by base/height
- Parameter
load_uploaded_files
(experimental)load_url
(experimental)reduce_dimension
- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
reduce_spatial
(experimental)- Parameter
reducer
: At least all processes (up to the level of this requirement) in the categoriesarray
,comparison
,logic
andmath
can be used (also in a chain of processes).
- Parameter
sar_backscatter
(experimental)- Parameter
coefficient
:enum
reflects implemention (all values are supported) - Custom parameters are provided via the
options
parameter
- Parameter