Service metadata is used to describe the interface of a processing service so it can be executed by Steep.
Steep provides a set of default runtime environments that define how processing services are executed. More environments can be added through runtime environment plugins.
This data model describes the parameters that can be passed to a processing service.
"0..1"means the parameter is optional (it can appear 0 times or 1 time)
"1..1"means the parameter is mandatory (it must appear 1 time)
"1..n"means it must appear at least once or many times (no upper limit)
Steep treats parameters differently depending on the
"directory", Steep will create a new directory for the service’s output and recursively search it for result files after the service has been executed.
"directory", Steep will find the common parent directory of the files from the parameter’s value and pass it to the service. For example, if the parameter’s value is an array with the elements
["/tmp/a.txt", "/tmp/b.txt", "/tmp/subdir/c.txt"], Steep will pass
"/tmp/"to the service.
"directory", but the parameter’s value is an array, Steep will duplicate the parameter as many times as there are items in the array (given that the cardinality has no upper limit).
"boolean", and the parameter has a
label, Steep will pass the
labelto the service if the parameter’s value is
trueand ignore the parameter if the value is
Otherwise, this property can be an arbitrary string. New data types with special handling can be added through output adapter plugins.
Runtime arguments are similar to service parameters, except they are passed to the runtime that executes the service (e.g. Docker) instead of the service itself.