# 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
absoluteaddandapplyapply_dimension- All dimensions that your datacubes can include are supported - x and y can usually be excluded
arccosarcsinarctanarray_concatarray_createarray_elementbetweenceilclipconstantcosdivideeeqexpfirstfloorgtgteintlastlnload_collection- Parameter
temporal_extent: All temporal formats are supported (date-time and date)
- Parameter
logltltemaxmeanmedianminmodmultiplyneqnotorpipowerproductquantilesreduce_dimension- Parameter
reducer: At least all processes (up to L1) in the categoryreducerthat 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
roundsave_resultsdsgnsinsqrtsubtractsumtanvariance
# 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 categoryreducerthat 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 categoryreducerthat 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:enumreflects implemention (all values are supported)
- Parameter
allanyapply_dimension- Parameter
process: Supports access to labels in the callback
- Parameter
arcosharctan2array_element- Supports labeled arrays
array_findarsinhartanhcoshcountdimension_labels- Parameter
dimension: All suitable dimensions are supported
- Parameter
drop_dimension- Parameter
name: All suitable dimensions are supported
- Parameter
extremafilter_bboxfilter_temporal- Parameter
dimension: All suitable dimensions are supported - All temporal formats are supported (date-time and date)
- Parameter
ifinspect(experimental)- Parameter
level:enumreflects implemention (all values are supported)
- Parameter
is_nanis_nodatais_validlinear_scale_rangenan(experimental)normalized_differencereduce_dimension- Parameter
reducer: At least all processes (up to L2) in the categoryreducerthat 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_dimensionrename_labels- Parameter
dimension: All dimensions that your datacubes can include are supported - x and y can usually be excluded
- Parameter
sinhsorttanhxor
# L2A: Recommended Raster
aggregate_spatial- Parameter
reducer: At least all processes (up to the level of this requirement) in the categoryreducerthat 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:enumreflects implemention (all values are supported)
- Parameter
filter_bands- Supports filtering by band name
filter_spatialload_collection- Parameter
bands: Supports filtering by band name and common name
- Parameter
maskmask_polygonresample_spatial- Parameter
method:enumreflects 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_beginstext_concat (text_merge)text_containstext_ends
# L3: Advanced
add_dimension- Parameter
type:enumreflects 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,logicandmathcan 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,logicandmathcan 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,pxandnullare 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_containsarray_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_labelsarray_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
orderrearrangereduce_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 categoryreducerthat 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:enumreflects implemention (all values are supported)
- Parameter
resample_cube_temporal- Parameter
dimension: All suitable dimensions are supported
- Parameter
resample_spatial- Parameter
align:enumreflects implemention (all values are supported)
- Parameter
trim_cubeunflatten_dimensions(experimental)vector_to_random_points(experimental)vector_to_regular_points(experimental)
# L3-ML: Machine Learning
fit_curve(experimental)fit_regr_random_forestload_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
anomalyclimatological_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
optionsparameter
ard_surface_reflectance(experimental)- Parameter
atmospheric_correction_method:enumreflects implemention (all values are supported) - Parameter
cloud_detection_method:enumreflects implemention (all values are supported) - Custom parameters are provided via the
atmospheric_correction_optionsand/orcloud_detection_optionsparameters
- Parameter
# L4: Above and Beyond
aggregate_spatial- Parameter
reducer: At least all processes (up to the level of this requirement) in the categoriesarray,comparison,logicandmathcan 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,logicandmathcan 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,logicandmathcan 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,logicandmathcan 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,logicandmathcan be used (also in a chain of processes).
- Parameter
atmospheric_correction(experimental)- Parameter
method:enumreflects implemention (all values are supported) - Custom parameters are provided via the
optionsparameter
- 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,logicandmathcan 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,logicandmathcan be used (also in a chain of processes).
- Parameter
sar_backscatter(experimental)- Parameter
coefficient:enumreflects implemention (all values are supported) - Custom parameters are provided via the
optionsparameter
- Parameter