Pattern 12
2025-12-02 12:44:11.548 | DEBUG | cwl_loader:load_cwl_from_location:228 - Loading CWL document from ../cwl-workflow/pattern-12.cwl...
2025-12-02 12:44:11.549 | DEBUG | cwl_loader:_load_cwl_from_stream:231 - Reading stream from ../cwl-workflow/pattern-12.cwl...
2025-12-02 12:44:11.589 | DEBUG | cwl_loader:load_cwl_from_stream:203 - CWL data of type <class 'ruamel.yaml.comments.CommentedMap'> successfully loaded from stream
2025-12-02 12:44:11.590 | DEBUG | cwl_loader:load_cwl_from_yaml:130 - Updating the model from version 'v1.0' to version 'v1.2'...
2025-12-02 12:44:11.590 | DEBUG | cwl_loader:load_cwl_from_yaml:141 - Raw CWL document successfully updated to v1.2!
2025-12-02 12:44:11.591 | DEBUG | cwl_loader:load_cwl_from_yaml:145 - Parsing the raw CWL document to the CWL Utils DOM...
2025-12-02 12:44:11.860 | DEBUG | cwl_loader:load_cwl_from_yaml:158 - Raw CWL document successfully parsed to the CWL Utils DOM!
2025-12-02 12:44:11.861 | DEBUG | cwl_loader:load_cwl_from_yaml:160 - Dereferencing the steps[].run...
2025-12-02 12:44:11.862 | DEBUG | cwl_loader:_on_process:78 - Checking if ../cwl-workflow/pattern-12.cwl#crop must be externally imported...
2025-12-02 12:44:11.862 | DEBUG | cwl_loader:_on_process:82 - run_url: ../cwl-workflow/pattern-12.cwl - uri: ../cwl-workflow/pattern-12.cwl
2025-12-02 12:44:11.863 | DEBUG | cwl_loader:_on_process:78 - Checking if ../cwl-workflow/pattern-12.cwl#norm_diff must be externally imported...
2025-12-02 12:44:11.863 | DEBUG | cwl_loader:_on_process:82 - run_url: ../cwl-workflow/pattern-12.cwl - uri: ../cwl-workflow/pattern-12.cwl
2025-12-02 12:44:11.864 | DEBUG | cwl_loader:_on_process:78 - Checking if ../cwl-workflow/pattern-12.cwl#otsu must be externally imported...
2025-12-02 12:44:11.865 | DEBUG | cwl_loader:_on_process:82 - run_url: ../cwl-workflow/pattern-12.cwl - uri: ../cwl-workflow/pattern-12.cwl
2025-12-02 12:44:11.866 | DEBUG | cwl_loader:load_cwl_from_yaml:167 - steps[].run successfully dereferenced! Dereferencing the FQNs...
2025-12-02 12:44:11.866 | DEBUG | cwl_loader:load_cwl_from_yaml:171 - CWL document successfully dereferenced! Now verifying steps[].run integrity...
2025-12-02 12:44:11.867 | DEBUG | cwl_loader:load_cwl_from_yaml:175 - All steps[].run link are resolvable!
2025-12-02 12:44:11.868 | DEBUG | cwl_loader:load_cwl_from_yaml:178 - Sorting Process instances by dependencies....
2025-12-02 12:44:11.869 | DEBUG | cwl_loader:load_cwl_from_yaml:180 - Sorting process is over.
2025-12-02 12:44:11.869 | DEBUG | cwl_loader:_load_cwl_from_stream:240 - Stream from ../cwl-workflow/pattern-12.cwl successfully load!
Application Package Pattern 12¶
This patterns publishes all products generated by all steps
Inputs¶
| Id | Type | Label | Doc |
|---|---|---|---|
aoi |
https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#BBox |
area of interest | area of interest as a bounding box |
bands |
string[] |
bands used for the NDWI | bands used for the NDWI |
item |
Directory |
Landsat-8/9 acquisition reference | Landsat-8/9 acquisition reference |
cropped-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
cropped reflectances STAC Collection | STAC Collection URL for the cropped reflectances |
ndwi-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
NDWI STAC Collection | STAC Collection URL for the NDWI |
water-bodies-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
Water bodies STAC Collection | STAC Collection URL for the water bodies |
Steps¶
| Id | Runs | Label | Doc |
|---|---|---|---|
node_crop |
#crop |
None | None |
node_normalized_difference |
#norm_diff |
None | None |
node_otsu |
#otsu |
None | None |
Outputs¶
| Id | Type | Label | Doc |
|---|---|---|---|
cropped |
Directory[] |
Cropped reflectances | Cropped reflectances |
ndwi |
Directory |
Normalized Difference Water Index | Normalized Difference Water Index calculated from the input bands |
water_bodies |
Directory |
Water bodies detected | Water bodies detected based on the NDWI and otsu threshold |
Data flow management¶
2025-12-02 12:44:12.378 | DEBUG | cwl_loader:load_cwl_from_location:228 - Loading CWL document from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in.cwl...
2025-12-02 12:44:12.411 | DEBUG | cwl_loader:_load_cwl_from_stream:231 - Reading stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in.cwl...
2025-12-02 12:44:12.417 | DEBUG | cwl_loader:load_cwl_from_stream:203 - CWL data of type <class 'ruamel.yaml.comments.CommentedMap'> successfully loaded from stream
2025-12-02 12:44:12.418 | DEBUG | cwl_loader:load_cwl_from_yaml:130 - Updating the model from version 'v1.0' to version 'v1.2'...
2025-12-02 12:44:12.418 | DEBUG | cwl_loader:load_cwl_from_yaml:141 - Raw CWL document successfully updated to v1.2!
2025-12-02 12:44:12.419 | DEBUG | cwl_loader:load_cwl_from_yaml:145 - Parsing the raw CWL document to the CWL Utils DOM...
2025-12-02 12:44:12.577 | DEBUG | cwl_loader:load_cwl_from_yaml:158 - Raw CWL document successfully parsed to the CWL Utils DOM!
2025-12-02 12:44:12.578 | DEBUG | cwl_loader:load_cwl_from_yaml:160 - Dereferencing the steps[].run...
2025-12-02 12:44:12.578 | DEBUG | cwl_loader:load_cwl_from_yaml:167 - steps[].run successfully dereferenced! Dereferencing the FQNs...
2025-12-02 12:44:12.579 | DEBUG | cwl_loader:load_cwl_from_yaml:171 - CWL document successfully dereferenced! Now verifying steps[].run integrity...
2025-12-02 12:44:12.579 | DEBUG | cwl_loader:load_cwl_from_yaml:175 - All steps[].run link are resolvable!
2025-12-02 12:44:12.580 | DEBUG | cwl_loader:load_cwl_from_yaml:178 - Sorting Process instances by dependencies....
2025-12-02 12:44:12.580 | DEBUG | cwl_loader:load_cwl_from_yaml:180 - Sorting process is over.
2025-12-02 12:44:12.580 | DEBUG | cwl_loader:_load_cwl_from_stream:240 - Stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in.cwl successfully load!
2025-12-02 12:44:12.581 | DEBUG | cwl_loader:load_cwl_from_location:228 - Loading CWL document from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in-file.cwl...
2025-12-02 12:44:12.613 | DEBUG | cwl_loader:_load_cwl_from_stream:231 - Reading stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in-file.cwl...
2025-12-02 12:44:12.619 | DEBUG | cwl_loader:load_cwl_from_stream:203 - CWL data of type <class 'ruamel.yaml.comments.CommentedMap'> successfully loaded from stream
2025-12-02 12:44:12.620 | DEBUG | cwl_loader:load_cwl_from_yaml:130 - Updating the model from version 'v1.0' to version 'v1.2'...
2025-12-02 12:44:12.620 | DEBUG | cwl_loader:load_cwl_from_yaml:141 - Raw CWL document successfully updated to v1.2!
2025-12-02 12:44:12.621 | DEBUG | cwl_loader:load_cwl_from_yaml:145 - Parsing the raw CWL document to the CWL Utils DOM...
2025-12-02 12:44:12.775 | DEBUG | cwl_loader:load_cwl_from_yaml:158 - Raw CWL document successfully parsed to the CWL Utils DOM!
2025-12-02 12:44:12.775 | DEBUG | cwl_loader:load_cwl_from_yaml:160 - Dereferencing the steps[].run...
2025-12-02 12:44:12.776 | DEBUG | cwl_loader:load_cwl_from_yaml:167 - steps[].run successfully dereferenced! Dereferencing the FQNs...
2025-12-02 12:44:12.776 | DEBUG | cwl_loader:load_cwl_from_yaml:171 - CWL document successfully dereferenced! Now verifying steps[].run integrity...
2025-12-02 12:44:12.777 | DEBUG | cwl_loader:load_cwl_from_yaml:175 - All steps[].run link are resolvable!
2025-12-02 12:44:12.777 | DEBUG | cwl_loader:load_cwl_from_yaml:178 - Sorting Process instances by dependencies....
2025-12-02 12:44:12.778 | DEBUG | cwl_loader:load_cwl_from_yaml:180 - Sorting process is over.
2025-12-02 12:44:12.778 | DEBUG | cwl_loader:_load_cwl_from_stream:240 - Stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-in-file.cwl successfully load!
2025-12-02 12:44:12.779 | DEBUG | cwl_loader:load_cwl_from_location:228 - Loading CWL document from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-out.cwl...
2025-12-02 12:44:12.811 | DEBUG | cwl_loader:_load_cwl_from_stream:231 - Reading stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-out.cwl...
2025-12-02 12:44:12.820 | DEBUG | cwl_loader:load_cwl_from_stream:203 - CWL data of type <class 'ruamel.yaml.comments.CommentedMap'> successfully loaded from stream
2025-12-02 12:44:12.820 | DEBUG | cwl_loader:load_cwl_from_yaml:130 - Updating the model from version 'v1.0' to version 'v1.2'...
2025-12-02 12:44:12.821 | DEBUG | cwl_loader:load_cwl_from_yaml:141 - Raw CWL document successfully updated to v1.2!
2025-12-02 12:44:12.821 | DEBUG | cwl_loader:load_cwl_from_yaml:145 - Parsing the raw CWL document to the CWL Utils DOM...
2025-12-02 12:44:13.000 | DEBUG | cwl_loader:load_cwl_from_yaml:158 - Raw CWL document successfully parsed to the CWL Utils DOM!
2025-12-02 12:44:13.000 | DEBUG | cwl_loader:load_cwl_from_yaml:160 - Dereferencing the steps[].run...
2025-12-02 12:44:13.001 | DEBUG | cwl_loader:load_cwl_from_yaml:167 - steps[].run successfully dereferenced! Dereferencing the FQNs...
2025-12-02 12:44:13.002 | DEBUG | cwl_loader:load_cwl_from_yaml:171 - CWL document successfully dereferenced! Now verifying steps[].run integrity...
2025-12-02 12:44:13.002 | DEBUG | cwl_loader:load_cwl_from_yaml:175 - All steps[].run link are resolvable!
2025-12-02 12:44:13.003 | DEBUG | cwl_loader:load_cwl_from_yaml:178 - Sorting Process instances by dependencies....
2025-12-02 12:44:13.003 | DEBUG | cwl_loader:load_cwl_from_yaml:180 - Sorting process is over.
2025-12-02 12:44:13.004 | DEBUG | cwl_loader:_load_cwl_from_stream:240 - Stream from https://raw.githubusercontent.com/eoap/application-package-patterns/refs/heads/develop/templates/stage-out.cwl successfully load!
2025-12-02 12:44:13.005 | INFO | eoap_cwlwrap.types:_validate_stage_in:281 - Validating stage-in 'my-asthonishing-stage-in-directory'...
2025-12-02 12:44:13.005 | INFO | eoap_cwlwrap.types:_validate_stage_in:303 - stage-in 'my-asthonishing-stage-in-directory' is valid
2025-12-02 12:44:13.006 | INFO | eoap_cwlwrap.types:_validate_stage_in:281 - Validating stage-in 'my-asthonishing-stage-in-file'...
2025-12-02 12:44:13.006 | INFO | eoap_cwlwrap.types:_validate_stage_in:303 - stage-in 'my-asthonishing-stage-in-file' is valid
2025-12-02 12:44:13.007 | INFO | eoap_cwlwrap.types:validate_stage_out:339 - Validating stage-out 'my-super-stage-out'...
2025-12-02 12:44:13.007 | INFO | eoap_cwlwrap.types:validate_stage_out:361 - stage-out 'my-super-stage-out' is valid
2025-12-02 12:44:13.008 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:101 - Building the CWL Orchestrator Workflow...
2025-12-02 12:44:13.009 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:130 - Analyzing pattern-12 inputs...
2025-12-02 12:44:13.009 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/aoi: https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#BBox
2025-12-02 12:44:13.010 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/bands: string[]
2025-12-02 12:44:13.011 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/item: Directory
2025-12-02 12:44:13.011 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:159 - Directory type detected, creating a related 'directory_stage_in_0'...
2025-12-02 12:44:13.012 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:161 - Converting Directory to URL-compatible type...
2025-12-02 12:44:13.012 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:165 - Directory converted to https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.013 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:206 - Connecting 'app/item' to 'directory_stage_in_0' output...
2025-12-02 12:44:13.014 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/cropped-collection: https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.014 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/ndwi-collection: https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.015 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:146 - * pattern-12/water-bodies-collection: https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.016 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:257 - Analyzing pattern-12 outputs...
2025-12-02 12:44:13.018 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:263 - * pattern-12/cropped: Directory[]
2025-12-02 12:44:13.018 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:268 - Directory type detected, creating a related 'stage_out_0'...
2025-12-02 12:44:13.019 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:270 - Converting Directory[] to URL-compatible type...
2025-12-02 12:44:13.019 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:274 - Directory[] converted to https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI[]
2025-12-02 12:44:13.020 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:295 - Array detected, scatter required for stac_catalog:app/cropped
2025-12-02 12:44:13.021 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:315 - Connecting 'app/cropped' to 'stage_out_0' output...
2025-12-02 12:44:13.021 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:263 - * pattern-12/ndwi: Directory
2025-12-02 12:44:13.022 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:268 - Directory type detected, creating a related 'stage_out_1'...
2025-12-02 12:44:13.023 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:270 - Converting Directory to URL-compatible type...
2025-12-02 12:44:13.023 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:274 - Directory converted to https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.024 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:315 - Connecting 'app/ndwi' to 'stage_out_1' output...
2025-12-02 12:44:13.026 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:263 - * pattern-12/water_bodies: Directory
2025-12-02 12:44:13.026 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:268 - Directory type detected, creating a related 'stage_out_2'...
2025-12-02 12:44:13.026 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:270 - Converting Directory to URL-compatible type...
2025-12-02 12:44:13.027 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:274 - Directory converted to https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI
2025-12-02 12:44:13.028 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:315 - Connecting 'app/water_bodies' to 'stage_out_2' output...
2025-12-02 12:44:13.029 | INFO | eoap_cwlwrap:_build_orchestrator_workflow:390 - Orchestrator Workflow built in 0.0206 seconds
Warning: flat edge between adjacent nodes one of which has a record shape - replace records with HTML-like labels Edge main/directory_stage_in_0 -> main/another_input Error: lost main/another_input main/directory_stage_in_0 edge
--------------------------------------------------------------------------- CalledProcessError Traceback (most recent call last) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/backend/execute.py:88, in run_check(cmd, input_lines, encoding, quiet, **kwargs) 87 try: ---> 88 proc.check_returncode() 89 except subprocess.CalledProcessError as e: File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/subprocess.py:508, in CompletedProcess.check_returncode(self) 507 if self.returncode: --> 508 raise CalledProcessError(self.returncode, self.args, self.stdout, 509 self.stderr) CalledProcessError: Command '[PosixPath('dot'), '-Kdot', '-Tsvg']' returned non-zero exit status 1. During handling of the above exception, another exception occurred: CalledProcessError Traceback (most recent call last) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/IPython/core/formatters.py:1036, in MimeBundleFormatter.__call__(self, obj, include, exclude) 1033 method = get_real_method(obj, self.print_method) 1035 if method is not None: -> 1036 return method(include=include, exclude=exclude) 1037 return None 1038 else: File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/jupyter_integration.py:98, in JupyterIntegration._repr_mimebundle_(self, include, exclude, **_) 96 include = set(include) if include is not None else {self._jupyter_mimetype} 97 include -= set(exclude or []) ---> 98 return {mimetype: getattr(self, method_name)() 99 for mimetype, method_name in MIME_TYPES.items() 100 if mimetype in include} File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/jupyter_integration.py:112, in JupyterIntegration._repr_image_svg_xml(self) 110 def _repr_image_svg_xml(self) -> str: 111 """Return the rendered graph as SVG string.""" --> 112 return self.pipe(format='svg', encoding=SVG_ENCODING) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/piping.py:104, in Pipe.pipe(self, format, renderer, formatter, neato_no_op, quiet, engine, encoding) 55 def pipe(self, 56 format: typing.Optional[str] = None, 57 renderer: typing.Optional[str] = None, (...) 61 engine: typing.Optional[str] = None, 62 encoding: typing.Optional[str] = None) -> typing.Union[bytes, str]: 63 """Return the source piped through the Graphviz layout command. 64 65 Args: (...) 102 '<?xml version=' 103 """ --> 104 return self._pipe_legacy(format, 105 renderer=renderer, 106 formatter=formatter, 107 neato_no_op=neato_no_op, 108 quiet=quiet, 109 engine=engine, 110 encoding=encoding) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/_tools.py:185, in deprecate_positional_args.<locals>.decorator.<locals>.wrapper(*args, **kwargs) 177 wanted = ', '.join(f'{name}={value!r}' 178 for name, value in deprecated.items()) 179 warnings.warn(f'The signature of {func_name} will be reduced' 180 f' to {supported_number} positional arg{s_}{qualification}' 181 f' {list(supported)}: pass {wanted} as keyword arg{s_}', 182 stacklevel=stacklevel, 183 category=category) --> 185 return func(*args, **kwargs) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/piping.py:121, in Pipe._pipe_legacy(self, format, renderer, formatter, neato_no_op, quiet, engine, encoding) 112 @_tools.deprecate_positional_args(supported_number=1, ignore_arg='self') 113 def _pipe_legacy(self, 114 format: typing.Optional[str] = None, (...) 119 engine: typing.Optional[str] = None, 120 encoding: typing.Optional[str] = None) -> typing.Union[bytes, str]: --> 121 return self._pipe_future(format, 122 renderer=renderer, 123 formatter=formatter, 124 neato_no_op=neato_no_op, 125 quiet=quiet, 126 engine=engine, 127 encoding=encoding) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/piping.py:149, in Pipe._pipe_future(self, format, renderer, formatter, neato_no_op, quiet, engine, encoding) 146 if encoding is not None: 147 if codecs.lookup(encoding) is codecs.lookup(self.encoding): 148 # common case: both stdin and stdout need the same encoding --> 149 return self._pipe_lines_string(*args, encoding=encoding, **kwargs) 150 try: 151 raw = self._pipe_lines(*args, input_encoding=self.encoding, **kwargs) File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/backend/piping.py:212, in pipe_lines_string(engine, format, input_lines, encoding, renderer, formatter, neato_no_op, quiet) 206 cmd = dot_command.command(engine, format, 207 renderer=renderer, 208 formatter=formatter, 209 neato_no_op=neato_no_op) 210 kwargs = {'input_lines': input_lines, 'encoding': encoding} --> 212 proc = execute.run_check(cmd, capture_output=True, quiet=quiet, **kwargs) 213 return proc.stdout File /opt/hostedtoolcache/Python/3.14.0/x64/lib/python3.14/site-packages/graphviz/backend/execute.py:90, in run_check(cmd, input_lines, encoding, quiet, **kwargs) 88 proc.check_returncode() 89 except subprocess.CalledProcessError as e: ---> 90 raise CalledProcessError(*e.args) 92 return proc CalledProcessError: Command '[PosixPath('dot'), '-Kdot', '-Tsvg']' returned non-zero exit status 1. [stderr: 'Warning: flat edge between adjacent nodes one of which has a record shape - replace records with HTML-like labels\n Edge main/directory_stage_in_0 -> main/another_input\nError: lost main/another_input main/directory_stage_in_0 edge\n']
<graphviz.sources.Source at 0x7fd2058af610>
Workflow components diagram¶
Inputs¶
| Id | Type | Label | Doc |
|---|---|---|---|
aoi |
https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#BBox |
area of interest - pattern-12/aoi | area of interest as a bounding box - This parameter is derived from pattern-12/aoi |
bands |
string[] |
bands used for the NDWI - pattern-12/bands | bands used for the NDWI - This parameter is derived from pattern-12/bands |
another_input |
string |
Another Input - my-asthonishing-stage-in-directory/another_input | An additional input for demonstration purposes - This parameter is derived from my-asthonishing-stage-in-directory/another_input |
item |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
Landsat-8/9 acquisition reference - pattern-12/item | Landsat-8/9 acquisition reference - This parameter is derived from pattern-12/item |
cropped-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
cropped reflectances STAC Collection - pattern-12/cropped-collection | STAC Collection URL for the cropped reflectances - This parameter is derived from pattern-12/cropped-collection |
ndwi-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
NDWI STAC Collection - pattern-12/ndwi-collection | STAC Collection URL for the NDWI - This parameter is derived from pattern-12/ndwi-collection |
water-bodies-collection |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
Water bodies STAC Collection - pattern-12/water-bodies-collection | STAC Collection URL for the water bodies - This parameter is derived from pattern-12/water-bodies-collection |
s3_bucket |
string |
my-super-stage-out/s3_bucket | This parameter is derived from: my-super-stage-out/s3_bucket |
sub_path |
string |
my-super-stage-out/sub_path | This parameter is derived from: my-super-stage-out/sub_path |
aws_access_key_id |
string |
my-super-stage-out/aws_access_key_id | This parameter is derived from: my-super-stage-out/aws_access_key_id |
aws_secret_access_key |
string |
my-super-stage-out/aws_secret_access_key | This parameter is derived from: my-super-stage-out/aws_secret_access_key |
region_name |
string |
my-super-stage-out/region_name | This parameter is derived from: my-super-stage-out/region_name |
endpoint_url |
string |
my-super-stage-out/endpoint_url | This parameter is derived from: my-super-stage-out/endpoint_url |
Steps¶
| Id | Runs | Label | Doc |
|---|---|---|---|
directory_stage_in_0 |
#my-asthonishing-stage-in-directory |
None | None |
app |
#pattern-12 |
None | None |
stage_out_0 |
#my-super-stage-out |
None | None |
stage_out_2 |
#my-super-stage-out |
None | None |
stage_out_1 |
#my-super-stage-out |
None | None |
Outputs¶
| Id | Type | Label | Doc |
|---|---|---|---|
cropped |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI[] |
Cropped reflectances | Cropped reflectances |
ndwi |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
Normalized Difference Water Index | Normalized Difference Water Index calculated from the input bands |
water_bodies |
https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI |
Water bodies detected | Water bodies detected based on the NDWI and otsu threshold |
Execution¶
Inputs¶
{
"aoi": {
"class": "https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#BBox",
"bbox": [
-118.985,
38.432,
-118.183,
38.938
],
"crs": "CRS84"
},
"item": {
"class": "https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#URI",
"value": "https://planetarycomputer.microsoft.com/api/stac/v1/collections/landsat-c2-l2/items/LC08_L2SP_042033_20231007_02_T1"
},
"bands": [
"green",
"nir08"
],
"cropped-collection": {
"class": "https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#URI",
"value": "https://github.com/eoap/application-package-patterns/raw/refs/heads/develop/collections/cropped_collection.json"
},
"ndwi-collection": {
"class": "https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#URI",
"value": "https://github.com/eoap/application-package-patterns/raw/refs/heads/develop/collections/ndi_collection.json"
},
"water-bodies-collection": {
"class": "https://raw.githubusercontent.com/eoap/schemas/main/ogc.yaml#URI",
"value": "https://github.com/eoap/application-package-patterns/raw/refs/heads/develop/collections/water_bodies_collection.json"
}
}
Outputs¶
{
"cropped": [
{
"value": "s3://my-bucket/my/sub/path-12ltee/catalog.json",
"type": "https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI"
},
{
"value": "s3://my-bucket/my/sub/path-cck3ws/catalog.json",
"type": "https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI"
}
],
"ndwi": {
"value": "s3://my-bucket/my/sub/path-x4t8wx/catalog.json",
"type": "https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI"
},
"water_bodies": {
"value": "s3://my-bucket/my/sub/path-8zmcfd/catalog.json",
"type": "https://raw.githubusercontent.com/eoap/schemas/main/string_format.yaml#URI"
}
}