:py:mod:`wfexs_backend.ro_crate`
================================

.. py:module:: wfexs_backend.ro_crate

.. autodoc2-docstring:: wfexs_backend.ro_crate
   :allowtitles:

Module Contents
---------------

Classes
~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`FormalParameter <wfexs_backend.ro_crate.FormalParameter>`
     -
   * - :py:obj:`PropertyValue <wfexs_backend.ro_crate.PropertyValue>`
     -
   * - :py:obj:`Intangible <wfexs_backend.ro_crate.Intangible>`
     - .. autodoc2-docstring:: wfexs_backend.ro_crate.Intangible
          :summary:
   * - :py:obj:`ContactPoint <wfexs_backend.ro_crate.ContactPoint>`
     -
   * - :py:obj:`Action <wfexs_backend.ro_crate.Action>`
     -
   * - :py:obj:`CreateAction <wfexs_backend.ro_crate.CreateAction>`
     -
   * - :py:obj:`OrganizeAction <wfexs_backend.ro_crate.OrganizeAction>`
     -
   * - :py:obj:`ControlAction <wfexs_backend.ro_crate.ControlAction>`
     -
   * - :py:obj:`Collection <wfexs_backend.ro_crate.Collection>`
     -
   * - :py:obj:`FixedMixin <wfexs_backend.ro_crate.FixedMixin>`
     -
   * - :py:obj:`FixedFile <wfexs_backend.ro_crate.FixedFile>`
     -
   * - :py:obj:`ContainerImage <wfexs_backend.ro_crate.ContainerImage>`
     -
   * - :py:obj:`MaterializedContainerImage <wfexs_backend.ro_crate.MaterializedContainerImage>`
     -
   * - :py:obj:`WorkflowDiagram <wfexs_backend.ro_crate.WorkflowDiagram>`
     -
   * - :py:obj:`SourceCodeFile <wfexs_backend.ro_crate.SourceCodeFile>`
     -
   * - :py:obj:`FixedDataset <wfexs_backend.ro_crate.FixedDataset>`
     -
   * - :py:obj:`FixedWorkflow <wfexs_backend.ro_crate.FixedWorkflow>`
     -
   * - :py:obj:`FixedROCrate <wfexs_backend.ro_crate.FixedROCrate>`
     - .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate
          :summary:
   * - :py:obj:`WorkflowRunROCrate <wfexs_backend.ro_crate.WorkflowRunROCrate>`
     - .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate
          :summary:

API
~~~

.. py:exception:: ROCrateGenerationException()
   :canonical: wfexs_backend.ro_crate.ROCrateGenerationException

   Bases: :py:obj:`wfexs_backend.common.AbstractWfExSException`

.. py:class:: FormalParameter(crate: rocrate.rocrate.ROCrate, name: str, additional_type: Optional[str] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.FormalParameter

   Bases: :py:obj:`rocrate.model.entity.Entity`

.. py:class:: PropertyValue(crate: rocrate.rocrate.ROCrate, name: str, value: Union[bool,str,int,float], identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.PropertyValue

   Bases: :py:obj:`rocrate.model.entity.Entity`

.. py:class:: Intangible(crate: rocrate.rocrate.ROCrate, name: str, additionalType: Optional[str] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.Intangible

   Bases: :py:obj:`rocrate.model.entity.Entity`

   .. autodoc2-docstring:: wfexs_backend.ro_crate.Intangible

   .. rubric:: Initialization

   .. autodoc2-docstring:: wfexs_backend.ro_crate.Intangible.__init__

.. py:class:: ContactPoint(crate: rocrate.rocrate.ROCrate, contactType: str, identifier: str, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.ContactPoint

   Bases: :py:obj:`rocrate.model.entity.Entity`

.. py:class:: Action(crate: rocrate.rocrate.ROCrate, name: str, startTime: Optional[datetime.datetime] = None, endTime: Optional[datetime.datetime] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.Action

   Bases: :py:obj:`rocrate.model.entity.Entity`

.. py:class:: CreateAction(crate: rocrate.rocrate.ROCrate, name: str, startTime: Optional[datetime.datetime] = None, endTime: Optional[datetime.datetime] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.CreateAction

   Bases: :py:obj:`wfexs_backend.ro_crate.Action`

.. py:class:: OrganizeAction(crate: rocrate.rocrate.ROCrate, name: str, startTime: Optional[datetime.datetime] = None, endTime: Optional[datetime.datetime] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.OrganizeAction

   Bases: :py:obj:`wfexs_backend.ro_crate.Action`

.. py:class:: ControlAction(crate: rocrate.rocrate.ROCrate, name: str, startTime: Optional[datetime.datetime] = None, endTime: Optional[datetime.datetime] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.ControlAction

   Bases: :py:obj:`wfexs_backend.ro_crate.Action`

.. py:class:: Collection(crate: rocrate.rocrate.ROCrate, main_entity: Union[FixedFile, FixedDataset, Collection, None], identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.Collection

   Bases: :py:obj:`rocrate.model.creativework.CreativeWork`

.. py:class:: FixedMixin(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.FixedMixin

   Bases: :py:obj:`rocrate.model.file_or_dir.FileOrDir`

.. py:class:: FixedFile(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.FixedFile

   Bases: :py:obj:`wfexs_backend.ro_crate.FixedMixin`, :py:obj:`rocrate.model.file.File`

   .. py:method:: write(base_path: wfexs_backend.common.PathLikePath) -> None
      :canonical: wfexs_backend.ro_crate.FixedFile.write

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedFile.write

.. py:class:: ContainerImage(crate: rocrate.rocrate.ROCrate, name: str, container_type: wfexs_backend.common.ContainerType, registry: Optional[str] = None, tag: Optional[str] = None, identifier: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.ContainerImage

   Bases: :py:obj:`rocrate.model.entity.Entity`

   .. py:attribute:: TYPES
      :canonical: wfexs_backend.ro_crate.ContainerImage.TYPES
      :value: ['ContainerImage', 'SoftwareApplication']

      .. autodoc2-docstring:: wfexs_backend.ro_crate.ContainerImage.TYPES

   .. py:method:: _empty() -> Mapping[str, Any]
      :canonical: wfexs_backend.ro_crate.ContainerImage._empty

      .. autodoc2-docstring:: wfexs_backend.ro_crate.ContainerImage._empty

   .. py:method:: _prepare_properties(name: str, container_type: wfexs_backend.common.ContainerType, registry: Optional[str] = None, tag: Optional[str] = None, properties: Optional[Mapping[str, Any]] = None) -> Mapping[str, Any]
      :canonical: wfexs_backend.ro_crate.ContainerImage._prepare_properties
      :staticmethod:

      .. autodoc2-docstring:: wfexs_backend.ro_crate.ContainerImage._prepare_properties

.. py:class:: MaterializedContainerImage(crate: rocrate.rocrate.ROCrate, container_type: wfexs_backend.common.ContainerType, registry: Optional[str] = None, name: str = '', tag: Optional[str] = None, identifier: Optional[str] = None, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.MaterializedContainerImage

   Bases: :py:obj:`wfexs_backend.ro_crate.ContainerImage`, :py:obj:`wfexs_backend.ro_crate.FixedFile`

   .. py:attribute:: TYPES
      :canonical: wfexs_backend.ro_crate.MaterializedContainerImage.TYPES
      :value: ['File', 'ContainerImage', 'SoftwareApplication']

      .. autodoc2-docstring:: wfexs_backend.ro_crate.MaterializedContainerImage.TYPES

.. py:class:: WorkflowDiagram(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.WorkflowDiagram

   Bases: :py:obj:`wfexs_backend.ro_crate.FixedFile`

   .. py:attribute:: TYPES
      :canonical: wfexs_backend.ro_crate.WorkflowDiagram.TYPES
      :value: ['File', 'ImageObject']

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowDiagram.TYPES

   .. py:method:: _empty() -> Mapping[str, Any]
      :canonical: wfexs_backend.ro_crate.WorkflowDiagram._empty

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowDiagram._empty

.. py:class:: SourceCodeFile(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.SourceCodeFile

   Bases: :py:obj:`wfexs_backend.ro_crate.FixedFile`

   .. py:attribute:: TYPES
      :canonical: wfexs_backend.ro_crate.SourceCodeFile.TYPES
      :value: ['File', 'SoftwareSourceCode']

      .. autodoc2-docstring:: wfexs_backend.ro_crate.SourceCodeFile.TYPES

   .. py:method:: _empty() -> Mapping[str, Any]
      :canonical: wfexs_backend.ro_crate.SourceCodeFile._empty

      .. autodoc2-docstring:: wfexs_backend.ro_crate.SourceCodeFile._empty

.. py:class:: FixedDataset(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.FixedDataset

   Bases: :py:obj:`wfexs_backend.ro_crate.FixedMixin`, :py:obj:`rocrate.model.dataset.Dataset`

   .. py:method:: write(base_path: Union[str, os.PathLike[str]]) -> None
      :canonical: wfexs_backend.ro_crate.FixedDataset.write

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedDataset.write

.. py:class:: FixedWorkflow(crate: rocrate.rocrate.ROCrate, source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[Union[str, pathlib.Path]] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None)
   :canonical: wfexs_backend.ro_crate.FixedWorkflow

   Bases: :py:obj:`wfexs_backend.ro_crate.FixedMixin`, :py:obj:`rocrate.model.computationalworkflow.ComputationalWorkflow`

   .. py:attribute:: TYPES
      :canonical: wfexs_backend.ro_crate.FixedWorkflow.TYPES
      :value: ['File', 'SoftwareSourceCode', 'ComputationalWorkflow', 'SoftwareApplication']

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedWorkflow.TYPES

.. py:class:: FixedROCrate(source=None, gen_preview=False, init=False, exclude=None)
   :canonical: wfexs_backend.ro_crate.FixedROCrate

   Bases: :py:obj:`rocrate.rocrate.ROCrate`

   .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate

   .. rubric:: Initialization

   .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.__init__

   .. py:method:: add_file(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None) -> wfexs_backend.ro_crate.FixedFile
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_file

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_file

   .. py:method:: add_file_ext(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None, clazz: Type[FixedFile] = FixedFile) -> wfexs_backend.ro_crate.FixedFile
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_file_ext

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_file_ext

   .. py:method:: add_dataset(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None) -> wfexs_backend.ro_crate.FixedDataset
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_dataset

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_dataset

   .. py:method:: add_dataset_ext(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None) -> wfexs_backend.ro_crate.FixedDataset
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_dataset_ext

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_dataset_ext

   .. py:attribute:: add_directory
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_directory
      :value: None

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_directory

   .. py:method:: add_workflow(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None, main: bool = False, lang: Union[str, rocrate.model.computerlanguage.ComputerLanguage] = 'cwl', lang_version: Optional[str] = None, gen_cwl: bool = False, cls: Type[rocrate.model.computationalworkflow.ComputationalWorkflow] = FixedWorkflow) -> wfexs_backend.ro_crate.FixedWorkflow
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_workflow

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_workflow

   .. py:method:: add_workflow_ext(source: Optional[Union[str, pathlib.Path]] = None, dest_path: Optional[str] = None, identifier: Optional[str] = None, fetch_remote: bool = False, validate_url: bool = False, properties: Optional[Mapping[str, Any]] = None, main: bool = False, lang: Union[str, rocrate.model.computerlanguage.ComputerLanguage] = 'cwl', lang_version: Optional[str] = None, gen_cwl: bool = False, cls: Type[rocrate.model.computationalworkflow.ComputationalWorkflow] = FixedWorkflow) -> wfexs_backend.ro_crate.FixedWorkflow
      :canonical: wfexs_backend.ro_crate.FixedROCrate.add_workflow_ext

      .. autodoc2-docstring:: wfexs_backend.ro_crate.FixedROCrate.add_workflow_ext

.. py:class:: WorkflowRunROCrate(remote_repo: wfexs_backend.fetchers.RemoteRepo, workflow_pid: Optional[str], localWorkflow: wfexs_backend.common.LocalWorkflow, materializedEngine: wfexs_backend.workflow_engines.MaterializedWorkflowEngine, workflowEngineVersion: Optional[WorkflowEngineVersionStr], containerEngineVersion: Optional[ContainerEngineVersionStr], containerEngineOs: Optional[ContainerOperatingSystem], arch: Optional[ProcessorArchitecture], staged_setup: wfexs_backend.common.StagedSetup, payloads: wfexs_backend.common.CratableItem = NoCratableItem, licences: Sequence[LicenceDescription] = [], orcids: Sequence[Union[str, ResolvedORCID]] = [], progs: wfexs_backend.common.ProgsMapping = {}, tempdir: Optional[pathlib.Path] = None, scheme_desc: Sequence[Tuple[str, str, int]] = [], crate_pid: Optional[str] = None, licence_matcher: Optional[LicenceMatcher] = None)
   :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate

   .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate

   .. rubric:: Initialization

   .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.__init__

   .. py:method:: _init_empty_crate_and_ComputerLanguage(langVersion: Optional[Union[EngineVersion, WFLangVersion]], licences: Sequence[LicenceDescription], crate_pid: Optional[str]) -> None
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._init_empty_crate_and_ComputerLanguage

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._init_empty_crate_and_ComputerLanguage

   .. py:method:: _process_licences(licdescs: Sequence[LicenceDescription]) -> Sequence[Union[str, rocrate.model.creativework.CreativeWork]]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._process_licences

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._process_licences

   .. py:method:: _process_licence(licdesc: wfexs_backend.common.LicenceDescription) -> Union[str, rocrate.model.creativework.CreativeWork]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._process_licence

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._process_licence

   .. py:method:: _add_wfexs_to_crate(scheme_desc: Sequence[Tuple[str, str, int]]) -> rocrate.model.softwareapplication.SoftwareApplication
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_wfexs_to_crate

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_wfexs_to_crate

   .. py:method:: _add_containers(containers: Sequence[Container], sa_crate: Union[rocrate.model.computationalworkflow.ComputationalWorkflow, rocrate.model.softwareapplication.SoftwareApplication], the_workflow_crate: Optional[FixedWorkflow] = None) -> MutableSequence[ContainerImage]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_containers

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_containers

   .. py:method:: addWorkflowInputs(inputs: Sequence[MaterializedInput], are_envvars: bool = False) -> Sequence[rocrate.model.entity.Entity]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowInputs

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowInputs

   .. py:method:: _add_file_to_crate(the_path: pathlib.Path, the_uri: Optional[URIType], the_id: Optional[str] = None, the_name: Optional[RelPath] = None, the_alternate_name: Optional[RelPath] = None, the_size: Optional[int] = None, the_signature: Optional[Fingerprint] = None, the_licences: Optional[Sequence[LicenceDescription]] = None, the_mime: Optional[str] = None, is_soft_source: bool = False, do_attach: bool = True) -> wfexs_backend.ro_crate.FixedFile
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_file_to_crate

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_file_to_crate

   .. py:method:: _add_collection_to_crate(main_entity: Union[FixedFile, FixedDataset, Collection, None] = None) -> wfexs_backend.ro_crate.Collection
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_collection_to_crate

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_collection_to_crate

   .. py:method:: _add_directory_as_dataset(the_path: pathlib.Path, the_uri: wfexs_backend.common.URIType, the_id: Optional[str] = None, the_name: Optional[RelPath] = None, the_alternate_name: Optional[RelPath] = None, do_attach: bool = True) -> Union[Tuple[FixedDataset, Sequence[FixedFile]], Tuple[None, None]]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_directory_as_dataset

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_directory_as_dataset

   .. py:method:: _add_workflow_to_crate(the_workflow: wfexs_backend.common.LocalWorkflow, lang: rocrate.model.computerlanguage.ComputerLanguage, the_description: Optional[str], the_weng_crate: rocrate.model.softwareapplication.SoftwareApplication, materialized_engine: wfexs_backend.workflow_engines.MaterializedWorkflowEngine, the_uri: Optional[str] = None, remote_repo: Optional[RemoteRepo] = None, main: bool = False, gen_cwl: bool = False, do_attach: bool = True, was_workflow_run: bool = True) -> wfexs_backend.ro_crate.FixedWorkflow
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_workflow_to_crate

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_workflow_to_crate

   .. py:method:: addWorkflowExpectedOutputs(outputs: Sequence[ExpectedOutput]) -> None
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowExpectedOutputs

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowExpectedOutputs

   .. py:method:: writeWRROC(filename: pathlib.Path) -> None
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate.writeWRROC

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.writeWRROC

   .. py:method:: addStagedWorkflowDetails(inputs: Sequence[MaterializedInput], environment: Sequence[MaterializedInput], outputs: Optional[Sequence[ExpectedOutput]], profiles: Optional[Sequence[str]] = None) -> None
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate.addStagedWorkflowDetails

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.addStagedWorkflowDetails

   .. py:method:: addWorkflowExecution(stagedExec: wfexs_backend.workflow_engines.StagedExecution, expected_outputs: Optional[Sequence[ExpectedOutput]] = None) -> None
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowExecution

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate.addWorkflowExecution

   .. py:method:: _add_workflow_execution_outputs(outputs: Sequence[MaterializedOutput], job_work_dir: pathlib.Path) -> Sequence[rocrate.model.entity.Entity]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_workflow_execution_outputs

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_workflow_execution_outputs

   .. py:method:: _add_GeneratedContent_to_crate(the_content: wfexs_backend.common.GeneratedContent, job_work_dir: pathlib.Path, do_attach: bool = True) -> Union[FixedFile, Collection]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_GeneratedContent_to_crate

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_GeneratedContent_to_crate

   .. py:method:: _add_GeneratedDirectoryContent_as_dataset(the_content: wfexs_backend.common.GeneratedDirectoryContent, job_work_dir: pathlib.Path, do_attach: bool = True) -> Union[Tuple[Union[FixedDataset, Collection], Sequence[Union[FixedFile, Collection]]], Tuple[None, None]]
      :canonical: wfexs_backend.ro_crate.WorkflowRunROCrate._add_GeneratedDirectoryContent_as_dataset

      .. autodoc2-docstring:: wfexs_backend.ro_crate.WorkflowRunROCrate._add_GeneratedDirectoryContent_as_dataset
