arctrl 3.0.0a3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- arctrl/__init__.py +18 -0
- arctrl/py/CWL/__init__.py +0 -0
- arctrl/py/CWL/cwltypes.py +150 -0
- arctrl/py/CWL/decode.py +973 -0
- arctrl/py/CWL/encode.py +1 -0
- arctrl/py/CWL/inputs.py +88 -0
- arctrl/py/CWL/outputs.py +85 -0
- arctrl/py/CWL/requirements.py +77 -0
- arctrl/py/CWL/tool_description.py +103 -0
- arctrl/py/CWL/workflow_description.py +104 -0
- arctrl/py/CWL/workflow_steps.py +113 -0
- arctrl/py/Contract/__init__.py +0 -0
- arctrl/py/Contract/arc.py +60 -0
- arctrl/py/Contract/arc_assay.py +125 -0
- arctrl/py/Contract/arc_investigation.py +88 -0
- arctrl/py/Contract/arc_run.py +125 -0
- arctrl/py/Contract/arc_study.py +126 -0
- arctrl/py/Contract/arc_workflow.py +125 -0
- arctrl/py/Contract/contract.py +153 -0
- arctrl/py/Contract/datamap.py +372 -0
- arctrl/py/Contract/git.py +118 -0
- arctrl/py/Contract/validation_packages_config.py +107 -0
- arctrl/py/ContractIO/__init__.py +0 -0
- arctrl/py/ContractIO/contract_io.py +344 -0
- arctrl/py/ContractIO/file_system_helper.py +264 -0
- arctrl/py/Core/Helper/__init__.py +0 -0
- arctrl/py/Core/Helper/collections_.py +438 -0
- arctrl/py/Core/Helper/date_time.py +26 -0
- arctrl/py/Core/Helper/hash_codes.py +60 -0
- arctrl/py/Core/Helper/identifier.py +248 -0
- arctrl/py/Core/Helper/orcid.py +42 -0
- arctrl/py/Core/Helper/printer.py +13 -0
- arctrl/py/Core/Helper/regex.py +554 -0
- arctrl/py/Core/Helper/sem_ver.py +71 -0
- arctrl/py/Core/Helper/url.py +148 -0
- arctrl/py/Core/Process/__init__.py +0 -0
- arctrl/py/Core/Process/column_index.py +280 -0
- arctrl/py/Core/Process/component.py +200 -0
- arctrl/py/Core/Process/factor.py +151 -0
- arctrl/py/Core/Process/factor_value.py +182 -0
- arctrl/py/Core/Process/material.py +74 -0
- arctrl/py/Core/Process/material_attribute.py +95 -0
- arctrl/py/Core/Process/material_attribute_value.py +184 -0
- arctrl/py/Core/Process/material_type.py +45 -0
- arctrl/py/Core/Process/process.py +477 -0
- arctrl/py/Core/Process/process_input.py +265 -0
- arctrl/py/Core/Process/process_output.py +235 -0
- arctrl/py/Core/Process/process_parameter_value.py +200 -0
- arctrl/py/Core/Process/process_sequence.py +435 -0
- arctrl/py/Core/Process/protocol.py +175 -0
- arctrl/py/Core/Process/protocol_parameter.py +98 -0
- arctrl/py/Core/Process/sample.py +82 -0
- arctrl/py/Core/Process/source.py +62 -0
- arctrl/py/Core/Table/__init__.py +0 -0
- arctrl/py/Core/Table/arc_table.py +1264 -0
- arctrl/py/Core/Table/arc_table_aux.py +575 -0
- arctrl/py/Core/Table/arc_tables.py +591 -0
- arctrl/py/Core/Table/composite_cell.py +319 -0
- arctrl/py/Core/Table/composite_column.py +73 -0
- arctrl/py/Core/Table/composite_header.py +739 -0
- arctrl/py/Core/__init__.py +0 -0
- arctrl/py/Core/arc_types.py +5064 -0
- arctrl/py/Core/comment.py +128 -0
- arctrl/py/Core/comment_list.py +127 -0
- arctrl/py/Core/conversion.py +1313 -0
- arctrl/py/Core/data.py +245 -0
- arctrl/py/Core/data_context.py +157 -0
- arctrl/py/Core/data_file.py +112 -0
- arctrl/py/Core/data_map.py +225 -0
- arctrl/py/Core/identifier_setters.py +31 -0
- arctrl/py/Core/iproperty_value.py +36 -0
- arctrl/py/Core/ontology_annotation.py +299 -0
- arctrl/py/Core/ontology_source_reference.py +114 -0
- arctrl/py/Core/person.py +259 -0
- arctrl/py/Core/publication.py +161 -0
- arctrl/py/Core/template.py +231 -0
- arctrl/py/Core/templates.py +148 -0
- arctrl/py/Core/uri.py +11 -0
- arctrl/py/Core/value.py +188 -0
- arctrl/py/FileSystem/__init__.py +0 -0
- arctrl/py/FileSystem/commit.py +21 -0
- arctrl/py/FileSystem/default_gitattributes.py +5 -0
- arctrl/py/FileSystem/default_gitignore.py +5 -0
- arctrl/py/FileSystem/file_system.py +58 -0
- arctrl/py/FileSystem/file_system_tree.py +426 -0
- arctrl/py/FileSystem/path.py +64 -0
- arctrl/py/Json/DataMap/__init__.py +0 -0
- arctrl/py/Json/DataMap/data_context.py +101 -0
- arctrl/py/Json/DataMap/data_map.py +53 -0
- arctrl/py/Json/Process/__init__.py +0 -0
- arctrl/py/Json/Process/assay_materials.py +46 -0
- arctrl/py/Json/Process/component.py +79 -0
- arctrl/py/Json/Process/factor.py +107 -0
- arctrl/py/Json/Process/factor_value.py +101 -0
- arctrl/py/Json/Process/material.py +226 -0
- arctrl/py/Json/Process/material_attribute.py +79 -0
- arctrl/py/Json/Process/material_attribute_value.py +101 -0
- arctrl/py/Json/Process/material_type.py +53 -0
- arctrl/py/Json/Process/process.py +296 -0
- arctrl/py/Json/Process/process_input.py +83 -0
- arctrl/py/Json/Process/process_output.py +67 -0
- arctrl/py/Json/Process/process_parameter_value.py +81 -0
- arctrl/py/Json/Process/protocol.py +354 -0
- arctrl/py/Json/Process/protocol_parameter.py +79 -0
- arctrl/py/Json/Process/sample.py +277 -0
- arctrl/py/Json/Process/source.py +214 -0
- arctrl/py/Json/Process/study_materials.py +52 -0
- arctrl/py/Json/Process/value.py +56 -0
- arctrl/py/Json/ROCrate/__init__.py +0 -0
- arctrl/py/Json/ROCrate/ldcontext.py +133 -0
- arctrl/py/Json/ROCrate/ldgraph.py +111 -0
- arctrl/py/Json/ROCrate/ldnode.py +290 -0
- arctrl/py/Json/ROCrate/ldref.py +44 -0
- arctrl/py/Json/ROCrate/ldvalue.py +102 -0
- arctrl/py/Json/Table/__init__.py +0 -0
- arctrl/py/Json/Table/arc_table.py +393 -0
- arctrl/py/Json/Table/cell_table.py +83 -0
- arctrl/py/Json/Table/composite_cell.py +136 -0
- arctrl/py/Json/Table/composite_header.py +67 -0
- arctrl/py/Json/Table/iotype.py +24 -0
- arctrl/py/Json/Table/oatable.py +82 -0
- arctrl/py/Json/Table/templates.py +281 -0
- arctrl/py/Json/__init__.py +0 -0
- arctrl/py/Json/assay.py +600 -0
- arctrl/py/Json/comment.py +206 -0
- arctrl/py/Json/context/rocrate/__init__.py +0 -0
- arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
- arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
- arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
- arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
- arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
- arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
- arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
- arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
- arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
- arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
- arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
- arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
- arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
- arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
- arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
- arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
- arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
- arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
- arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
- arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
- arctrl/py/Json/converter_options.py +23 -0
- arctrl/py/Json/data.py +356 -0
- arctrl/py/Json/data_file.py +63 -0
- arctrl/py/Json/decode.py +155 -0
- arctrl/py/Json/encode.py +92 -0
- arctrl/py/Json/idtable.py +44 -0
- arctrl/py/Json/investigation.py +695 -0
- arctrl/py/Json/ontology_annotation.py +404 -0
- arctrl/py/Json/ontology_source_reference.py +255 -0
- arctrl/py/Json/person.py +658 -0
- arctrl/py/Json/property_value.py +359 -0
- arctrl/py/Json/publication.py +279 -0
- arctrl/py/Json/string_table.py +76 -0
- arctrl/py/Json/study.py +793 -0
- arctrl/py/JsonIO/DataMap/__init__.py +0 -0
- arctrl/py/JsonIO/DataMap/data_map.py +53 -0
- arctrl/py/JsonIO/Process/__init__.py +0 -0
- arctrl/py/JsonIO/Process/component.py +60 -0
- arctrl/py/JsonIO/Process/factor.py +36 -0
- arctrl/py/JsonIO/Process/factor_value.py +38 -0
- arctrl/py/JsonIO/Process/material.py +60 -0
- arctrl/py/JsonIO/Process/material_attribute.py +38 -0
- arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
- arctrl/py/JsonIO/Process/material_type.py +36 -0
- arctrl/py/JsonIO/Process/process.py +60 -0
- arctrl/py/JsonIO/Process/process_input.py +38 -0
- arctrl/py/JsonIO/Process/process_output.py +60 -0
- arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
- arctrl/py/JsonIO/Process/process_sequence.py +71 -0
- arctrl/py/JsonIO/Process/protocol.py +60 -0
- arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
- arctrl/py/JsonIO/Process/sample.py +60 -0
- arctrl/py/JsonIO/Process/source.py +60 -0
- arctrl/py/JsonIO/Process/study_materials.py +52 -0
- arctrl/py/JsonIO/Process/value.py +32 -0
- arctrl/py/JsonIO/Table/__init__.py +0 -0
- arctrl/py/JsonIO/Table/arc_table.py +121 -0
- arctrl/py/JsonIO/Table/composite_cell.py +36 -0
- arctrl/py/JsonIO/Table/composite_header.py +36 -0
- arctrl/py/JsonIO/Table/compression.py +85 -0
- arctrl/py/JsonIO/Table/iotype.py +36 -0
- arctrl/py/JsonIO/Table/templates.py +113 -0
- arctrl/py/JsonIO/__init__.py +0 -0
- arctrl/py/JsonIO/assay.py +113 -0
- arctrl/py/JsonIO/comment.py +80 -0
- arctrl/py/JsonIO/data.py +60 -0
- arctrl/py/JsonIO/data_file.py +58 -0
- arctrl/py/JsonIO/decode.py +9 -0
- arctrl/py/JsonIO/encode.py +1 -0
- arctrl/py/JsonIO/investigation.py +113 -0
- arctrl/py/JsonIO/ldobject.py +106 -0
- arctrl/py/JsonIO/ontology_annotation.py +80 -0
- arctrl/py/JsonIO/ontology_source_reference.py +80 -0
- arctrl/py/JsonIO/person.py +82 -0
- arctrl/py/JsonIO/publication.py +82 -0
- arctrl/py/JsonIO/study.py +114 -0
- arctrl/py/ROCrate/Generic/__init__.py +0 -0
- arctrl/py/ROCrate/Generic/comment.py +131 -0
- arctrl/py/ROCrate/Generic/dataset.py +817 -0
- arctrl/py/ROCrate/Generic/defined_term.py +131 -0
- arctrl/py/ROCrate/Generic/file.py +237 -0
- arctrl/py/ROCrate/Generic/lab_process.py +324 -0
- arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
- arctrl/py/ROCrate/Generic/organization.py +83 -0
- arctrl/py/ROCrate/Generic/person.py +484 -0
- arctrl/py/ROCrate/Generic/postal_address.py +195 -0
- arctrl/py/ROCrate/Generic/property_value.py +696 -0
- arctrl/py/ROCrate/Generic/sample.py +202 -0
- arctrl/py/ROCrate/Generic/scholarly_article.py +229 -0
- arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
- arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
- arctrl/py/ROCrate/ISAProfile/data.py +65 -0
- arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
- arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
- arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
- arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
- arctrl/py/ROCrate/ISAProfile/person.py +72 -0
- arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
- arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
- arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
- arctrl/py/ROCrate/ISAProfile/study.py +74 -0
- arctrl/py/ROCrate/__init__.py +0 -0
- arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
- arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
- arctrl/py/ROCrate/helper.py +8 -0
- arctrl/py/ROCrate/ldcontext.py +362 -0
- arctrl/py/ROCrate/ldobject.py +1247 -0
- arctrl/py/ROCrate/rocrate_context.py +51 -0
- arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +193 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
- arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
- arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
- arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -0
- arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
- arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
- arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
- arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
- arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
- arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
- arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
- arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
- arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
- arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
- arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
- arctrl/py/Spreadsheet/Metadata/run.py +122 -0
- arctrl/py/Spreadsheet/Metadata/sparse_table.py +508 -0
- arctrl/py/Spreadsheet/Metadata/study.py +312 -0
- arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
- arctrl/py/Spreadsheet/__init__.py +0 -0
- arctrl/py/Spreadsheet/arc_assay.py +233 -0
- arctrl/py/Spreadsheet/arc_investigation.py +418 -0
- arctrl/py/Spreadsheet/arc_run.py +190 -0
- arctrl/py/Spreadsheet/arc_study.py +144 -0
- arctrl/py/Spreadsheet/arc_workflow.py +176 -0
- arctrl/py/Spreadsheet/assembly_info.py +1 -0
- arctrl/py/Spreadsheet/collection_aux.py +167 -0
- arctrl/py/Spreadsheet/data_map.py +44 -0
- arctrl/py/Spreadsheet/template.py +460 -0
- arctrl/py/ValidationPackages/__init__.py +0 -0
- arctrl/py/ValidationPackages/validation_package.py +82 -0
- arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
- arctrl/py/WebRequest/__init__.py +0 -0
- arctrl/py/WebRequest/web_request.py +9 -0
- arctrl/py/WebRequest/web_request_py.py +135 -0
- arctrl/py/Yaml/__init__.py +0 -0
- arctrl/py/Yaml/decode.py +1 -0
- arctrl/py/Yaml/encode.py +10 -0
- arctrl/py/Yaml/validation_package.py +77 -0
- arctrl/py/Yaml/validation_packages_config.py +86 -0
- arctrl/py/__init__.py +0 -0
- arctrl/py/arc.py +1400 -0
- arctrl/py/column_index.py +280 -0
- arctrl/py/conversion.py +2184 -0
- arctrl/py/cross_async.py +76 -0
- arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
- arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
- arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
- arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
- arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
- arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
- arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
- arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
- arctrl/py/fable_modules/fable_library/__init__.py +0 -0
- arctrl/py/fable_modules/fable_library/array_.py +1528 -0
- arctrl/py/fable_modules/fable_library/async_.py +377 -0
- arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
- arctrl/py/fable_modules/fable_library/big_int.py +330 -0
- arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
- arctrl/py/fable_modules/fable_library/boolean.py +26 -0
- arctrl/py/fable_modules/fable_library/char.py +237 -0
- arctrl/py/fable_modules/fable_library/choice.py +212 -0
- arctrl/py/fable_modules/fable_library/date.py +779 -0
- arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
- arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
- arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
- arctrl/py/fable_modules/fable_library/double.py +87 -0
- arctrl/py/fable_modules/fable_library/encoding.py +41 -0
- arctrl/py/fable_modules/fable_library/event.py +206 -0
- arctrl/py/fable_modules/fable_library/file.py +107 -0
- arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
- arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
- arctrl/py/fable_modules/fable_library/global_.py +63 -0
- arctrl/py/fable_modules/fable_library/guid.py +41 -0
- arctrl/py/fable_modules/fable_library/int32.py +73 -0
- arctrl/py/fable_modules/fable_library/list.py +1788 -0
- arctrl/py/fable_modules/fable_library/long.py +240 -0
- arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
- arctrl/py/fable_modules/fable_library/map.py +1854 -0
- arctrl/py/fable_modules/fable_library/map_util.py +148 -0
- arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
- arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
- arctrl/py/fable_modules/fable_library/native.py +45 -0
- arctrl/py/fable_modules/fable_library/numeric.py +46 -0
- arctrl/py/fable_modules/fable_library/observable.py +222 -0
- arctrl/py/fable_modules/fable_library/option.py +128 -0
- arctrl/py/fable_modules/fable_library/path.py +62 -0
- arctrl/py/fable_modules/fable_library/range.py +117 -0
- arctrl/py/fable_modules/fable_library/reflection.py +463 -0
- arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
- arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
- arctrl/py/fable_modules/fable_library/result.py +212 -0
- arctrl/py/fable_modules/fable_library/seq.py +1979 -0
- arctrl/py/fable_modules/fable_library/seq2.py +221 -0
- arctrl/py/fable_modules/fable_library/set.py +2414 -0
- arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
- arctrl/py/fable_modules/fable_library/string_.py +573 -0
- arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
- arctrl/py/fable_modules/fable_library/system_text.py +237 -0
- arctrl/py/fable_modules/fable_library/task.py +116 -0
- arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
- arctrl/py/fable_modules/fable_library/thread.py +5 -0
- arctrl/py/fable_modules/fable_library/time_span.py +283 -0
- arctrl/py/fable_modules/fable_library/timer.py +24 -0
- arctrl/py/fable_modules/fable_library/types.py +401 -0
- arctrl/py/fable_modules/fable_library/uri.py +109 -0
- arctrl/py/fable_modules/fable_library/util.py +2735 -0
- arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
- arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
- arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
- arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
- arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
- arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
- arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
- arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
- arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
- arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +338 -0
- arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +464 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
- arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +57 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
- arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +217 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -0
- arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +393 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -0
- arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
- arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +218 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +180 -0
- arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
- arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/table.py +53 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
- arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
- arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
- arctrl/py/fable_modules/thoth_json_core/encode.py +261 -0
- arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
- arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
- arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
- arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
- arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
- arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
- arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
- arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
- arctrl/py/fable_modules/yamlicious/encode.py +84 -0
- arctrl/py/fable_modules/yamlicious/library.py +10 -0
- arctrl/py/fable_modules/yamlicious/persil.py +57 -0
- arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
- arctrl/py/fable_modules/yamlicious/reader.py +665 -0
- arctrl/py/fable_modules/yamlicious/regex.py +21 -0
- arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
- arctrl/py/fable_modules/yamlicious/writer.py +175 -0
- arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
- arctrl/py/json.py +213 -0
- arctrl/py/rocrate_io.py +72 -0
- arctrl/py/template_web.py +23 -0
- arctrl/py/xlsx.py +148 -0
- arctrl/rocrate.py +21 -0
- arctrl-3.0.0a3.dist-info/LICENSE +21 -0
- arctrl-3.0.0a3.dist-info/METADATA +119 -0
- arctrl-3.0.0a3.dist-info/RECORD +456 -0
- arctrl-3.0.0a3.dist-info/WHEEL +4 -0
arctrl/py/conversion.py
ADDED
|
@@ -0,0 +1,2184 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from collections.abc import Callable
|
|
3
|
+
from typing import Any
|
|
4
|
+
from .Core.arc_types import (ArcAssay, ArcStudy, ArcInvestigation)
|
|
5
|
+
from .Core.comment import Comment
|
|
6
|
+
from .Core.data import (Data, DataAux_pathAndSelectorFromName)
|
|
7
|
+
from .Core.data_context import (DataContext__get_Explication, DataContext__get_Unit, DataContext__get_ObjectType, DataContext__get_GeneratedBy, DataContext__get_Description, DataContext__get_Label, DataContext, DataContext__ctor_Z780A8A2A)
|
|
8
|
+
from .Core.data_file import (DataFile__get_AsString, DataFile, DataFile_fromString_Z721C83C5)
|
|
9
|
+
from .Core.data_map import (DataMap__get_DataContexts, DataMap, DataMap__ctor_4E3220A7, DataMap_init)
|
|
10
|
+
from .Core.Helper.collections_ import (Option_fromValueWithDefault, Option_fromSeq, ResizeArray_map, ResizeArray_singleton, ResizeArray_create, ResizeArray_zip, ResizeArray_appendSingleton, ResizeArray_tryPick, ResizeArray_distinct, ResizeArray_append, ResizeArray_choose, ResizeArray_collect, ResizeArray_filter, ResizeArray_tryFind, ResizeArray_groupBy)
|
|
11
|
+
from .Core.Helper.identifier import create_missing_identifier
|
|
12
|
+
from .Core.Helper.orcid import try_get_orcid_number
|
|
13
|
+
from .Core.Helper.regex import ActivePatterns__007CRegex_007C__007C
|
|
14
|
+
from .Core.ontology_annotation import OntologyAnnotation
|
|
15
|
+
from .Core.person import Person
|
|
16
|
+
from .Core.publication import Publication
|
|
17
|
+
from .Core.Table.arc_table import ArcTable
|
|
18
|
+
from .Core.Table.arc_table_aux import Unchecked_alignByHeaders
|
|
19
|
+
from .Core.Table.arc_tables import ArcTables
|
|
20
|
+
from .Core.Table.composite_cell import CompositeCell
|
|
21
|
+
from .Core.Table.composite_header import (CompositeHeader, IOType)
|
|
22
|
+
from .Json.decode import Decode_datetime
|
|
23
|
+
from .Json.encode import date_time
|
|
24
|
+
from .Json.ROCrate.ldnode import (decoder as decoder_1, encoder)
|
|
25
|
+
from .ROCrate.Generic.comment import LDComment
|
|
26
|
+
from .ROCrate.Generic.dataset import LDDataset
|
|
27
|
+
from .ROCrate.Generic.defined_term import LDDefinedTerm
|
|
28
|
+
from .ROCrate.Generic.file import LDFile
|
|
29
|
+
from .ROCrate.Generic.lab_process import LDLabProcess
|
|
30
|
+
from .ROCrate.Generic.lab_protocol import LDLabProtocol
|
|
31
|
+
from .ROCrate.Generic.organization import LDOrganization
|
|
32
|
+
from .ROCrate.Generic.person import LDPerson
|
|
33
|
+
from .ROCrate.Generic.property_value import LDPropertyValue
|
|
34
|
+
from .ROCrate.Generic.sample import LDSample
|
|
35
|
+
from .ROCrate.Generic.scholarly_article import LDScholarlyArticle
|
|
36
|
+
from .ROCrate.ldcontext import LDContext
|
|
37
|
+
from .ROCrate.ldobject import (LDNode, LDRef, LDGraph)
|
|
38
|
+
from .fable_modules.thoth_json_python.decode import Decode_fromString
|
|
39
|
+
from .fable_modules.thoth_json_python.encode import to_string
|
|
40
|
+
from .fable_modules.fable_library.array_ import singleton as singleton_1
|
|
41
|
+
from .fable_modules.fable_library.date import now
|
|
42
|
+
from .fable_modules.fable_library.int32 import (try_parse, parse)
|
|
43
|
+
from .fable_modules.fable_library.list import (FSharpList, choose, length, empty, map as map_2, sort_by, singleton as singleton_2, initialize, collect, of_seq)
|
|
44
|
+
from .fable_modules.fable_library.map_util import get_item_from_dict
|
|
45
|
+
from .fable_modules.fable_library.option import (value as value_4, map, default_arg, bind)
|
|
46
|
+
from .fable_modules.fable_library.range import range_big_int
|
|
47
|
+
from .fable_modules.fable_library.reflection import (TypeInfo, class_type)
|
|
48
|
+
from .fable_modules.fable_library.reg_exp import (get_item, groups)
|
|
49
|
+
from .fable_modules.fable_library.result import FSharpResult_2
|
|
50
|
+
from .fable_modules.fable_library.seq import (indexed, to_list, filter, try_pick, choose as choose_1, map as map_1, max, delay, append, empty as empty_1, singleton, fold, zip, is_empty)
|
|
51
|
+
from .fable_modules.fable_library.seq2 import (List_groupBy, List_distinct)
|
|
52
|
+
from .fable_modules.fable_library.string_ import (to_text, printf, to_fail, remove, join)
|
|
53
|
+
from .fable_modules.fable_library.system_text import (StringBuilder__ctor, StringBuilder__Append_244C7CD6, StringBuilder__Clear)
|
|
54
|
+
from .fable_modules.fable_library.types import (FSharpRef, to_string as to_string_1, Array)
|
|
55
|
+
from .fable_modules.fable_library.util import (int32_to_string, IEnumerable_1, compare_primitives, string_hash, get_enumerator, dispose, ignore, equals, safe_hash)
|
|
56
|
+
|
|
57
|
+
def DateTime_tryFromString(s: str) -> Any | None:
|
|
58
|
+
try:
|
|
59
|
+
def _arrow3666(__unit: None=None) -> Any:
|
|
60
|
+
match_value: FSharpResult_2[Any, str] = Decode_fromString(Decode_datetime, s)
|
|
61
|
+
if match_value.tag == 1:
|
|
62
|
+
raise Exception(to_text(printf("Error decoding string: %O"))(match_value.fields[0]))
|
|
63
|
+
|
|
64
|
+
else:
|
|
65
|
+
return match_value.fields[0]
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
return _arrow3666()
|
|
69
|
+
|
|
70
|
+
except Exception as match_value_1:
|
|
71
|
+
return None
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def DateTime_toString(d: Any) -> str:
|
|
76
|
+
return to_string(0, date_time(d))
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
def ColumnIndex_tryInt(str_1: str) -> int | None:
|
|
80
|
+
match_value: tuple[bool, int]
|
|
81
|
+
out_arg: int = 0
|
|
82
|
+
def _arrow3667(__unit: None=None, str_1: Any=str_1) -> int:
|
|
83
|
+
return out_arg
|
|
84
|
+
|
|
85
|
+
def _arrow3668(v: int, str_1: Any=str_1) -> None:
|
|
86
|
+
nonlocal out_arg
|
|
87
|
+
out_arg = v or 0
|
|
88
|
+
|
|
89
|
+
match_value = (try_parse(str_1, 511, False, 32, FSharpRef(_arrow3667, _arrow3668)), out_arg)
|
|
90
|
+
if match_value[0]:
|
|
91
|
+
return match_value[1]
|
|
92
|
+
|
|
93
|
+
else:
|
|
94
|
+
return None
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
ColumnIndex_orderName: str = "columnIndex"
|
|
99
|
+
|
|
100
|
+
def ColumnIndex_tryGetIndex(node: LDNode) -> int | None:
|
|
101
|
+
match_value: Any | None = node.TryGetPropertyAsSingleton(ColumnIndex_orderName)
|
|
102
|
+
(pattern_matching_result, ci) = (None, None)
|
|
103
|
+
if match_value is not None:
|
|
104
|
+
if str(type(value_4(match_value))) == "<class \'str\'>":
|
|
105
|
+
pattern_matching_result = 0
|
|
106
|
+
ci = value_4(match_value)
|
|
107
|
+
|
|
108
|
+
else:
|
|
109
|
+
pattern_matching_result = 1
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
else:
|
|
113
|
+
pattern_matching_result = 1
|
|
114
|
+
|
|
115
|
+
if pattern_matching_result == 0:
|
|
116
|
+
return ColumnIndex_tryInt(ci)
|
|
117
|
+
|
|
118
|
+
elif pattern_matching_result == 1:
|
|
119
|
+
return None
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
def ColumnIndex_setIndex(node: LDNode, index: int) -> None:
|
|
124
|
+
node.SetProperty(ColumnIndex_orderName, int32_to_string(index))
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
def ARCtrl_ROCrate_LDNode__LDNode_GetColumnIndex(this: LDNode) -> int:
|
|
128
|
+
return value_4(ColumnIndex_tryGetIndex(this))
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
def ARCtrl_ROCrate_LDNode__LDNode_TryGetColumnIndex(this: LDNode) -> int | None:
|
|
132
|
+
return ColumnIndex_tryGetIndex(this)
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
def ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4(this: LDNode, index: int) -> None:
|
|
136
|
+
ColumnIndex_setIndex(this, index)
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
def _expr3669() -> TypeInfo:
|
|
140
|
+
return class_type("ARCtrl.Conversion.BaseTypes", None, BaseTypes)
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
class BaseTypes:
|
|
144
|
+
...
|
|
145
|
+
|
|
146
|
+
BaseTypes_reflection = _expr3669
|
|
147
|
+
|
|
148
|
+
def BaseTypes_composeComment_Z13201A7E(comment: Comment) -> LDNode:
|
|
149
|
+
name: str
|
|
150
|
+
match_value: str | None = comment.Name
|
|
151
|
+
if match_value is None:
|
|
152
|
+
raise Exception("Comment must have a name")
|
|
153
|
+
|
|
154
|
+
else:
|
|
155
|
+
name = match_value
|
|
156
|
+
|
|
157
|
+
return LDComment.create(name, None, comment.Value)
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
def BaseTypes_decomposeComment_Z2F770004(comment: LDNode, context: LDContext | None=None) -> Comment:
|
|
161
|
+
return Comment(LDComment.get_name_as_string(comment, context), LDComment.try_get_text_as_string(comment, context))
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
def BaseTypes_ontologyTermFromNameAndID_40457300(name: str | None=None, id: str | None=None) -> OntologyAnnotation:
|
|
165
|
+
if id is None:
|
|
166
|
+
return OntologyAnnotation.create(name)
|
|
167
|
+
|
|
168
|
+
else:
|
|
169
|
+
t: str = id
|
|
170
|
+
return OntologyAnnotation.from_term_annotation(t, name)
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
def BaseTypes_tryOntologyTermFromNameAndID_40457300(name: str | None=None, id: str | None=None) -> OntologyAnnotation | None:
|
|
175
|
+
if (id is None) if (name is None) else False:
|
|
176
|
+
return None
|
|
177
|
+
|
|
178
|
+
else:
|
|
179
|
+
return BaseTypes_ontologyTermFromNameAndID_40457300(name, id)
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
def BaseTypes_composeDefinedTerm_ZDED3A0F(term: OntologyAnnotation) -> LDNode:
|
|
184
|
+
tan: str | None = Option_fromValueWithDefault("", term.TermAccessionAndOntobeeUrlIfShort)
|
|
185
|
+
return LDDefinedTerm.create(term.NameText, None, tan)
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
def BaseTypes_decomposeDefinedTerm_Z2F770004(term: LDNode, context: LDContext | None=None) -> OntologyAnnotation:
|
|
189
|
+
return BaseTypes_ontologyTermFromNameAndID_40457300(LDDefinedTerm.get_name_as_string(term, context), LDDefinedTerm.try_get_term_code_as_string(term, context))
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
def BaseTypes_composePropertyValueFromOA_ZDED3A0F(term: OntologyAnnotation) -> LDNode:
|
|
193
|
+
tan: str | None = Option_fromValueWithDefault("", term.TermAccessionAndOntobeeUrlIfShort)
|
|
194
|
+
return LDPropertyValue.create(term.NameText, None, None, tan)
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
def BaseTypes_decomposePropertyValueToOA_Z2F770004(term: LDNode, context: LDContext | None=None) -> OntologyAnnotation:
|
|
198
|
+
return BaseTypes_ontologyTermFromNameAndID_40457300(LDPropertyValue.get_name_as_string(term, context), LDPropertyValue.try_get_property_idas_string(term, context))
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
def BaseTypes_valuesOfCell_Z436420FE(value: CompositeCell) -> tuple[str | None, str | None, str | None, str | None]:
|
|
202
|
+
if value.tag == 0:
|
|
203
|
+
if value.fields[0].is_empty():
|
|
204
|
+
return (None, None, None, None)
|
|
205
|
+
|
|
206
|
+
elif value.fields[0].TANInfo is not None:
|
|
207
|
+
return (value.fields[0].Name, value.fields[0].TermAccessionAndOntobeeUrlIfShort, None, None)
|
|
208
|
+
|
|
209
|
+
else:
|
|
210
|
+
return (value.fields[0].Name, None, None, None)
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
elif value.tag == 2:
|
|
214
|
+
pattern_input: tuple[str | None, str | None] = ((None, None)) if value.fields[1].is_empty() else ((value.fields[1].Name, Option_fromValueWithDefault("", value.fields[1].TermAccessionAndOntobeeUrlIfShort)))
|
|
215
|
+
return (Option_fromValueWithDefault("", value.fields[0]), None, pattern_input[0], pattern_input[1])
|
|
216
|
+
|
|
217
|
+
elif value.tag == 3:
|
|
218
|
+
raise Exception("Data cell should not be parsed to isa value")
|
|
219
|
+
|
|
220
|
+
elif value.fields[0] == "":
|
|
221
|
+
return (None, None, None, None)
|
|
222
|
+
|
|
223
|
+
else:
|
|
224
|
+
return (value.fields[0], None, None, None)
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
def BaseTypes_termOfHeader_6CAF647B(header: CompositeHeader) -> tuple[str, str | None]:
|
|
229
|
+
(pattern_matching_result, oa) = (None, None)
|
|
230
|
+
if header.tag == 0:
|
|
231
|
+
pattern_matching_result = 0
|
|
232
|
+
oa = header.fields[0]
|
|
233
|
+
|
|
234
|
+
elif header.tag == 3:
|
|
235
|
+
pattern_matching_result = 0
|
|
236
|
+
oa = header.fields[0]
|
|
237
|
+
|
|
238
|
+
elif header.tag == 2:
|
|
239
|
+
pattern_matching_result = 0
|
|
240
|
+
oa = header.fields[0]
|
|
241
|
+
|
|
242
|
+
elif header.tag == 1:
|
|
243
|
+
pattern_matching_result = 0
|
|
244
|
+
oa = header.fields[0]
|
|
245
|
+
|
|
246
|
+
else:
|
|
247
|
+
pattern_matching_result = 1
|
|
248
|
+
|
|
249
|
+
if pattern_matching_result == 0:
|
|
250
|
+
return (oa.NameText, oa.TermAccessionAndOntobeeUrlIfShort if (oa.TANInfo is not None) else None)
|
|
251
|
+
|
|
252
|
+
elif pattern_matching_result == 1:
|
|
253
|
+
return to_fail(printf("header %O should not be parsed to isa value"))(header)
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
def BaseTypes_composeComponent(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
258
|
+
pattern_input: tuple[str | None, str | None, str | None, str | None] = BaseTypes_valuesOfCell_Z436420FE(value)
|
|
259
|
+
pattern_input_1: tuple[str, str | None] = BaseTypes_termOfHeader_6CAF647B(header)
|
|
260
|
+
return LDPropertyValue.create_component(pattern_input_1[0], pattern_input[0], None, pattern_input_1[1], pattern_input[3], pattern_input[2], pattern_input[1])
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
def BaseTypes_composeParameterValue(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
264
|
+
pattern_input: tuple[str | None, str | None, str | None, str | None] = BaseTypes_valuesOfCell_Z436420FE(value)
|
|
265
|
+
pattern_input_1: tuple[str, str | None] = BaseTypes_termOfHeader_6CAF647B(header)
|
|
266
|
+
return LDPropertyValue.create_parameter_value(pattern_input_1[0], pattern_input[0], None, pattern_input_1[1], pattern_input[3], pattern_input[2], pattern_input[1])
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
def BaseTypes_composeFactorValue(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
270
|
+
pattern_input: tuple[str | None, str | None, str | None, str | None] = BaseTypes_valuesOfCell_Z436420FE(value)
|
|
271
|
+
pattern_input_1: tuple[str, str | None] = BaseTypes_termOfHeader_6CAF647B(header)
|
|
272
|
+
return LDPropertyValue.create_factor_value(pattern_input_1[0], pattern_input[0], None, pattern_input_1[1], pattern_input[3], pattern_input[2], pattern_input[1])
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
def BaseTypes_composeCharacteristicValue(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
276
|
+
pattern_input: tuple[str | None, str | None, str | None, str | None] = BaseTypes_valuesOfCell_Z436420FE(value)
|
|
277
|
+
pattern_input_1: tuple[str, str | None] = BaseTypes_termOfHeader_6CAF647B(header)
|
|
278
|
+
return LDPropertyValue.create_characteristic_value(pattern_input_1[0], pattern_input[0], None, pattern_input_1[1], pattern_input[3], pattern_input[2], pattern_input[1])
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
def BaseTypes_composeFreetextMaterialName(header_ft: str, name: str) -> str:
|
|
282
|
+
return ((("" + header_ft) + "=") + name) + ""
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
def BaseTypes_composeFile_3A03A101(d: Data) -> LDNode:
|
|
286
|
+
def mapping(dt: DataFile, d: Any=d) -> str:
|
|
287
|
+
return DataFile__get_AsString(dt)
|
|
288
|
+
|
|
289
|
+
data_type: str | None = map(mapping, d.DataType)
|
|
290
|
+
return LDFile.create(d.NameText, d.NameText, None, data_type, d.Format, d.SelectorFormat)
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
def BaseTypes_decomposeFile_Z2F770004(f: LDNode, context: LDContext | None=None) -> Data:
|
|
294
|
+
def mapping(dt: str, f: Any=f, context: Any=context) -> DataFile:
|
|
295
|
+
return DataFile_fromString_Z721C83C5(dt)
|
|
296
|
+
|
|
297
|
+
data_type: DataFile | None = map(mapping, LDFile.try_get_disambiguating_description_as_string(f, context))
|
|
298
|
+
format: str | None = LDFile.try_get_encoding_format_as_string(f, context)
|
|
299
|
+
selector_format: str | None = LDFile.try_get_usage_info_as_string(f, context)
|
|
300
|
+
return Data(None, LDFile.get_name_as_string(f, context), data_type, format, selector_format)
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
def BaseTypes_composeFragmentDescriptor_Z4C0BEF62(dc: DataContext) -> LDNode:
|
|
304
|
+
if dc.Name is None:
|
|
305
|
+
raise Exception("RO-Crate parsing of DataContext failed: Cannot create a fragment descriptor without a name.")
|
|
306
|
+
|
|
307
|
+
id: str = LDPropertyValue.gen_id_fragment_descriptor(dc.NameText)
|
|
308
|
+
def mapping(e: OntologyAnnotation, dc: Any=dc) -> tuple[str | None, str | None]:
|
|
309
|
+
return (e.Name, Option_fromValueWithDefault("", e.TermAccessionAndOntobeeUrlIfShort))
|
|
310
|
+
|
|
311
|
+
pattern_input: tuple[str | None, str | None] = default_arg(map(mapping, DataContext__get_Explication(dc)), (None, None))
|
|
312
|
+
def mapping_1(u: OntologyAnnotation, dc: Any=dc) -> tuple[str | None, str | None]:
|
|
313
|
+
return (u.Name, Option_fromValueWithDefault("", u.TermAccessionAndOntobeeUrlIfShort))
|
|
314
|
+
|
|
315
|
+
pattern_input_1: tuple[str | None, str | None] = default_arg(map(mapping_1, DataContext__get_Unit(dc)), (None, None))
|
|
316
|
+
def f(c: Comment, dc: Any=dc) -> str:
|
|
317
|
+
return to_string_1(c)
|
|
318
|
+
|
|
319
|
+
disambiguating_descriptions: Array[str] | None = Option_fromSeq(ResizeArray_map(f, dc.Comments))
|
|
320
|
+
data_fragment: LDNode = BaseTypes_composeFile_3A03A101(dc)
|
|
321
|
+
def mapping_2(term: OntologyAnnotation, dc: Any=dc) -> LDNode:
|
|
322
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(term)
|
|
323
|
+
|
|
324
|
+
pattern: LDNode | None = map(mapping_2, DataContext__get_ObjectType(dc))
|
|
325
|
+
data_fragment.SetProperty(LDFile.about(), LDRef(id))
|
|
326
|
+
data_fragment.SetOptionalProperty(LDFile.pattern(), pattern)
|
|
327
|
+
return LDPropertyValue.create_fragment_descriptor(dc.NameText, pattern_input[0], None, pattern_input_1[1], pattern_input_1[0], pattern_input[1], DataContext__get_GeneratedBy(dc), DataContext__get_Description(dc), DataContext__get_Label(dc), disambiguating_descriptions, data_fragment)
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
def BaseTypes_decomposeFragmentDescriptor_Z6839B9E8(fd: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> DataContext:
|
|
331
|
+
file: LDNode | None = LDPropertyValue.try_get_subject_of(fd, graph, context)
|
|
332
|
+
name: str
|
|
333
|
+
if file is None:
|
|
334
|
+
raise Exception("RO-Crate parsing of DataContext failed: Cannot decompose a fragment descriptor without a name.")
|
|
335
|
+
|
|
336
|
+
else:
|
|
337
|
+
f: LDNode = file
|
|
338
|
+
name = LDFile.get_name_as_string(f, context)
|
|
339
|
+
|
|
340
|
+
def mapping(pa: LDNode, fd: Any=fd, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
341
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(pa, context)
|
|
342
|
+
|
|
343
|
+
def binder(f_1: LDNode, fd: Any=fd, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
344
|
+
return LDFile.try_get_pattern_as_defined_term(f_1, graph, context)
|
|
345
|
+
|
|
346
|
+
object_type: OntologyAnnotation | None = map(mapping, bind(binder, file))
|
|
347
|
+
def binder_1(f_2: LDNode, fd: Any=fd, graph: Any=graph, context: Any=context) -> str | None:
|
|
348
|
+
return LDFile.try_get_encoding_format_as_string(f_2, context)
|
|
349
|
+
|
|
350
|
+
format: str | None = bind(binder_1, file)
|
|
351
|
+
def binder_2(f_3: LDNode, fd: Any=fd, graph: Any=graph, context: Any=context) -> str | None:
|
|
352
|
+
return LDFile.try_get_usage_info_as_string(f_3, context)
|
|
353
|
+
|
|
354
|
+
selector_format: str | None = bind(binder_2, file)
|
|
355
|
+
explication: OntologyAnnotation | None = BaseTypes_tryOntologyTermFromNameAndID_40457300(LDPropertyValue.try_get_value_as_string(fd), LDPropertyValue.try_get_value_reference_as_string(fd))
|
|
356
|
+
unit: OntologyAnnotation | None = BaseTypes_tryOntologyTermFromNameAndID_40457300(LDPropertyValue.try_get_unit_text_as_string(fd), LDPropertyValue.try_get_unit_code_as_string(fd))
|
|
357
|
+
generated_by: str | None = LDPropertyValue.try_get_measurement_method_as_string(fd)
|
|
358
|
+
description: str | None = LDPropertyValue.try_get_description_as_string(fd)
|
|
359
|
+
def f_4(s: str, fd: Any=fd, graph: Any=graph, context: Any=context) -> Comment:
|
|
360
|
+
return Comment.from_string(s)
|
|
361
|
+
|
|
362
|
+
return DataContext__ctor_Z780A8A2A(None, name, None, format, selector_format, explication, unit, object_type, LDPropertyValue.try_get_alternate_name_as_string(fd), description, generated_by, ResizeArray_map(f_4, LDPropertyValue.get_disambiguating_descriptions_as_string(fd)))
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
def BaseTypes_composeProcessInput(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
366
|
+
if header.tag == 11:
|
|
367
|
+
if header.fields[0].tag == 1:
|
|
368
|
+
return LDSample.create_sample(value.AsFreeText)
|
|
369
|
+
|
|
370
|
+
elif header.fields[0].tag == 3:
|
|
371
|
+
return LDSample.create_material(value.AsFreeText)
|
|
372
|
+
|
|
373
|
+
elif header.fields[0].tag == 2:
|
|
374
|
+
if value.tag == 1:
|
|
375
|
+
ft: str = value.fields[0]
|
|
376
|
+
return LDFile.create(ft, ft)
|
|
377
|
+
|
|
378
|
+
elif value.tag == 3:
|
|
379
|
+
return BaseTypes_composeFile_3A03A101(value.fields[0])
|
|
380
|
+
|
|
381
|
+
else:
|
|
382
|
+
return to_fail(printf("Could not parse input data %O"))(value)
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
elif header.fields[0].tag == 4:
|
|
386
|
+
n: LDNode = LDNode(BaseTypes_composeFreetextMaterialName(header.fields[0].fields[0], value.AsFreeText), [header.fields[0].fields[0]])
|
|
387
|
+
n.SetProperty(LDSample.name(), value.AsFreeText)
|
|
388
|
+
return n
|
|
389
|
+
|
|
390
|
+
else:
|
|
391
|
+
return LDSample.create_source(value.AsFreeText)
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
else:
|
|
395
|
+
return to_fail(printf("Could not parse input header %O"))(header)
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
def BaseTypes_composeProcessOutput(header: CompositeHeader, value: CompositeCell) -> LDNode:
|
|
400
|
+
(pattern_matching_result, ft_1) = (None, None)
|
|
401
|
+
if header.tag == 12:
|
|
402
|
+
if header.fields[0].tag == 1:
|
|
403
|
+
pattern_matching_result = 0
|
|
404
|
+
|
|
405
|
+
elif header.fields[0].tag == 3:
|
|
406
|
+
pattern_matching_result = 1
|
|
407
|
+
|
|
408
|
+
elif header.fields[0].tag == 2:
|
|
409
|
+
pattern_matching_result = 2
|
|
410
|
+
|
|
411
|
+
elif header.fields[0].tag == 4:
|
|
412
|
+
pattern_matching_result = 3
|
|
413
|
+
ft_1 = header.fields[0].fields[0]
|
|
414
|
+
|
|
415
|
+
else:
|
|
416
|
+
pattern_matching_result = 0
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
else:
|
|
420
|
+
pattern_matching_result = 4
|
|
421
|
+
|
|
422
|
+
if pattern_matching_result == 0:
|
|
423
|
+
return LDSample.create_sample(value.AsFreeText)
|
|
424
|
+
|
|
425
|
+
elif pattern_matching_result == 1:
|
|
426
|
+
return LDSample.create_material(value.AsFreeText)
|
|
427
|
+
|
|
428
|
+
elif pattern_matching_result == 2:
|
|
429
|
+
if value.tag == 1:
|
|
430
|
+
ft: str = value.fields[0]
|
|
431
|
+
return LDFile.create(ft, ft)
|
|
432
|
+
|
|
433
|
+
elif value.tag == 3:
|
|
434
|
+
return BaseTypes_composeFile_3A03A101(value.fields[0])
|
|
435
|
+
|
|
436
|
+
else:
|
|
437
|
+
return to_fail(printf("Could not parse output data %O"))(value)
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
elif pattern_matching_result == 3:
|
|
441
|
+
n: LDNode = LDNode(BaseTypes_composeFreetextMaterialName(ft_1, value.AsFreeText), [ft_1])
|
|
442
|
+
n.SetProperty(LDSample.name(), value.AsFreeText)
|
|
443
|
+
return n
|
|
444
|
+
|
|
445
|
+
elif pattern_matching_result == 4:
|
|
446
|
+
return to_fail(printf("Could not parse output header %O"))(header)
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
def BaseTypes_headerOntologyOfPropertyValue_Z2F770004(pv: LDNode, context: LDContext | None=None) -> OntologyAnnotation:
|
|
451
|
+
n: str = LDPropertyValue.get_name_as_string(pv, context)
|
|
452
|
+
match_value: str | None = LDPropertyValue.try_get_property_idas_string(pv, context)
|
|
453
|
+
if match_value is None:
|
|
454
|
+
return OntologyAnnotation(n)
|
|
455
|
+
|
|
456
|
+
else:
|
|
457
|
+
n_ref: str = match_value
|
|
458
|
+
return OntologyAnnotation.from_term_annotation(n_ref, n)
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
def BaseTypes_cellOfPropertyValue_Z2F770004(pv: LDNode, context: LDContext | None=None) -> CompositeCell:
|
|
463
|
+
v: str | None = LDPropertyValue.try_get_value_as_string(pv, context)
|
|
464
|
+
v_ref: str | None = LDPropertyValue.try_get_value_reference_as_string(pv, context)
|
|
465
|
+
u: str | None = LDPropertyValue.try_get_unit_text_as_string(pv, context)
|
|
466
|
+
u_ref: str | None = LDPropertyValue.try_get_unit_code_as_string(pv, context)
|
|
467
|
+
(pattern_matching_result, vr, u_1, u_ref_1) = (None, None, None, None)
|
|
468
|
+
if v_ref is None:
|
|
469
|
+
if u is None:
|
|
470
|
+
if u_ref is None:
|
|
471
|
+
pattern_matching_result = 3
|
|
472
|
+
|
|
473
|
+
else:
|
|
474
|
+
pattern_matching_result = 2
|
|
475
|
+
u_ref_1 = u_ref
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
elif u_ref is not None:
|
|
479
|
+
pattern_matching_result = 2
|
|
480
|
+
u_ref_1 = u_ref
|
|
481
|
+
|
|
482
|
+
else:
|
|
483
|
+
pattern_matching_result = 1
|
|
484
|
+
u_1 = u
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
elif u is None:
|
|
488
|
+
if u_ref is None:
|
|
489
|
+
pattern_matching_result = 0
|
|
490
|
+
vr = v_ref
|
|
491
|
+
|
|
492
|
+
else:
|
|
493
|
+
pattern_matching_result = 4
|
|
494
|
+
|
|
495
|
+
|
|
496
|
+
else:
|
|
497
|
+
pattern_matching_result = 4
|
|
498
|
+
|
|
499
|
+
if pattern_matching_result == 0:
|
|
500
|
+
return CompositeCell(0, OntologyAnnotation.from_term_annotation(vr, v))
|
|
501
|
+
|
|
502
|
+
elif pattern_matching_result == 1:
|
|
503
|
+
return CompositeCell(2, default_arg(v, ""), OntologyAnnotation(u_1))
|
|
504
|
+
|
|
505
|
+
elif pattern_matching_result == 2:
|
|
506
|
+
return CompositeCell(2, default_arg(v, ""), OntologyAnnotation.from_term_annotation(u_ref_1, u))
|
|
507
|
+
|
|
508
|
+
elif pattern_matching_result == 3:
|
|
509
|
+
return CompositeCell(0, OntologyAnnotation(v))
|
|
510
|
+
|
|
511
|
+
elif pattern_matching_result == 4:
|
|
512
|
+
arg: str = default_arg(v, "")
|
|
513
|
+
return to_fail(printf("Could not parse value %s with unit %O and unit reference %O"))(arg)(u)(u_ref)
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
|
|
517
|
+
def BaseTypes_decomposeComponent_Z2F770004(c: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
518
|
+
return (CompositeHeader(0, BaseTypes_headerOntologyOfPropertyValue_Z2F770004(c, context)), BaseTypes_cellOfPropertyValue_Z2F770004(c, context))
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
def BaseTypes_decomposeParameterValue_Z2F770004(c: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
522
|
+
return (CompositeHeader(3, BaseTypes_headerOntologyOfPropertyValue_Z2F770004(c, context)), BaseTypes_cellOfPropertyValue_Z2F770004(c, context))
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
def BaseTypes_decomposeFactorValue_Z2F770004(c: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
526
|
+
return (CompositeHeader(2, BaseTypes_headerOntologyOfPropertyValue_Z2F770004(c, context)), BaseTypes_cellOfPropertyValue_Z2F770004(c, context))
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
def BaseTypes_decomposeCharacteristicValue_Z2F770004(c: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
530
|
+
return (CompositeHeader(1, BaseTypes_headerOntologyOfPropertyValue_Z2F770004(c, context)), BaseTypes_cellOfPropertyValue_Z2F770004(c, context))
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
def BaseTypes_decomposeProcessInput_Z2F770004(pn: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
534
|
+
if LDSample.validate_source(pn, context):
|
|
535
|
+
return (CompositeHeader(11, IOType(0)), CompositeCell(1, LDSample.get_name_as_string(pn, context)))
|
|
536
|
+
|
|
537
|
+
elif LDSample.validate_material(pn, context):
|
|
538
|
+
return (CompositeHeader(11, IOType(3)), CompositeCell(1, LDSample.get_name_as_string(pn, context)))
|
|
539
|
+
|
|
540
|
+
elif LDSample.validate(pn, context):
|
|
541
|
+
return (CompositeHeader(11, IOType(1)), CompositeCell(1, LDSample.get_name_as_string(pn, context)))
|
|
542
|
+
|
|
543
|
+
elif LDFile.validate(pn, context):
|
|
544
|
+
return (CompositeHeader(11, IOType(2)), CompositeCell(3, BaseTypes_decomposeFile_Z2F770004(pn, context)))
|
|
545
|
+
|
|
546
|
+
else:
|
|
547
|
+
n: LDNode = pn
|
|
548
|
+
return (CompositeHeader(11, IOType(4, n.SchemaType[0])), CompositeCell(1, LDSample.get_name_as_string(n, context)))
|
|
549
|
+
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
def BaseTypes_decomposeProcessOutput_Z2F770004(pn: LDNode, context: LDContext | None=None) -> tuple[CompositeHeader, CompositeCell]:
|
|
553
|
+
if LDSample.validate_material(pn, context):
|
|
554
|
+
return (CompositeHeader(12, IOType(3)), CompositeCell(1, LDSample.get_name_as_string(pn, context)))
|
|
555
|
+
|
|
556
|
+
elif LDSample.validate(pn, context):
|
|
557
|
+
return (CompositeHeader(12, IOType(1)), CompositeCell(1, LDSample.get_name_as_string(pn, context)))
|
|
558
|
+
|
|
559
|
+
elif LDFile.validate(pn, context):
|
|
560
|
+
return (CompositeHeader(12, IOType(2)), CompositeCell(3, BaseTypes_decomposeFile_Z2F770004(pn, context)))
|
|
561
|
+
|
|
562
|
+
else:
|
|
563
|
+
n: LDNode = pn
|
|
564
|
+
return (CompositeHeader(12, IOType(4, n.SchemaType[0])), CompositeCell(1, LDSample.get_name_as_string(n, context)))
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
|
|
568
|
+
def BaseTypes_composeTechnologyPlatform_ZDED3A0F(tp: OntologyAnnotation) -> str:
|
|
569
|
+
match_value: dict[str, Any] | None = tp.TANInfo
|
|
570
|
+
if match_value is None:
|
|
571
|
+
return ("" + tp.NameText) + ""
|
|
572
|
+
|
|
573
|
+
else:
|
|
574
|
+
return ((("" + tp.NameText) + " (") + tp.TermAccessionShort) + ")"
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
def BaseTypes_decomposeTechnologyPlatform_Z721C83C5(name: str) -> OntologyAnnotation:
|
|
579
|
+
active_pattern_result: Any | None = ActivePatterns__007CRegex_007C__007C("^(?<value>.+) \\((?<ontology>[^(]*:[^)]*)\\)$", name)
|
|
580
|
+
if active_pattern_result is not None:
|
|
581
|
+
r: Any = active_pattern_result
|
|
582
|
+
oa: OntologyAnnotation
|
|
583
|
+
tan: str = get_item(groups(r), "ontology") or ""
|
|
584
|
+
oa = OntologyAnnotation.from_term_annotation(tan)
|
|
585
|
+
v: str = get_item(groups(r), "value") or ""
|
|
586
|
+
return OntologyAnnotation.create(v, oa.TermSourceREF, oa.TermAccessionNumber)
|
|
587
|
+
|
|
588
|
+
else:
|
|
589
|
+
return OntologyAnnotation.create(name)
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
def _expr3670() -> TypeInfo:
|
|
594
|
+
return class_type("ARCtrl.Conversion.ProcessConversion", None, ProcessConversion)
|
|
595
|
+
|
|
596
|
+
|
|
597
|
+
class ProcessConversion:
|
|
598
|
+
...
|
|
599
|
+
|
|
600
|
+
ProcessConversion_reflection = _expr3670
|
|
601
|
+
|
|
602
|
+
def ProcessConversion_tryGetProtocolType_Z6839B9E8(pv: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> OntologyAnnotation | None:
|
|
603
|
+
match_value: LDNode | None = LDLabProtocol.try_get_intended_use_as_defined_term(pv, graph, context)
|
|
604
|
+
if match_value is None:
|
|
605
|
+
match_value_1: str | None = LDLabProtocol.try_get_intended_use_as_string(pv, context)
|
|
606
|
+
if match_value_1 is None:
|
|
607
|
+
return None
|
|
608
|
+
|
|
609
|
+
else:
|
|
610
|
+
s: str = match_value_1
|
|
611
|
+
return OntologyAnnotation.create(s)
|
|
612
|
+
|
|
613
|
+
|
|
614
|
+
else:
|
|
615
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(match_value, context)
|
|
616
|
+
|
|
617
|
+
|
|
618
|
+
|
|
619
|
+
def ProcessConversion_composeProcessName(process_name_root: str, i: int) -> str:
|
|
620
|
+
return ((("" + process_name_root) + "_") + str(i)) + ""
|
|
621
|
+
|
|
622
|
+
|
|
623
|
+
def ProcessConversion_decomposeProcessName_Z721C83C5(name: str) -> tuple[str, int | None]:
|
|
624
|
+
active_pattern_result: Any | None = ActivePatterns__007CRegex_007C__007C("(?<name>.+)_(?<num>\\d+)", name)
|
|
625
|
+
if active_pattern_result is not None:
|
|
626
|
+
r: Any = active_pattern_result
|
|
627
|
+
return (get_item(groups(r), "name") or "", parse(get_item(groups(r), "num") or "", 511, False, 32))
|
|
628
|
+
|
|
629
|
+
else:
|
|
630
|
+
return (name, None)
|
|
631
|
+
|
|
632
|
+
|
|
633
|
+
|
|
634
|
+
def ProcessConversion_tryComponentGetter(general_i: int, value_i: int, value_header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
635
|
+
if value_header.tag == 0:
|
|
636
|
+
def Value(matrix: Any, general_i: Any=general_i, value_i: Any=value_i, value_header: Any=value_header) -> Callable[[int], LDNode]:
|
|
637
|
+
def _arrow3671(i: int, matrix: Any=matrix) -> LDNode:
|
|
638
|
+
c: LDNode = BaseTypes_composeComponent(value_header, get_item_from_dict(matrix, (general_i, i)))
|
|
639
|
+
ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4(c, value_i)
|
|
640
|
+
return c
|
|
641
|
+
|
|
642
|
+
return _arrow3671
|
|
643
|
+
|
|
644
|
+
return Value
|
|
645
|
+
|
|
646
|
+
else:
|
|
647
|
+
return None
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
def ProcessConversion_tryParameterGetter(general_i: int, value_i: int, value_header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
652
|
+
if value_header.tag == 3:
|
|
653
|
+
def Value(matrix: Any, general_i: Any=general_i, value_i: Any=value_i, value_header: Any=value_header) -> Callable[[int], LDNode]:
|
|
654
|
+
def _arrow3672(i: int, matrix: Any=matrix) -> LDNode:
|
|
655
|
+
p: LDNode = BaseTypes_composeParameterValue(value_header, get_item_from_dict(matrix, (general_i, i)))
|
|
656
|
+
ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4(p, value_i)
|
|
657
|
+
return p
|
|
658
|
+
|
|
659
|
+
return _arrow3672
|
|
660
|
+
|
|
661
|
+
return Value
|
|
662
|
+
|
|
663
|
+
else:
|
|
664
|
+
return None
|
|
665
|
+
|
|
666
|
+
|
|
667
|
+
|
|
668
|
+
def ProcessConversion_tryFactorGetter(general_i: int, value_i: int, value_header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
669
|
+
if value_header.tag == 2:
|
|
670
|
+
def Value(matrix: Any, general_i: Any=general_i, value_i: Any=value_i, value_header: Any=value_header) -> Callable[[int], LDNode]:
|
|
671
|
+
def _arrow3673(i: int, matrix: Any=matrix) -> LDNode:
|
|
672
|
+
f: LDNode = BaseTypes_composeFactorValue(value_header, get_item_from_dict(matrix, (general_i, i)))
|
|
673
|
+
ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4(f, value_i)
|
|
674
|
+
return f
|
|
675
|
+
|
|
676
|
+
return _arrow3673
|
|
677
|
+
|
|
678
|
+
return Value
|
|
679
|
+
|
|
680
|
+
else:
|
|
681
|
+
return None
|
|
682
|
+
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
def ProcessConversion_tryCharacteristicGetter(general_i: int, value_i: int, value_header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
686
|
+
if value_header.tag == 1:
|
|
687
|
+
def Value(matrix: Any, general_i: Any=general_i, value_i: Any=value_i, value_header: Any=value_header) -> Callable[[int], LDNode]:
|
|
688
|
+
def _arrow3674(i: int, matrix: Any=matrix) -> LDNode:
|
|
689
|
+
c: LDNode = BaseTypes_composeCharacteristicValue(value_header, get_item_from_dict(matrix, (general_i, i)))
|
|
690
|
+
ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4(c, value_i)
|
|
691
|
+
return c
|
|
692
|
+
|
|
693
|
+
return _arrow3674
|
|
694
|
+
|
|
695
|
+
return Value
|
|
696
|
+
|
|
697
|
+
else:
|
|
698
|
+
return None
|
|
699
|
+
|
|
700
|
+
|
|
701
|
+
|
|
702
|
+
def ProcessConversion_tryGetProtocolTypeGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
703
|
+
if header.tag == 4:
|
|
704
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], LDNode]:
|
|
705
|
+
def _arrow3675(i: int, matrix: Any=matrix) -> LDNode:
|
|
706
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(get_item_from_dict(matrix, (general_i, i)).AsTerm)
|
|
707
|
+
|
|
708
|
+
return _arrow3675
|
|
709
|
+
|
|
710
|
+
return Value
|
|
711
|
+
|
|
712
|
+
else:
|
|
713
|
+
return None
|
|
714
|
+
|
|
715
|
+
|
|
716
|
+
|
|
717
|
+
def ProcessConversion_tryGetProtocolREFGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], str] | None:
|
|
718
|
+
if header.tag == 8:
|
|
719
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], str]:
|
|
720
|
+
def _arrow3676(i: int, matrix: Any=matrix) -> str:
|
|
721
|
+
return get_item_from_dict(matrix, (general_i, i)).AsFreeText
|
|
722
|
+
|
|
723
|
+
return _arrow3676
|
|
724
|
+
|
|
725
|
+
return Value
|
|
726
|
+
|
|
727
|
+
else:
|
|
728
|
+
return None
|
|
729
|
+
|
|
730
|
+
|
|
731
|
+
|
|
732
|
+
def ProcessConversion_tryGetProtocolDescriptionGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], str] | None:
|
|
733
|
+
if header.tag == 5:
|
|
734
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], str]:
|
|
735
|
+
def _arrow3677(i: int, matrix: Any=matrix) -> str:
|
|
736
|
+
return get_item_from_dict(matrix, (general_i, i)).AsFreeText
|
|
737
|
+
|
|
738
|
+
return _arrow3677
|
|
739
|
+
|
|
740
|
+
return Value
|
|
741
|
+
|
|
742
|
+
else:
|
|
743
|
+
return None
|
|
744
|
+
|
|
745
|
+
|
|
746
|
+
|
|
747
|
+
def ProcessConversion_tryGetProtocolURIGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], str] | None:
|
|
748
|
+
if header.tag == 6:
|
|
749
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], str]:
|
|
750
|
+
def _arrow3678(i: int, matrix: Any=matrix) -> str:
|
|
751
|
+
return get_item_from_dict(matrix, (general_i, i)).AsFreeText
|
|
752
|
+
|
|
753
|
+
return _arrow3678
|
|
754
|
+
|
|
755
|
+
return Value
|
|
756
|
+
|
|
757
|
+
else:
|
|
758
|
+
return None
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
def ProcessConversion_tryGetProtocolVersionGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], str] | None:
|
|
763
|
+
if header.tag == 7:
|
|
764
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], str]:
|
|
765
|
+
def _arrow3679(i: int, matrix: Any=matrix) -> str:
|
|
766
|
+
return get_item_from_dict(matrix, (general_i, i)).AsFreeText
|
|
767
|
+
|
|
768
|
+
return _arrow3679
|
|
769
|
+
|
|
770
|
+
return Value
|
|
771
|
+
|
|
772
|
+
else:
|
|
773
|
+
return None
|
|
774
|
+
|
|
775
|
+
|
|
776
|
+
|
|
777
|
+
def ProcessConversion_tryGetInputGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
778
|
+
if header.tag == 11:
|
|
779
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], LDNode]:
|
|
780
|
+
def _arrow3680(i: int, matrix: Any=matrix) -> LDNode:
|
|
781
|
+
return BaseTypes_composeProcessInput(header, get_item_from_dict(matrix, (general_i, i)))
|
|
782
|
+
|
|
783
|
+
return _arrow3680
|
|
784
|
+
|
|
785
|
+
return Value
|
|
786
|
+
|
|
787
|
+
else:
|
|
788
|
+
return None
|
|
789
|
+
|
|
790
|
+
|
|
791
|
+
|
|
792
|
+
def ProcessConversion_tryGetOutputGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
793
|
+
if header.tag == 12:
|
|
794
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], LDNode]:
|
|
795
|
+
def _arrow3681(i: int, matrix: Any=matrix) -> LDNode:
|
|
796
|
+
return BaseTypes_composeProcessOutput(header, get_item_from_dict(matrix, (general_i, i)))
|
|
797
|
+
|
|
798
|
+
return _arrow3681
|
|
799
|
+
|
|
800
|
+
return Value
|
|
801
|
+
|
|
802
|
+
else:
|
|
803
|
+
return None
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
|
|
807
|
+
def ProcessConversion_tryGetCommentGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], str] | None:
|
|
808
|
+
if header.tag == 14:
|
|
809
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], str]:
|
|
810
|
+
def _arrow3682(i: int, matrix: Any=matrix) -> str:
|
|
811
|
+
return to_string_1(Comment(header.fields[0], get_item_from_dict(matrix, (general_i, i)).AsFreeText))
|
|
812
|
+
|
|
813
|
+
return _arrow3682
|
|
814
|
+
|
|
815
|
+
return Value
|
|
816
|
+
|
|
817
|
+
else:
|
|
818
|
+
return None
|
|
819
|
+
|
|
820
|
+
|
|
821
|
+
|
|
822
|
+
def ProcessConversion_tryGetPerformerGetter(general_i: int, header: CompositeHeader) -> Callable[[Any, int], LDNode] | None:
|
|
823
|
+
if header.tag == 9:
|
|
824
|
+
def Value(matrix: Any, general_i: Any=general_i, header: Any=header) -> Callable[[int], LDNode]:
|
|
825
|
+
def _arrow3683(i: int, matrix: Any=matrix) -> LDNode:
|
|
826
|
+
performer: str = get_item_from_dict(matrix, (general_i, i)).AsFreeText
|
|
827
|
+
return LDPerson.create(performer)
|
|
828
|
+
|
|
829
|
+
return _arrow3683
|
|
830
|
+
|
|
831
|
+
return Value
|
|
832
|
+
|
|
833
|
+
else:
|
|
834
|
+
return None
|
|
835
|
+
|
|
836
|
+
|
|
837
|
+
|
|
838
|
+
def ProcessConversion_getProcessGetter(process_name_root: str, headers: IEnumerable_1[CompositeHeader]) -> Callable[[Any, int], LDNode]:
|
|
839
|
+
headers_1: IEnumerable_1[tuple[int, CompositeHeader]] = indexed(headers)
|
|
840
|
+
def predicate(arg: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> bool:
|
|
841
|
+
return arg[1].IsCvParamColumn
|
|
842
|
+
|
|
843
|
+
value_headers: FSharpList[tuple[int, tuple[int, CompositeHeader]]] = to_list(indexed(filter(predicate, headers_1)))
|
|
844
|
+
def chooser(tupled_arg: tuple[int, tuple[int, CompositeHeader]], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
845
|
+
_arg: tuple[int, CompositeHeader] = tupled_arg[1]
|
|
846
|
+
return ProcessConversion_tryCharacteristicGetter(_arg[0], tupled_arg[0], _arg[1])
|
|
847
|
+
|
|
848
|
+
char_getters: FSharpList[Callable[[Any, int], LDNode]] = choose(chooser, value_headers)
|
|
849
|
+
def chooser_1(tupled_arg_1: tuple[int, tuple[int, CompositeHeader]], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
850
|
+
_arg_1: tuple[int, CompositeHeader] = tupled_arg_1[1]
|
|
851
|
+
return ProcessConversion_tryFactorGetter(_arg_1[0], tupled_arg_1[0], _arg_1[1])
|
|
852
|
+
|
|
853
|
+
factor_value_getters: FSharpList[Callable[[Any, int], LDNode]] = choose(chooser_1, value_headers)
|
|
854
|
+
def chooser_2(tupled_arg_2: tuple[int, tuple[int, CompositeHeader]], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
855
|
+
_arg_2: tuple[int, CompositeHeader] = tupled_arg_2[1]
|
|
856
|
+
return ProcessConversion_tryParameterGetter(_arg_2[0], tupled_arg_2[0], _arg_2[1])
|
|
857
|
+
|
|
858
|
+
parameter_value_getters: FSharpList[Callable[[Any, int], LDNode]] = choose(chooser_2, value_headers)
|
|
859
|
+
def chooser_3(tupled_arg_3: tuple[int, tuple[int, CompositeHeader]], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
860
|
+
_arg_3: tuple[int, CompositeHeader] = tupled_arg_3[1]
|
|
861
|
+
return ProcessConversion_tryComponentGetter(_arg_3[0], tupled_arg_3[0], _arg_3[1])
|
|
862
|
+
|
|
863
|
+
component_getters: FSharpList[Callable[[Any, int], LDNode]] = choose(chooser_3, value_headers)
|
|
864
|
+
def chooser_4(tupled_arg_4: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
865
|
+
return ProcessConversion_tryGetProtocolTypeGetter(tupled_arg_4[0], tupled_arg_4[1])
|
|
866
|
+
|
|
867
|
+
protocol_type_getter: Callable[[Any, int], LDNode] | None = try_pick(chooser_4, headers_1)
|
|
868
|
+
def chooser_5(tupled_arg_5: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], str] | None:
|
|
869
|
+
return ProcessConversion_tryGetProtocolREFGetter(tupled_arg_5[0], tupled_arg_5[1])
|
|
870
|
+
|
|
871
|
+
protocol_refgetter: Callable[[Any, int], str] | None = try_pick(chooser_5, headers_1)
|
|
872
|
+
def chooser_6(tupled_arg_6: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], str] | None:
|
|
873
|
+
return ProcessConversion_tryGetProtocolDescriptionGetter(tupled_arg_6[0], tupled_arg_6[1])
|
|
874
|
+
|
|
875
|
+
protocol_description_getter: Callable[[Any, int], str] | None = try_pick(chooser_6, headers_1)
|
|
876
|
+
def chooser_7(tupled_arg_7: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], str] | None:
|
|
877
|
+
return ProcessConversion_tryGetProtocolURIGetter(tupled_arg_7[0], tupled_arg_7[1])
|
|
878
|
+
|
|
879
|
+
protocol_urigetter: Callable[[Any, int], str] | None = try_pick(chooser_7, headers_1)
|
|
880
|
+
def chooser_8(tupled_arg_8: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], str] | None:
|
|
881
|
+
return ProcessConversion_tryGetProtocolVersionGetter(tupled_arg_8[0], tupled_arg_8[1])
|
|
882
|
+
|
|
883
|
+
protocol_version_getter: Callable[[Any, int], str] | None = try_pick(chooser_8, headers_1)
|
|
884
|
+
def chooser_9(tupled_arg_9: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
885
|
+
return ProcessConversion_tryGetPerformerGetter(tupled_arg_9[0], tupled_arg_9[1])
|
|
886
|
+
|
|
887
|
+
performer_getter: Callable[[Any, int], LDNode] | None = try_pick(chooser_9, headers_1)
|
|
888
|
+
def chooser_10(tupled_arg_10: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], str] | None:
|
|
889
|
+
return ProcessConversion_tryGetCommentGetter(tupled_arg_10[0], tupled_arg_10[1])
|
|
890
|
+
|
|
891
|
+
comment_getters: FSharpList[Callable[[Any, int], str]] = to_list(choose_1(chooser_10, headers_1))
|
|
892
|
+
input_getter_1: Callable[[Any, int], Array[LDNode]]
|
|
893
|
+
def chooser_11(tupled_arg_11: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
894
|
+
return ProcessConversion_tryGetInputGetter(tupled_arg_11[0], tupled_arg_11[1])
|
|
895
|
+
|
|
896
|
+
match_value: Callable[[Any, int], LDNode] | None = try_pick(chooser_11, headers_1)
|
|
897
|
+
if match_value is None:
|
|
898
|
+
def _arrow3685(matrix_1: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
899
|
+
def _arrow3684(i_1: int) -> Array[LDNode]:
|
|
900
|
+
def mapping_1(f_1: Callable[[Any, int], LDNode]) -> LDNode:
|
|
901
|
+
return f_1(matrix_1)(i_1)
|
|
902
|
+
|
|
903
|
+
chars_1: Array[LDNode] = list(map_1(mapping_1, char_getters))
|
|
904
|
+
return ResizeArray_singleton(LDSample.create_sample(((("" + process_name_root) + "_Input_") + str(i_1)) + "", None, chars_1))
|
|
905
|
+
|
|
906
|
+
return _arrow3684
|
|
907
|
+
|
|
908
|
+
def _arrow3687(matrix_2: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
909
|
+
def _arrow3686(i_2: int) -> Array[LDNode]:
|
|
910
|
+
return []
|
|
911
|
+
|
|
912
|
+
return _arrow3686
|
|
913
|
+
|
|
914
|
+
input_getter_1 = _arrow3685 if (length(char_getters) != 0) else _arrow3687
|
|
915
|
+
|
|
916
|
+
else:
|
|
917
|
+
input_getter: Callable[[Any, int], LDNode] = match_value
|
|
918
|
+
def _arrow3689(matrix: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
919
|
+
def _arrow3688(i: int) -> Array[LDNode]:
|
|
920
|
+
def mapping(f: Callable[[Any, int], LDNode]) -> LDNode:
|
|
921
|
+
return f(matrix)(i)
|
|
922
|
+
|
|
923
|
+
chars: Array[LDNode] = list(map_1(mapping, char_getters))
|
|
924
|
+
input: LDNode = input_getter(matrix)(i)
|
|
925
|
+
if len(chars) > 0:
|
|
926
|
+
LDSample.set_additional_properties(input, chars)
|
|
927
|
+
|
|
928
|
+
return ResizeArray_singleton(input)
|
|
929
|
+
|
|
930
|
+
return _arrow3688
|
|
931
|
+
|
|
932
|
+
input_getter_1 = _arrow3689
|
|
933
|
+
|
|
934
|
+
output_getter_1: Callable[[Any, int], Array[LDNode]]
|
|
935
|
+
def chooser_12(tupled_arg_12: tuple[int, CompositeHeader], process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[Any, int], LDNode] | None:
|
|
936
|
+
return ProcessConversion_tryGetOutputGetter(tupled_arg_12[0], tupled_arg_12[1])
|
|
937
|
+
|
|
938
|
+
match_value_1: Callable[[Any, int], LDNode] | None = try_pick(chooser_12, headers_1)
|
|
939
|
+
if match_value_1 is None:
|
|
940
|
+
def _arrow3691(matrix_4: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
941
|
+
def _arrow3690(i_4: int) -> Array[LDNode]:
|
|
942
|
+
def mapping_3(f_3: Callable[[Any, int], LDNode]) -> LDNode:
|
|
943
|
+
return f_3(matrix_4)(i_4)
|
|
944
|
+
|
|
945
|
+
factors_1: Array[LDNode] = list(map_1(mapping_3, factor_value_getters))
|
|
946
|
+
return ResizeArray_singleton(LDSample.create_sample(((("" + process_name_root) + "_Output_") + str(i_4)) + "", None, factors_1))
|
|
947
|
+
|
|
948
|
+
return _arrow3690
|
|
949
|
+
|
|
950
|
+
def _arrow3693(matrix_5: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
951
|
+
def _arrow3692(i_5: int) -> Array[LDNode]:
|
|
952
|
+
return []
|
|
953
|
+
|
|
954
|
+
return _arrow3692
|
|
955
|
+
|
|
956
|
+
output_getter_1 = _arrow3691 if (length(factor_value_getters) != 0) else _arrow3693
|
|
957
|
+
|
|
958
|
+
else:
|
|
959
|
+
output_getter: Callable[[Any, int], LDNode] = match_value_1
|
|
960
|
+
def _arrow3695(matrix_3: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], Array[LDNode]]:
|
|
961
|
+
def _arrow3694(i_3: int) -> Array[LDNode]:
|
|
962
|
+
def mapping_2(f_2: Callable[[Any, int], LDNode]) -> LDNode:
|
|
963
|
+
return f_2(matrix_3)(i_3)
|
|
964
|
+
|
|
965
|
+
factors: Array[LDNode] = list(map_1(mapping_2, factor_value_getters))
|
|
966
|
+
output: LDNode = output_getter(matrix_3)(i_3)
|
|
967
|
+
if len(factors) > 0:
|
|
968
|
+
LDSample.set_additional_properties(output, factors)
|
|
969
|
+
|
|
970
|
+
return ResizeArray_singleton(output)
|
|
971
|
+
|
|
972
|
+
return _arrow3694
|
|
973
|
+
|
|
974
|
+
output_getter_1 = _arrow3695
|
|
975
|
+
|
|
976
|
+
def _arrow3698(matrix_6: Any, process_name_root: Any=process_name_root, headers: Any=headers) -> Callable[[int], LDNode]:
|
|
977
|
+
def _arrow3697(i_6: int) -> LDNode:
|
|
978
|
+
def mapping_4(tuple_1: tuple[int, int]) -> int:
|
|
979
|
+
return tuple_1[1]
|
|
980
|
+
|
|
981
|
+
class ObjectExpr3696:
|
|
982
|
+
@property
|
|
983
|
+
def Compare(self) -> Callable[[int, int], int]:
|
|
984
|
+
return compare_primitives
|
|
985
|
+
|
|
986
|
+
pn: str = process_name_root if ((1 + max(map_1(mapping_4, matrix_6.keys()), ObjectExpr3696())) == 1) else ProcessConversion_composeProcessName(process_name_root, i_6)
|
|
987
|
+
def mapping_5(f_4: Callable[[Any, int], LDNode]) -> LDNode:
|
|
988
|
+
return f_4(matrix_6)(i_6)
|
|
989
|
+
|
|
990
|
+
paramvalues: Array[LDNode] | None = map(list, Option_fromValueWithDefault(empty(), map_2(mapping_5, parameter_value_getters)))
|
|
991
|
+
def mapping_7(f_5: Callable[[Any, int], str]) -> str:
|
|
992
|
+
return f_5(matrix_6)(i_6)
|
|
993
|
+
|
|
994
|
+
comments: Array[str] | None = map(list, Option_fromValueWithDefault(empty(), map_2(mapping_7, comment_getters)))
|
|
995
|
+
def mapping_9(f_6: Callable[[Any, int], LDNode]) -> LDNode:
|
|
996
|
+
return f_6(matrix_6)(i_6)
|
|
997
|
+
|
|
998
|
+
components: Array[LDNode] | None = map(list, Option_fromValueWithDefault(empty(), map_2(mapping_9, component_getters)))
|
|
999
|
+
protocol: LDNode | None
|
|
1000
|
+
def mapping_11(f_7: Callable[[Any, int], str]) -> str:
|
|
1001
|
+
return f_7(matrix_6)(i_6)
|
|
1002
|
+
|
|
1003
|
+
name: str | None = map(mapping_11, protocol_refgetter)
|
|
1004
|
+
protocol_id: str = LDLabProtocol.gen_id(name, process_name_root)
|
|
1005
|
+
def mapping_12(f_8: Callable[[Any, int], str]) -> str:
|
|
1006
|
+
return f_8(matrix_6)(i_6)
|
|
1007
|
+
|
|
1008
|
+
def mapping_13(f_9: Callable[[Any, int], LDNode]) -> LDNode:
|
|
1009
|
+
return f_9(matrix_6)(i_6)
|
|
1010
|
+
|
|
1011
|
+
def mapping_14(f_10: Callable[[Any, int], str]) -> str:
|
|
1012
|
+
return f_10(matrix_6)(i_6)
|
|
1013
|
+
|
|
1014
|
+
def mapping_15(f_11: Callable[[Any, int], str]) -> str:
|
|
1015
|
+
return f_11(matrix_6)(i_6)
|
|
1016
|
+
|
|
1017
|
+
protocol = LDLabProtocol.create(protocol_id, name, map(mapping_12, protocol_description_getter), map(mapping_13, protocol_type_getter), None, None, components, None, map(mapping_14, protocol_urigetter), map(mapping_15, protocol_version_getter))
|
|
1018
|
+
match_value: Array[LDNode] = input_getter_1(matrix_6)(i_6)
|
|
1019
|
+
match_value_1: Array[LDNode] = output_getter_1(matrix_6)(i_6)
|
|
1020
|
+
def mapping_16(f_12: Callable[[Any, int], LDNode]) -> LDNode:
|
|
1021
|
+
return f_12(matrix_6)(i_6)
|
|
1022
|
+
|
|
1023
|
+
agent: LDNode | None = map(mapping_16, performer_getter)
|
|
1024
|
+
return LDLabProcess.create(pn, match_value, match_value_1, None, agent, protocol, paramvalues, None, comments)
|
|
1025
|
+
|
|
1026
|
+
return _arrow3697
|
|
1027
|
+
|
|
1028
|
+
return _arrow3698
|
|
1029
|
+
|
|
1030
|
+
|
|
1031
|
+
def ProcessConversion_groupProcesses_Z27F0B586(processes: FSharpList[LDNode], graph: LDGraph | None=None, context: LDContext | None=None) -> FSharpList[tuple[str, FSharpList[LDNode]]]:
|
|
1032
|
+
def projection(p: LDNode, processes: Any=processes, graph: Any=graph, context: Any=context) -> str:
|
|
1033
|
+
match_value: str | None = LDLabProcess.try_get_name_as_string(p, context)
|
|
1034
|
+
match_value_1: LDNode | None = LDLabProcess.try_get_executes_lab_protocol(p, graph, context)
|
|
1035
|
+
(pattern_matching_result, name_3, protocol_2, name_4, name_5, protocol_3) = (None, None, None, None, None, None)
|
|
1036
|
+
if match_value is not None:
|
|
1037
|
+
if ProcessConversion_decomposeProcessName_Z721C83C5(match_value)[1] is not None:
|
|
1038
|
+
pattern_matching_result = 0
|
|
1039
|
+
name_3 = match_value
|
|
1040
|
+
|
|
1041
|
+
elif match_value_1 is not None:
|
|
1042
|
+
def _arrow3699(__unit: None=None, p: Any=p) -> bool:
|
|
1043
|
+
protocol: LDNode = match_value_1
|
|
1044
|
+
return LDLabProtocol.try_get_name_as_string(protocol, context) is not None
|
|
1045
|
+
|
|
1046
|
+
if _arrow3699():
|
|
1047
|
+
pattern_matching_result = 1
|
|
1048
|
+
protocol_2 = match_value_1
|
|
1049
|
+
|
|
1050
|
+
else:
|
|
1051
|
+
def _arrow3700(__unit: None=None, p: Any=p) -> bool:
|
|
1052
|
+
name_1: str = match_value
|
|
1053
|
+
return name_1.find("_") >= 0
|
|
1054
|
+
|
|
1055
|
+
if _arrow3700():
|
|
1056
|
+
pattern_matching_result = 2
|
|
1057
|
+
name_4 = match_value
|
|
1058
|
+
|
|
1059
|
+
else:
|
|
1060
|
+
pattern_matching_result = 3
|
|
1061
|
+
name_5 = match_value
|
|
1062
|
+
|
|
1063
|
+
|
|
1064
|
+
|
|
1065
|
+
else:
|
|
1066
|
+
def _arrow3701(__unit: None=None, p: Any=p) -> bool:
|
|
1067
|
+
name_2: str = match_value
|
|
1068
|
+
return name_2.find("_") >= 0
|
|
1069
|
+
|
|
1070
|
+
if _arrow3701():
|
|
1071
|
+
pattern_matching_result = 2
|
|
1072
|
+
name_4 = match_value
|
|
1073
|
+
|
|
1074
|
+
else:
|
|
1075
|
+
pattern_matching_result = 3
|
|
1076
|
+
name_5 = match_value
|
|
1077
|
+
|
|
1078
|
+
|
|
1079
|
+
|
|
1080
|
+
elif match_value_1 is not None:
|
|
1081
|
+
def _arrow3702(__unit: None=None, p: Any=p) -> bool:
|
|
1082
|
+
protocol_1: LDNode = match_value_1
|
|
1083
|
+
return LDLabProtocol.try_get_name_as_string(protocol_1, context) is not None
|
|
1084
|
+
|
|
1085
|
+
if _arrow3702():
|
|
1086
|
+
pattern_matching_result = 1
|
|
1087
|
+
protocol_2 = match_value_1
|
|
1088
|
+
|
|
1089
|
+
else:
|
|
1090
|
+
pattern_matching_result = 4
|
|
1091
|
+
protocol_3 = match_value_1
|
|
1092
|
+
|
|
1093
|
+
|
|
1094
|
+
else:
|
|
1095
|
+
pattern_matching_result = 5
|
|
1096
|
+
|
|
1097
|
+
if pattern_matching_result == 0:
|
|
1098
|
+
return ProcessConversion_decomposeProcessName_Z721C83C5(name_3)[0]
|
|
1099
|
+
|
|
1100
|
+
elif pattern_matching_result == 1:
|
|
1101
|
+
return default_arg(LDLabProtocol.try_get_name_as_string(protocol_2, context), "")
|
|
1102
|
+
|
|
1103
|
+
elif pattern_matching_result == 2:
|
|
1104
|
+
return remove(name_4, name_4.rfind("_"))
|
|
1105
|
+
|
|
1106
|
+
elif pattern_matching_result == 3:
|
|
1107
|
+
return name_5
|
|
1108
|
+
|
|
1109
|
+
elif pattern_matching_result == 4:
|
|
1110
|
+
return protocol_3.Id
|
|
1111
|
+
|
|
1112
|
+
elif pattern_matching_result == 5:
|
|
1113
|
+
return create_missing_identifier()
|
|
1114
|
+
|
|
1115
|
+
|
|
1116
|
+
class ObjectExpr3704:
|
|
1117
|
+
@property
|
|
1118
|
+
def Equals(self) -> Callable[[str, str], bool]:
|
|
1119
|
+
def _arrow3703(x: str, y: str) -> bool:
|
|
1120
|
+
return x == y
|
|
1121
|
+
|
|
1122
|
+
return _arrow3703
|
|
1123
|
+
|
|
1124
|
+
@property
|
|
1125
|
+
def GetHashCode(self) -> Callable[[str], int]:
|
|
1126
|
+
return string_hash
|
|
1127
|
+
|
|
1128
|
+
return List_groupBy(projection, processes, ObjectExpr3704())
|
|
1129
|
+
|
|
1130
|
+
|
|
1131
|
+
def ProcessConversion_processToRows_Z6839B9E8(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[FSharpList[tuple[CompositeHeader, CompositeCell]]]:
|
|
1132
|
+
def f(ppv: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> tuple[tuple[CompositeHeader, CompositeCell], int | None]:
|
|
1133
|
+
return (BaseTypes_decomposeParameterValue_Z2F770004(ppv, context), ColumnIndex_tryGetIndex(ppv))
|
|
1134
|
+
|
|
1135
|
+
pvs: Array[tuple[tuple[CompositeHeader, CompositeCell], int | None]] = ResizeArray_map(f, LDLabProcess.get_parameter_values(p, graph, context))
|
|
1136
|
+
components: Array[tuple[tuple[CompositeHeader, CompositeCell], int | None]]
|
|
1137
|
+
match_value: LDNode | None = LDLabProcess.try_get_executes_lab_protocol(p, graph, context)
|
|
1138
|
+
if match_value is None:
|
|
1139
|
+
components = []
|
|
1140
|
+
|
|
1141
|
+
else:
|
|
1142
|
+
prot: LDNode = match_value
|
|
1143
|
+
def f_1(ppv_1: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> tuple[tuple[CompositeHeader, CompositeCell], int | None]:
|
|
1144
|
+
return (BaseTypes_decomposeComponent_Z2F770004(ppv_1, context), ColumnIndex_tryGetIndex(ppv_1))
|
|
1145
|
+
|
|
1146
|
+
components = ResizeArray_map(f_1, LDLabProtocol.get_components(prot, graph, context))
|
|
1147
|
+
|
|
1148
|
+
prot_vals: FSharpList[tuple[CompositeHeader, CompositeCell]]
|
|
1149
|
+
match_value_1: LDNode | None = LDLabProcess.try_get_executes_lab_protocol(p, graph, context)
|
|
1150
|
+
if match_value_1 is None:
|
|
1151
|
+
prot_vals = empty()
|
|
1152
|
+
|
|
1153
|
+
else:
|
|
1154
|
+
prot_1: LDNode = match_value_1
|
|
1155
|
+
def _arrow3713(__unit: None=None, p: Any=p, graph: Any=graph, context: Any=context) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1156
|
+
def _arrow3705(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1157
|
+
match_value_2: str | None = LDLabProtocol.try_get_name_as_string(prot_1, context)
|
|
1158
|
+
if match_value_2 is None:
|
|
1159
|
+
return empty_1()
|
|
1160
|
+
|
|
1161
|
+
else:
|
|
1162
|
+
return singleton((CompositeHeader(8), CompositeCell(1, match_value_2)))
|
|
1163
|
+
|
|
1164
|
+
|
|
1165
|
+
def _arrow3712(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1166
|
+
def _arrow3706(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1167
|
+
match_value_3: str | None = LDLabProtocol.try_get_description_as_string(prot_1, context)
|
|
1168
|
+
if match_value_3 is None:
|
|
1169
|
+
return empty_1()
|
|
1170
|
+
|
|
1171
|
+
else:
|
|
1172
|
+
return singleton((CompositeHeader(5), CompositeCell(1, match_value_3)))
|
|
1173
|
+
|
|
1174
|
+
|
|
1175
|
+
def _arrow3711(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1176
|
+
def _arrow3707(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1177
|
+
match_value_4: str | None = LDLabProtocol.try_get_url(prot_1, context)
|
|
1178
|
+
if match_value_4 is None:
|
|
1179
|
+
return empty_1()
|
|
1180
|
+
|
|
1181
|
+
else:
|
|
1182
|
+
return singleton((CompositeHeader(6), CompositeCell(1, match_value_4)))
|
|
1183
|
+
|
|
1184
|
+
|
|
1185
|
+
def _arrow3710(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1186
|
+
def _arrow3708(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1187
|
+
match_value_5: str | None = LDLabProtocol.try_get_version_as_string(prot_1, context)
|
|
1188
|
+
if match_value_5 is None:
|
|
1189
|
+
return empty_1()
|
|
1190
|
+
|
|
1191
|
+
else:
|
|
1192
|
+
return singleton((CompositeHeader(7), CompositeCell(1, match_value_5)))
|
|
1193
|
+
|
|
1194
|
+
|
|
1195
|
+
def _arrow3709(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1196
|
+
match_value_6: OntologyAnnotation | None = ProcessConversion_tryGetProtocolType_Z6839B9E8(prot_1, graph, context)
|
|
1197
|
+
if match_value_6 is None:
|
|
1198
|
+
return empty_1()
|
|
1199
|
+
|
|
1200
|
+
else:
|
|
1201
|
+
return singleton((CompositeHeader(4), CompositeCell(0, match_value_6)))
|
|
1202
|
+
|
|
1203
|
+
|
|
1204
|
+
return append(_arrow3708(), delay(_arrow3709))
|
|
1205
|
+
|
|
1206
|
+
return append(_arrow3707(), delay(_arrow3710))
|
|
1207
|
+
|
|
1208
|
+
return append(_arrow3706(), delay(_arrow3711))
|
|
1209
|
+
|
|
1210
|
+
return append(_arrow3705(), delay(_arrow3712))
|
|
1211
|
+
|
|
1212
|
+
prot_vals = to_list(delay(_arrow3713))
|
|
1213
|
+
|
|
1214
|
+
def f_2(c: str, p: Any=p, graph: Any=graph, context: Any=context) -> tuple[CompositeHeader, CompositeCell]:
|
|
1215
|
+
c_1: Comment = Comment.from_string(c)
|
|
1216
|
+
return (CompositeHeader(14, default_arg(c_1.Name, "")), CompositeCell(1, default_arg(c_1.Value, "")))
|
|
1217
|
+
|
|
1218
|
+
comments: Array[tuple[CompositeHeader, CompositeCell]] = ResizeArray_map(f_2, LDLabProcess.get_disambiguating_descriptions_as_string(p, context))
|
|
1219
|
+
inputs: Array[LDNode] = LDLabProcess.get_objects(p, graph, context)
|
|
1220
|
+
outputs: Array[LDNode] = LDLabProcess.get_results(p, graph, context)
|
|
1221
|
+
def _arrow3714(Value: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
1222
|
+
return Value
|
|
1223
|
+
|
|
1224
|
+
def _arrow3715(Value_1: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
1225
|
+
return Value_1
|
|
1226
|
+
|
|
1227
|
+
def _arrow3716(Value_2: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
1228
|
+
return Value_2
|
|
1229
|
+
|
|
1230
|
+
def _arrow3717(Value_3: LDNode, p: Any=p, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
1231
|
+
return Value_3
|
|
1232
|
+
|
|
1233
|
+
pattern_input: tuple[Array[LDNode | None], Array[LDNode | None]] = ((ResizeArray_create(len(outputs), None), ResizeArray_map(_arrow3714, outputs))) if ((len(outputs) != 0) if (len(inputs) == 0) else False) else (((ResizeArray_map(_arrow3715, inputs), ResizeArray_create(len(inputs), None))) if ((len(outputs) == 0) if (len(inputs) != 0) else False) else ((ResizeArray_map(_arrow3716, inputs), ResizeArray_map(_arrow3717, outputs))))
|
|
1234
|
+
outputs_1: Array[LDNode | None] = pattern_input[1]
|
|
1235
|
+
inputs_1: Array[LDNode | None] = pattern_input[0]
|
|
1236
|
+
if (len(outputs_1) == 0) if (len(inputs_1) == 0) else False:
|
|
1237
|
+
def mapping(tuple_1: tuple[tuple[CompositeHeader, CompositeCell], int | None], p: Any=p, graph: Any=graph, context: Any=context) -> tuple[CompositeHeader, CompositeCell]:
|
|
1238
|
+
return tuple_1[0]
|
|
1239
|
+
|
|
1240
|
+
def projection(arg: tuple[tuple[CompositeHeader, CompositeCell], int | None], p: Any=p, graph: Any=graph, context: Any=context) -> int:
|
|
1241
|
+
return default_arg(arg[1], 10000)
|
|
1242
|
+
|
|
1243
|
+
def _arrow3719(__unit: None=None, p: Any=p, graph: Any=graph, context: Any=context) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1244
|
+
def _arrow3718(__unit: None=None) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1245
|
+
return pvs
|
|
1246
|
+
|
|
1247
|
+
return append(components, delay(_arrow3718))
|
|
1248
|
+
|
|
1249
|
+
class ObjectExpr3720:
|
|
1250
|
+
@property
|
|
1251
|
+
def Compare(self) -> Callable[[int, int], int]:
|
|
1252
|
+
return compare_primitives
|
|
1253
|
+
|
|
1254
|
+
vals: FSharpList[tuple[CompositeHeader, CompositeCell]] = map_2(mapping, sort_by(projection, to_list(delay(_arrow3719)), ObjectExpr3720()))
|
|
1255
|
+
def _arrow3723(__unit: None=None, p: Any=p, graph: Any=graph, context: Any=context) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1256
|
+
def _arrow3722(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1257
|
+
def _arrow3721(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1258
|
+
return comments
|
|
1259
|
+
|
|
1260
|
+
return append(vals, delay(_arrow3721))
|
|
1261
|
+
|
|
1262
|
+
return append(prot_vals, delay(_arrow3722))
|
|
1263
|
+
|
|
1264
|
+
return ResizeArray_singleton(to_list(delay(_arrow3723)))
|
|
1265
|
+
|
|
1266
|
+
else:
|
|
1267
|
+
def f_5(tupled_arg: tuple[LDNode | None, LDNode | None], p: Any=p, graph: Any=graph, context: Any=context) -> FSharpList[tuple[CompositeHeader, CompositeCell]]:
|
|
1268
|
+
i: LDNode | None = tupled_arg[0]
|
|
1269
|
+
o: LDNode | None = tupled_arg[1]
|
|
1270
|
+
chars: Array[tuple[tuple[CompositeHeader, CompositeCell], int | None]]
|
|
1271
|
+
if i is None:
|
|
1272
|
+
chars = []
|
|
1273
|
+
|
|
1274
|
+
else:
|
|
1275
|
+
i_1: LDNode = i
|
|
1276
|
+
def f_3(cv: LDNode, tupled_arg: Any=tupled_arg) -> tuple[tuple[CompositeHeader, CompositeCell], int | None]:
|
|
1277
|
+
return (BaseTypes_decomposeCharacteristicValue_Z2F770004(cv, context), ColumnIndex_tryGetIndex(cv))
|
|
1278
|
+
|
|
1279
|
+
chars = ResizeArray_map(f_3, LDSample.get_characteristics(i_1, graph, context))
|
|
1280
|
+
|
|
1281
|
+
factors: Array[tuple[tuple[CompositeHeader, CompositeCell], int | None]]
|
|
1282
|
+
if o is None:
|
|
1283
|
+
factors = []
|
|
1284
|
+
|
|
1285
|
+
else:
|
|
1286
|
+
o_1: LDNode = o
|
|
1287
|
+
def f_4(fv: LDNode, tupled_arg: Any=tupled_arg) -> tuple[tuple[CompositeHeader, CompositeCell], int | None]:
|
|
1288
|
+
return (BaseTypes_decomposeFactorValue_Z2F770004(fv, context), ColumnIndex_tryGetIndex(fv))
|
|
1289
|
+
|
|
1290
|
+
factors = ResizeArray_map(f_4, LDSample.get_factors(o_1, graph, context))
|
|
1291
|
+
|
|
1292
|
+
def mapping_1(tuple_3: tuple[tuple[CompositeHeader, CompositeCell], int | None], tupled_arg: Any=tupled_arg) -> tuple[CompositeHeader, CompositeCell]:
|
|
1293
|
+
return tuple_3[0]
|
|
1294
|
+
|
|
1295
|
+
def projection_1(arg_1: tuple[tuple[CompositeHeader, CompositeCell], int | None], tupled_arg: Any=tupled_arg) -> int:
|
|
1296
|
+
return default_arg(arg_1[1], 10000)
|
|
1297
|
+
|
|
1298
|
+
def _arrow3727(__unit: None=None, tupled_arg: Any=tupled_arg) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1299
|
+
def _arrow3726(__unit: None=None) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1300
|
+
def _arrow3725(__unit: None=None) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1301
|
+
def _arrow3724(__unit: None=None) -> IEnumerable_1[tuple[tuple[CompositeHeader, CompositeCell], int | None]]:
|
|
1302
|
+
return factors
|
|
1303
|
+
|
|
1304
|
+
return append(pvs, delay(_arrow3724))
|
|
1305
|
+
|
|
1306
|
+
return append(components, delay(_arrow3725))
|
|
1307
|
+
|
|
1308
|
+
return append(chars, delay(_arrow3726))
|
|
1309
|
+
|
|
1310
|
+
class ObjectExpr3728:
|
|
1311
|
+
@property
|
|
1312
|
+
def Compare(self) -> Callable[[int, int], int]:
|
|
1313
|
+
return compare_primitives
|
|
1314
|
+
|
|
1315
|
+
vals_1: FSharpList[tuple[CompositeHeader, CompositeCell]] = map_2(mapping_1, sort_by(projection_1, to_list(delay(_arrow3727)), ObjectExpr3728()))
|
|
1316
|
+
def _arrow3733(__unit: None=None, tupled_arg: Any=tupled_arg) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1317
|
+
def _arrow3732(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1318
|
+
def _arrow3731(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1319
|
+
def _arrow3730(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1320
|
+
def _arrow3729(__unit: None=None) -> IEnumerable_1[tuple[CompositeHeader, CompositeCell]]:
|
|
1321
|
+
return singleton(BaseTypes_decomposeProcessOutput_Z2F770004(value_4(o), context)) if (o is not None) else empty_1()
|
|
1322
|
+
|
|
1323
|
+
return append(comments, delay(_arrow3729))
|
|
1324
|
+
|
|
1325
|
+
return append(vals_1, delay(_arrow3730))
|
|
1326
|
+
|
|
1327
|
+
return append(prot_vals, delay(_arrow3731))
|
|
1328
|
+
|
|
1329
|
+
return append(singleton(BaseTypes_decomposeProcessInput_Z2F770004(value_4(i), context)) if (i is not None) else empty_1(), delay(_arrow3732))
|
|
1330
|
+
|
|
1331
|
+
return to_list(delay(_arrow3733))
|
|
1332
|
+
|
|
1333
|
+
return ResizeArray_map(f_5, ResizeArray_zip(inputs_1, outputs_1))
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
def CompositeRow_toProtocol(table_name: str, row: IEnumerable_1[tuple[CompositeHeader, CompositeCell]]) -> LDNode:
|
|
1338
|
+
def folder(p: LDNode, hc: tuple[CompositeHeader, CompositeCell], table_name: Any=table_name, row: Any=row) -> LDNode:
|
|
1339
|
+
(pattern_matching_result, oa, v, v_1, v_2, v_3) = (None, None, None, None, None, None)
|
|
1340
|
+
if hc[0].tag == 4:
|
|
1341
|
+
if hc[1].tag == 0:
|
|
1342
|
+
pattern_matching_result = 0
|
|
1343
|
+
oa = hc[1].fields[0]
|
|
1344
|
+
|
|
1345
|
+
else:
|
|
1346
|
+
pattern_matching_result = 6
|
|
1347
|
+
|
|
1348
|
+
|
|
1349
|
+
elif hc[0].tag == 7:
|
|
1350
|
+
if hc[1].tag == 1:
|
|
1351
|
+
pattern_matching_result = 1
|
|
1352
|
+
v = hc[1].fields[0]
|
|
1353
|
+
|
|
1354
|
+
else:
|
|
1355
|
+
pattern_matching_result = 6
|
|
1356
|
+
|
|
1357
|
+
|
|
1358
|
+
elif hc[0].tag == 6:
|
|
1359
|
+
if hc[1].tag == 1:
|
|
1360
|
+
pattern_matching_result = 2
|
|
1361
|
+
v_1 = hc[1].fields[0]
|
|
1362
|
+
|
|
1363
|
+
else:
|
|
1364
|
+
pattern_matching_result = 6
|
|
1365
|
+
|
|
1366
|
+
|
|
1367
|
+
elif hc[0].tag == 5:
|
|
1368
|
+
if hc[1].tag == 1:
|
|
1369
|
+
pattern_matching_result = 3
|
|
1370
|
+
v_2 = hc[1].fields[0]
|
|
1371
|
+
|
|
1372
|
+
else:
|
|
1373
|
+
pattern_matching_result = 6
|
|
1374
|
+
|
|
1375
|
+
|
|
1376
|
+
elif hc[0].tag == 8:
|
|
1377
|
+
if hc[1].tag == 1:
|
|
1378
|
+
pattern_matching_result = 4
|
|
1379
|
+
v_3 = hc[1].fields[0]
|
|
1380
|
+
|
|
1381
|
+
else:
|
|
1382
|
+
pattern_matching_result = 6
|
|
1383
|
+
|
|
1384
|
+
|
|
1385
|
+
elif hc[0].tag == 0:
|
|
1386
|
+
if hc[1].tag == 0:
|
|
1387
|
+
pattern_matching_result = 5
|
|
1388
|
+
|
|
1389
|
+
elif hc[1].tag == 2:
|
|
1390
|
+
pattern_matching_result = 5
|
|
1391
|
+
|
|
1392
|
+
else:
|
|
1393
|
+
pattern_matching_result = 6
|
|
1394
|
+
|
|
1395
|
+
|
|
1396
|
+
else:
|
|
1397
|
+
pattern_matching_result = 6
|
|
1398
|
+
|
|
1399
|
+
if pattern_matching_result == 0:
|
|
1400
|
+
LDLabProtocol.set_intended_use_as_defined_term(p, BaseTypes_composeDefinedTerm_ZDED3A0F(oa))
|
|
1401
|
+
|
|
1402
|
+
elif pattern_matching_result == 1:
|
|
1403
|
+
LDLabProtocol.set_version_as_string(p, v)
|
|
1404
|
+
|
|
1405
|
+
elif pattern_matching_result == 2:
|
|
1406
|
+
LDLabProtocol.set_url(p, v_1)
|
|
1407
|
+
|
|
1408
|
+
elif pattern_matching_result == 3:
|
|
1409
|
+
LDLabProtocol.set_description_as_string(p, v_2)
|
|
1410
|
+
|
|
1411
|
+
elif pattern_matching_result == 4:
|
|
1412
|
+
LDLabProtocol.set_name_as_string(p, v_3)
|
|
1413
|
+
|
|
1414
|
+
elif pattern_matching_result == 5:
|
|
1415
|
+
new_c: Array[LDNode] = ResizeArray_appendSingleton(BaseTypes_composeComponent(hc[0], hc[1]), LDLabProtocol.get_lab_equipments(p))
|
|
1416
|
+
LDLabProtocol.set_lab_equipments(p, new_c)
|
|
1417
|
+
|
|
1418
|
+
return p
|
|
1419
|
+
|
|
1420
|
+
return fold(folder, LDLabProtocol.create(table_name, table_name), row)
|
|
1421
|
+
|
|
1422
|
+
|
|
1423
|
+
def ARCtrl_ArcTable__ArcTable_fromProtocol_Static_Z6839B9E8(p: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcTable:
|
|
1424
|
+
name: str = LDLabProtocol.get_name_as_string(p, context)
|
|
1425
|
+
t: ArcTable = ArcTable.init(name)
|
|
1426
|
+
enumerator: Any = get_enumerator(LDLabProtocol.get_components(p, graph, context))
|
|
1427
|
+
try:
|
|
1428
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
1429
|
+
c: LDNode = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
1430
|
+
pattern_input: tuple[CompositeHeader, CompositeCell] = BaseTypes_decomposeComponent_Z2F770004(c, context)
|
|
1431
|
+
t.AddColumn(pattern_input[0], singleton_1(pattern_input[1], None), ARCtrl_ROCrate_LDNode__LDNode_TryGetColumnIndex(c))
|
|
1432
|
+
|
|
1433
|
+
finally:
|
|
1434
|
+
dispose(enumerator)
|
|
1435
|
+
|
|
1436
|
+
def mapping(d: str, p: Any=p, graph: Any=graph, context: Any=context) -> None:
|
|
1437
|
+
t.AddProtocolDescriptionColumn([d])
|
|
1438
|
+
|
|
1439
|
+
ignore(map(mapping, LDLabProtocol.try_get_description_as_string(p, context)))
|
|
1440
|
+
def mapping_1(d_1: str, p: Any=p, graph: Any=graph, context: Any=context) -> None:
|
|
1441
|
+
t.AddProtocolVersionColumn([d_1])
|
|
1442
|
+
|
|
1443
|
+
ignore(map(mapping_1, LDLabProtocol.try_get_version_as_string(p, context)))
|
|
1444
|
+
def mapping_2(d_2: OntologyAnnotation, p: Any=p, graph: Any=graph, context: Any=context) -> None:
|
|
1445
|
+
t.AddProtocolTypeColumn([d_2])
|
|
1446
|
+
|
|
1447
|
+
ignore(map(mapping_2, ProcessConversion_tryGetProtocolType_Z6839B9E8(p, None, context)))
|
|
1448
|
+
def mapping_3(d_3: str, p: Any=p, graph: Any=graph, context: Any=context) -> None:
|
|
1449
|
+
t.AddProtocolUriColumn([d_3])
|
|
1450
|
+
|
|
1451
|
+
ignore(map(mapping_3, LDLabProtocol.try_get_url(p, context)))
|
|
1452
|
+
t.AddProtocolNameColumn([name])
|
|
1453
|
+
return t
|
|
1454
|
+
|
|
1455
|
+
|
|
1456
|
+
def ARCtrl_ArcTable__ArcTable_GetProtocols(this: ArcTable) -> FSharpList[LDNode]:
|
|
1457
|
+
if this.RowCount == 0:
|
|
1458
|
+
def _arrow3734(__unit: None=None, this: Any=this) -> LDNode:
|
|
1459
|
+
source: Array[CompositeHeader] = this.Headers
|
|
1460
|
+
def folder(p: LDNode, h: CompositeHeader) -> LDNode:
|
|
1461
|
+
if h.tag == 0:
|
|
1462
|
+
oa: OntologyAnnotation = h.fields[0]
|
|
1463
|
+
match_value: str = oa.NameText
|
|
1464
|
+
match_value_1: str = oa.TermAccessionOntobeeUrl
|
|
1465
|
+
new_c: Array[LDNode] = ResizeArray_appendSingleton(LDPropertyValue.create_component(match_value, "Empty Component Value", None, match_value_1), LDLabProtocol.get_lab_equipments(p))
|
|
1466
|
+
LDLabProtocol.set_lab_equipments(p, new_c)
|
|
1467
|
+
|
|
1468
|
+
return p
|
|
1469
|
+
|
|
1470
|
+
return fold(folder, LDLabProtocol.create(create_missing_identifier(), this.Name), source)
|
|
1471
|
+
|
|
1472
|
+
return singleton_2(_arrow3734())
|
|
1473
|
+
|
|
1474
|
+
else:
|
|
1475
|
+
def _arrow3735(i: int, this: Any=this) -> LDNode:
|
|
1476
|
+
row: IEnumerable_1[tuple[CompositeHeader, CompositeCell]]
|
|
1477
|
+
source_2: Array[CompositeCell] = this.GetRow(i, True)
|
|
1478
|
+
row = zip(this.Headers, source_2)
|
|
1479
|
+
return CompositeRow_toProtocol(this.Name, row)
|
|
1480
|
+
|
|
1481
|
+
class ObjectExpr3736:
|
|
1482
|
+
@property
|
|
1483
|
+
def Equals(self) -> Callable[[LDNode, LDNode], bool]:
|
|
1484
|
+
return equals
|
|
1485
|
+
|
|
1486
|
+
@property
|
|
1487
|
+
def GetHashCode(self) -> Callable[[LDNode], int]:
|
|
1488
|
+
return safe_hash
|
|
1489
|
+
|
|
1490
|
+
return List_distinct(initialize(this.RowCount, _arrow3735), ObjectExpr3736())
|
|
1491
|
+
|
|
1492
|
+
|
|
1493
|
+
|
|
1494
|
+
def ARCtrl_ArcTable__ArcTable_GetProcesses(this: ArcTable) -> FSharpList[LDNode]:
|
|
1495
|
+
if this.RowCount == 0:
|
|
1496
|
+
return singleton_2(LDLabProcess.create(this.Name))
|
|
1497
|
+
|
|
1498
|
+
else:
|
|
1499
|
+
getter: Callable[[Any, int], LDNode] = ProcessConversion_getProcessGetter(this.Name, this.Headers)
|
|
1500
|
+
def _arrow3738(__unit: None=None, this: Any=this) -> IEnumerable_1[LDNode]:
|
|
1501
|
+
def _arrow3737(i: int) -> LDNode:
|
|
1502
|
+
return getter(this.Values)(i)
|
|
1503
|
+
|
|
1504
|
+
return map_1(_arrow3737, range_big_int(0, 1, this.RowCount - 1))
|
|
1505
|
+
|
|
1506
|
+
return to_list(delay(_arrow3738))
|
|
1507
|
+
|
|
1508
|
+
|
|
1509
|
+
|
|
1510
|
+
def ARCtrl_ArcTable__ArcTable_fromProcesses_Static_Z3575FB5F(name: str, ps: FSharpList[LDNode], graph: LDGraph | None=None, context: LDContext | None=None) -> ArcTable:
|
|
1511
|
+
def mapping(p: LDNode, name: Any=name, ps: Any=ps, graph: Any=graph, context: Any=context) -> FSharpList[FSharpList[tuple[CompositeHeader, CompositeCell]]]:
|
|
1512
|
+
return of_seq(ProcessConversion_processToRows_Z6839B9E8(p, graph, context))
|
|
1513
|
+
|
|
1514
|
+
tupled_arg: tuple[Array[CompositeHeader], Any] = Unchecked_alignByHeaders(True, collect(mapping, ps))
|
|
1515
|
+
return ArcTable.create(name, tupled_arg[0], tupled_arg[1])
|
|
1516
|
+
|
|
1517
|
+
|
|
1518
|
+
def ARCtrl_ArcTables__ArcTables_GetProcesses(this: ArcTables) -> FSharpList[LDNode]:
|
|
1519
|
+
def mapping(t: ArcTable, this: Any=this) -> FSharpList[LDNode]:
|
|
1520
|
+
return ARCtrl_ArcTable__ArcTable_GetProcesses(t)
|
|
1521
|
+
|
|
1522
|
+
return collect(mapping, to_list(this.Tables))
|
|
1523
|
+
|
|
1524
|
+
|
|
1525
|
+
def ARCtrl_ArcTables__ArcTables_fromProcesses_Static_Z27F0B586(ps: FSharpList[LDNode], graph: LDGraph | None=None, context: LDContext | None=None) -> ArcTables:
|
|
1526
|
+
def mapping_1(tupled_arg: tuple[str, FSharpList[LDNode]], ps: Any=ps, graph: Any=graph, context: Any=context) -> ArcTable:
|
|
1527
|
+
def mapping(p: LDNode, tupled_arg: Any=tupled_arg) -> FSharpList[FSharpList[tuple[CompositeHeader, CompositeCell]]]:
|
|
1528
|
+
return of_seq(ProcessConversion_processToRows_Z6839B9E8(p, graph, context))
|
|
1529
|
+
|
|
1530
|
+
tupled_arg_1: tuple[Array[CompositeHeader], Any] = Unchecked_alignByHeaders(True, collect(mapping, tupled_arg[1]))
|
|
1531
|
+
return ArcTable.create(tupled_arg[0], tupled_arg_1[0], tupled_arg_1[1])
|
|
1532
|
+
|
|
1533
|
+
return ArcTables(list(map_2(mapping_1, ProcessConversion_groupProcesses_Z27F0B586(ps, graph, context))))
|
|
1534
|
+
|
|
1535
|
+
|
|
1536
|
+
def _expr3739() -> TypeInfo:
|
|
1537
|
+
return class_type("ARCtrl.Conversion.DatamapConversion", None, DatamapConversion)
|
|
1538
|
+
|
|
1539
|
+
|
|
1540
|
+
class DatamapConversion:
|
|
1541
|
+
...
|
|
1542
|
+
|
|
1543
|
+
DatamapConversion_reflection = _expr3739
|
|
1544
|
+
|
|
1545
|
+
def DatamapConversion_composeFragmentDescriptors_Z8923FA3(datamap: DataMap) -> Array[LDNode]:
|
|
1546
|
+
def f(dc: DataContext, datamap: Any=datamap) -> LDNode:
|
|
1547
|
+
return BaseTypes_composeFragmentDescriptor_Z4C0BEF62(dc)
|
|
1548
|
+
|
|
1549
|
+
return ResizeArray_map(f, DataMap__get_DataContexts(datamap))
|
|
1550
|
+
|
|
1551
|
+
|
|
1552
|
+
def DatamapConversion_decomposeFragmentDescriptors_Z6E59645F(fragment_descriptors: Array[LDNode], graph: LDGraph | None=None, context: LDContext | None=None) -> DataMap:
|
|
1553
|
+
def f(fd: LDNode, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> DataContext:
|
|
1554
|
+
return BaseTypes_decomposeFragmentDescriptor_Z6839B9E8(fd, graph, context)
|
|
1555
|
+
|
|
1556
|
+
return DataMap__ctor_4E3220A7(ResizeArray_map(f, fragment_descriptors))
|
|
1557
|
+
|
|
1558
|
+
|
|
1559
|
+
def _expr3740() -> TypeInfo:
|
|
1560
|
+
return class_type("ARCtrl.Conversion.PersonConversion", None, PersonConversion)
|
|
1561
|
+
|
|
1562
|
+
|
|
1563
|
+
class PersonConversion:
|
|
1564
|
+
...
|
|
1565
|
+
|
|
1566
|
+
PersonConversion_reflection = _expr3740
|
|
1567
|
+
|
|
1568
|
+
def PersonConversion_get_orcidKey(__unit: None=None) -> str:
|
|
1569
|
+
return "ORCID"
|
|
1570
|
+
|
|
1571
|
+
|
|
1572
|
+
def PersonConversion_composeAffiliation_Z721C83C5(affiliation: str) -> LDNode:
|
|
1573
|
+
try:
|
|
1574
|
+
match_value: FSharpResult_2[LDNode, str] = Decode_fromString(decoder_1, affiliation)
|
|
1575
|
+
if match_value.tag == 1:
|
|
1576
|
+
raise Exception(to_text(printf("Error decoding string: %O"))(match_value.fields[0]))
|
|
1577
|
+
|
|
1578
|
+
else:
|
|
1579
|
+
return match_value.fields[0]
|
|
1580
|
+
|
|
1581
|
+
|
|
1582
|
+
except Exception as match_value_1:
|
|
1583
|
+
return LDOrganization.create(affiliation)
|
|
1584
|
+
|
|
1585
|
+
|
|
1586
|
+
|
|
1587
|
+
def PersonConversion_decomposeAffiliation_Z2F770004(affiliation: LDNode, context: LDContext | None=None) -> str:
|
|
1588
|
+
def predicate(n: str, affiliation: Any=affiliation, context: Any=context) -> bool:
|
|
1589
|
+
return n != LDOrganization.name()
|
|
1590
|
+
|
|
1591
|
+
if is_empty(filter(predicate, affiliation.GetPropertyNames(context))):
|
|
1592
|
+
return LDOrganization.get_name_as_string(affiliation, context)
|
|
1593
|
+
|
|
1594
|
+
else:
|
|
1595
|
+
return to_string(0, encoder(affiliation))
|
|
1596
|
+
|
|
1597
|
+
|
|
1598
|
+
|
|
1599
|
+
def PersonConversion_composeAddress_Z721C83C5(address: str) -> Any:
|
|
1600
|
+
try:
|
|
1601
|
+
def _arrow3741(__unit: None=None) -> LDNode:
|
|
1602
|
+
match_value: FSharpResult_2[LDNode, str] = Decode_fromString(decoder_1, address)
|
|
1603
|
+
if match_value.tag == 1:
|
|
1604
|
+
raise Exception(to_text(printf("Error decoding string: %O"))(match_value.fields[0]))
|
|
1605
|
+
|
|
1606
|
+
else:
|
|
1607
|
+
return match_value.fields[0]
|
|
1608
|
+
|
|
1609
|
+
|
|
1610
|
+
return _arrow3741()
|
|
1611
|
+
|
|
1612
|
+
except Exception as match_value_1:
|
|
1613
|
+
return address
|
|
1614
|
+
|
|
1615
|
+
|
|
1616
|
+
|
|
1617
|
+
def PersonConversion_decomposeAddress_4E60E31B(address: Any=None) -> str:
|
|
1618
|
+
if str(type(address)) == "<class \'str\'>":
|
|
1619
|
+
return address
|
|
1620
|
+
|
|
1621
|
+
elif isinstance(address, LDNode):
|
|
1622
|
+
return to_string(0, encoder(address))
|
|
1623
|
+
|
|
1624
|
+
else:
|
|
1625
|
+
raise Exception("Address must be a string or a Json.LDNode")
|
|
1626
|
+
|
|
1627
|
+
|
|
1628
|
+
|
|
1629
|
+
def PersonConversion_composePerson_Z64D846DC(person: Person) -> LDNode:
|
|
1630
|
+
given_name: str
|
|
1631
|
+
match_value: str | None = person.FirstName
|
|
1632
|
+
if match_value is None:
|
|
1633
|
+
raise Exception("Person must have a given name")
|
|
1634
|
+
|
|
1635
|
+
else:
|
|
1636
|
+
given_name = match_value
|
|
1637
|
+
|
|
1638
|
+
def f(term: OntologyAnnotation, person: Any=person) -> LDNode:
|
|
1639
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(term)
|
|
1640
|
+
|
|
1641
|
+
job_titles: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f, person.Roles))
|
|
1642
|
+
def f_1(c: Comment, person: Any=person) -> str:
|
|
1643
|
+
return to_string_1(c)
|
|
1644
|
+
|
|
1645
|
+
disambiguating_descriptions: Array[str] | None = Option_fromSeq(ResizeArray_map(f_1, person.Comments))
|
|
1646
|
+
def mapping(address: str, person: Any=person) -> Any:
|
|
1647
|
+
return PersonConversion_composeAddress_Z721C83C5(address)
|
|
1648
|
+
|
|
1649
|
+
address_1: Any | None = map(mapping, person.Address)
|
|
1650
|
+
def mapping_1(affiliation: str, person: Any=person) -> LDNode:
|
|
1651
|
+
return PersonConversion_composeAffiliation_Z721C83C5(affiliation)
|
|
1652
|
+
|
|
1653
|
+
affiliation_1: LDNode | None = map(mapping_1, person.Affiliation)
|
|
1654
|
+
return LDPerson.create(given_name, person.ORCID, None, affiliation_1, person.EMail, person.LastName, None, job_titles, person.MidInitials, address_1, disambiguating_descriptions, person.Fax, person.Phone)
|
|
1655
|
+
|
|
1656
|
+
|
|
1657
|
+
def PersonConversion_decomposePerson_Z6839B9E8(person: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Person:
|
|
1658
|
+
orcid: str | None = try_get_orcid_number(person.Id)
|
|
1659
|
+
address: str | None
|
|
1660
|
+
match_value: str | None = LDPerson.try_get_address_as_string(person, context)
|
|
1661
|
+
if match_value is None:
|
|
1662
|
+
match_value_1: LDNode | None = LDPerson.try_get_address_as_postal_address(person, graph, context)
|
|
1663
|
+
address = None if (match_value_1 is None) else PersonConversion_decomposeAddress_4E60E31B(match_value_1)
|
|
1664
|
+
|
|
1665
|
+
else:
|
|
1666
|
+
address = match_value
|
|
1667
|
+
|
|
1668
|
+
def f(r: LDNode, person: Any=person, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
1669
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(r, context)
|
|
1670
|
+
|
|
1671
|
+
roles: Array[OntologyAnnotation] = ResizeArray_map(f, LDPerson.get_job_titles_as_defined_term(person, graph, context))
|
|
1672
|
+
def f_1(s_1: str, person: Any=person, graph: Any=graph, context: Any=context) -> Comment:
|
|
1673
|
+
return Comment.from_string(s_1)
|
|
1674
|
+
|
|
1675
|
+
comments: Array[Comment] = ResizeArray_map(f_1, LDPerson.get_disambiguating_descriptions_as_string(person, context))
|
|
1676
|
+
def mapping(a_3: LDNode, person: Any=person, graph: Any=graph, context: Any=context) -> str:
|
|
1677
|
+
return PersonConversion_decomposeAffiliation_Z2F770004(a_3, context)
|
|
1678
|
+
|
|
1679
|
+
affiliation: str | None = map(mapping, LDPerson.try_get_affiliation(person, graph, context))
|
|
1680
|
+
return Person.create(orcid, LDPerson.try_get_family_name_as_string(person, context), LDPerson.get_given_name_as_string(person, context), LDPerson.try_get_additional_name_as_string(person, context), LDPerson.try_get_email_as_string(person, context), LDPerson.try_get_telephone_as_string(person, context), LDPerson.try_get_fax_number_as_string(person, context), address, affiliation, roles, comments)
|
|
1681
|
+
|
|
1682
|
+
|
|
1683
|
+
def _expr3742() -> TypeInfo:
|
|
1684
|
+
return class_type("ARCtrl.Conversion.ScholarlyArticleConversion", None, ScholarlyArticleConversion)
|
|
1685
|
+
|
|
1686
|
+
|
|
1687
|
+
class ScholarlyArticleConversion:
|
|
1688
|
+
...
|
|
1689
|
+
|
|
1690
|
+
ScholarlyArticleConversion_reflection = _expr3742
|
|
1691
|
+
|
|
1692
|
+
def ScholarlyArticleConversion_composeAuthor_Z721C83C5(author: str) -> LDNode:
|
|
1693
|
+
try:
|
|
1694
|
+
match_value: FSharpResult_2[LDNode, str] = Decode_fromString(decoder_1, author)
|
|
1695
|
+
if match_value.tag == 1:
|
|
1696
|
+
raise Exception(to_text(printf("Error decoding string: %O"))(match_value.fields[0]))
|
|
1697
|
+
|
|
1698
|
+
else:
|
|
1699
|
+
return match_value.fields[0]
|
|
1700
|
+
|
|
1701
|
+
|
|
1702
|
+
except Exception as match_value_1:
|
|
1703
|
+
return LDPerson.create(author)
|
|
1704
|
+
|
|
1705
|
+
|
|
1706
|
+
|
|
1707
|
+
def ScholarlyArticleConversion_splitAuthors_Z721C83C5(a: str) -> Array[str]:
|
|
1708
|
+
bracket_count: int = 0
|
|
1709
|
+
authors: Array[str] = []
|
|
1710
|
+
sb: Any = StringBuilder__ctor()
|
|
1711
|
+
with get_enumerator(list(a)) as enumerator:
|
|
1712
|
+
while enumerator.System_Collections_IEnumerator_MoveNext():
|
|
1713
|
+
c: str = enumerator.System_Collections_Generic_IEnumerator_1_get_Current()
|
|
1714
|
+
if c == "{":
|
|
1715
|
+
bracket_count = (bracket_count + 1) or 0
|
|
1716
|
+
ignore(StringBuilder__Append_244C7CD6(sb, c))
|
|
1717
|
+
|
|
1718
|
+
elif c == "}":
|
|
1719
|
+
bracket_count = (bracket_count - 1) or 0
|
|
1720
|
+
ignore(StringBuilder__Append_244C7CD6(sb, c))
|
|
1721
|
+
|
|
1722
|
+
elif (bracket_count == 0) if (c == ",") else False:
|
|
1723
|
+
(authors.append(to_string_1(sb)))
|
|
1724
|
+
ignore(StringBuilder__Clear(sb))
|
|
1725
|
+
|
|
1726
|
+
else:
|
|
1727
|
+
ignore(StringBuilder__Append_244C7CD6(sb, c))
|
|
1728
|
+
|
|
1729
|
+
(authors.append(to_string_1(sb)))
|
|
1730
|
+
return authors
|
|
1731
|
+
|
|
1732
|
+
|
|
1733
|
+
def ScholarlyArticleConversion_composeAuthors_Z721C83C5(authors: str) -> Array[LDNode]:
|
|
1734
|
+
def mapping(author: str, authors: Any=authors) -> LDNode:
|
|
1735
|
+
return ScholarlyArticleConversion_composeAuthor_Z721C83C5(author)
|
|
1736
|
+
|
|
1737
|
+
return list(map_1(mapping, ScholarlyArticleConversion_splitAuthors_Z721C83C5(authors)))
|
|
1738
|
+
|
|
1739
|
+
|
|
1740
|
+
def ScholarlyArticleConversion_decomposeAuthor_Z2F770004(author: LDNode, context: LDContext | None=None) -> str:
|
|
1741
|
+
def predicate(n: str, author: Any=author, context: Any=context) -> bool:
|
|
1742
|
+
return n != LDPerson.given_name()
|
|
1743
|
+
|
|
1744
|
+
if is_empty(filter(predicate, author.GetPropertyNames(context))):
|
|
1745
|
+
return LDPerson.get_given_name_as_string(author, context)
|
|
1746
|
+
|
|
1747
|
+
else:
|
|
1748
|
+
return to_string(0, encoder(author))
|
|
1749
|
+
|
|
1750
|
+
|
|
1751
|
+
|
|
1752
|
+
def ScholarlyArticleConversion_decomposeAuthors_1AAAE9A5(authors: Array[LDNode], context: LDContext | None=None) -> str:
|
|
1753
|
+
def f(a: LDNode, authors: Any=authors, context: Any=context) -> str:
|
|
1754
|
+
return ScholarlyArticleConversion_decomposeAuthor_Z2F770004(a, context)
|
|
1755
|
+
|
|
1756
|
+
return join(",", ResizeArray_map(f, authors))
|
|
1757
|
+
|
|
1758
|
+
|
|
1759
|
+
def ScholarlyArticleConversion_composeScholarlyArticle_D324A6D(publication: Publication) -> LDNode:
|
|
1760
|
+
title: str
|
|
1761
|
+
match_value: str | None = publication.Title
|
|
1762
|
+
if match_value is None:
|
|
1763
|
+
raise Exception("Publication must have a title")
|
|
1764
|
+
|
|
1765
|
+
else:
|
|
1766
|
+
title = match_value
|
|
1767
|
+
|
|
1768
|
+
def mapping(authors: str, publication: Any=publication) -> Array[LDNode]:
|
|
1769
|
+
return ScholarlyArticleConversion_composeAuthors_Z721C83C5(authors)
|
|
1770
|
+
|
|
1771
|
+
authors_1: Array[LDNode] | None = map(mapping, publication.Authors)
|
|
1772
|
+
def f(comment: Comment, publication: Any=publication) -> LDNode:
|
|
1773
|
+
return BaseTypes_composeComment_Z13201A7E(comment)
|
|
1774
|
+
|
|
1775
|
+
comments: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f, publication.Comments))
|
|
1776
|
+
def _arrow3744(__unit: None=None, publication: Any=publication) -> IEnumerable_1[LDNode]:
|
|
1777
|
+
def _arrow3743(__unit: None=None) -> IEnumerable_1[LDNode]:
|
|
1778
|
+
return singleton(LDPropertyValue.create_pub_med_id(value_4(publication.PubMedID))) if ((value_4(publication.PubMedID) != "") if (publication.PubMedID is not None) else False) else empty_1()
|
|
1779
|
+
|
|
1780
|
+
return append(singleton(LDPropertyValue.create_doi(value_4(publication.DOI))) if ((value_4(publication.DOI) != "") if (publication.DOI is not None) else False) else empty_1(), delay(_arrow3743))
|
|
1781
|
+
|
|
1782
|
+
identifiers: Array[LDNode] = list(to_list(delay(_arrow3744)))
|
|
1783
|
+
def mapping_1(term: OntologyAnnotation, publication: Any=publication) -> LDNode:
|
|
1784
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(term)
|
|
1785
|
+
|
|
1786
|
+
status: LDNode | None = map(mapping_1, publication.Status)
|
|
1787
|
+
return LDScholarlyArticle.create(title, identifiers, None, authors_1, None, status, comments)
|
|
1788
|
+
|
|
1789
|
+
|
|
1790
|
+
def ScholarlyArticleConversion_decomposeScholarlyArticle_Z6839B9E8(sa: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Publication:
|
|
1791
|
+
title: str = LDScholarlyArticle.get_headline_as_string(sa, context)
|
|
1792
|
+
def mapping(a: Array[LDNode], sa: Any=sa, graph: Any=graph, context: Any=context) -> str:
|
|
1793
|
+
return ScholarlyArticleConversion_decomposeAuthors_1AAAE9A5(a, context)
|
|
1794
|
+
|
|
1795
|
+
authors: str | None = map(mapping, Option_fromSeq(LDScholarlyArticle.get_authors(sa, graph, context)))
|
|
1796
|
+
def f(c: LDNode, sa: Any=sa, graph: Any=graph, context: Any=context) -> Comment:
|
|
1797
|
+
return BaseTypes_decomposeComment_Z2F770004(c, context)
|
|
1798
|
+
|
|
1799
|
+
comments: Array[Comment] = ResizeArray_map(f, LDScholarlyArticle.get_comments(sa, graph, context))
|
|
1800
|
+
def mapping_1(s: LDNode, sa: Any=sa, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
1801
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(s, context)
|
|
1802
|
+
|
|
1803
|
+
status: OntologyAnnotation | None = map(mapping_1, LDScholarlyArticle.try_get_creative_work_status(sa, graph, context))
|
|
1804
|
+
identifiers: Array[LDNode] = LDScholarlyArticle.get_identifiers_as_property_value(sa, graph, context)
|
|
1805
|
+
doi: str | None
|
|
1806
|
+
def f_1(i: LDNode, sa: Any=sa, graph: Any=graph, context: Any=context) -> str | None:
|
|
1807
|
+
return LDPropertyValue.try_get_as_doi(i, context)
|
|
1808
|
+
|
|
1809
|
+
_arg: str | None = ResizeArray_tryPick(f_1, identifiers)
|
|
1810
|
+
doi = LDScholarlyArticle.try_get_same_as_as_string(sa, context) if (_arg is None) else _arg
|
|
1811
|
+
pub_med_id: str | None
|
|
1812
|
+
def f_2(i_1: LDNode, sa: Any=sa, graph: Any=graph, context: Any=context) -> str | None:
|
|
1813
|
+
return LDPropertyValue.try_get_as_pub_med_id(i_1, context)
|
|
1814
|
+
|
|
1815
|
+
_arg_1: str | None = ResizeArray_tryPick(f_2, identifiers)
|
|
1816
|
+
pub_med_id = LDScholarlyArticle.try_get_url_as_string(sa, context) if (_arg_1 is None) else _arg_1
|
|
1817
|
+
return Publication.create(pub_med_id, doi, authors, title, status, comments)
|
|
1818
|
+
|
|
1819
|
+
|
|
1820
|
+
def _expr3745() -> TypeInfo:
|
|
1821
|
+
return class_type("ARCtrl.Conversion.AssayConversion", None, AssayConversion)
|
|
1822
|
+
|
|
1823
|
+
|
|
1824
|
+
class AssayConversion:
|
|
1825
|
+
...
|
|
1826
|
+
|
|
1827
|
+
AssayConversion_reflection = _expr3745
|
|
1828
|
+
|
|
1829
|
+
def AssayConversion_getDataFilesFromProcesses_6BABD1B0(processes: Array[LDNode], fragment_descriptors: Array[LDNode] | None=None, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
|
|
1830
|
+
def f(df: LDNode, processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> LDNode | None:
|
|
1831
|
+
return LDPropertyValue.try_get_subject_of(df, graph, context)
|
|
1832
|
+
|
|
1833
|
+
def f_1(p: LDNode, processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> Array[LDNode]:
|
|
1834
|
+
return ResizeArray_append(LDLabProcess.get_objects_as_data(p, graph, context), LDLabProcess.get_results_as_data(p, graph, context))
|
|
1835
|
+
|
|
1836
|
+
data: Array[LDNode] = ResizeArray_distinct(ResizeArray_append(ResizeArray_choose(f, default_arg(fragment_descriptors, [])), ResizeArray_collect(f_1, processes)))
|
|
1837
|
+
def f_2(d: LDNode, processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> bool:
|
|
1838
|
+
return DataAux_pathAndSelectorFromName(d.Id)[1] is None
|
|
1839
|
+
|
|
1840
|
+
files: Array[LDNode] = ResizeArray_filter(f_2, data)
|
|
1841
|
+
def f_7(tupled_arg: tuple[str, Array[LDNode]], processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> LDNode:
|
|
1842
|
+
path: str = tupled_arg[0]
|
|
1843
|
+
fragments: Array[LDNode] = tupled_arg[1]
|
|
1844
|
+
file: LDNode
|
|
1845
|
+
def f_5(d_3: LDNode, tupled_arg: Any=tupled_arg) -> bool:
|
|
1846
|
+
return d_3.Id == path
|
|
1847
|
+
|
|
1848
|
+
match_value: LDNode | None = ResizeArray_tryFind(f_5, files)
|
|
1849
|
+
if match_value is None:
|
|
1850
|
+
comments: Array[LDNode] | None = Option_fromSeq(LDFile.get_comments(fragments[0], graph, context))
|
|
1851
|
+
file = LDFile.create(path, path, comments, LDFile.try_get_disambiguating_description_as_string(fragments[0], context), LDFile.try_get_encoding_format_as_string(fragments[0], context), None, fragments[0].TryGetContext())
|
|
1852
|
+
|
|
1853
|
+
else:
|
|
1854
|
+
file = match_value
|
|
1855
|
+
|
|
1856
|
+
LDDataset.set_has_parts(file, fragments, context)
|
|
1857
|
+
return file
|
|
1858
|
+
|
|
1859
|
+
def f_4(d_2: LDNode, processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> str:
|
|
1860
|
+
return DataAux_pathAndSelectorFromName(d_2.Id)[0]
|
|
1861
|
+
|
|
1862
|
+
def f_3(d_1: LDNode, processes: Any=processes, fragment_descriptors: Any=fragment_descriptors, graph: Any=graph, context: Any=context) -> bool:
|
|
1863
|
+
return DataAux_pathAndSelectorFromName(d_1.Id)[1] is not None
|
|
1864
|
+
|
|
1865
|
+
return ResizeArray_append(files, ResizeArray_map(f_7, ResizeArray_groupBy(f_4, ResizeArray_filter(f_3, data))))
|
|
1866
|
+
|
|
1867
|
+
|
|
1868
|
+
def AssayConversion_composeAssay_1501C0F8(assay: ArcAssay) -> LDNode:
|
|
1869
|
+
def mapping(term: OntologyAnnotation, assay: Any=assay) -> LDNode:
|
|
1870
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(term)
|
|
1871
|
+
|
|
1872
|
+
measurement_method: LDNode | None = map(mapping, assay.TechnologyType)
|
|
1873
|
+
def mapping_1(term_1: OntologyAnnotation, assay: Any=assay) -> LDNode:
|
|
1874
|
+
return BaseTypes_composeDefinedTerm_ZDED3A0F(term_1)
|
|
1875
|
+
|
|
1876
|
+
measurement_technique: LDNode | None = map(mapping_1, assay.TechnologyPlatform)
|
|
1877
|
+
def mapping_2(term_2: OntologyAnnotation, assay: Any=assay) -> LDNode:
|
|
1878
|
+
return BaseTypes_composePropertyValueFromOA_ZDED3A0F(term_2)
|
|
1879
|
+
|
|
1880
|
+
variable_measured: LDNode | None = map(mapping_2, assay.MeasurementType)
|
|
1881
|
+
def f(c: Person, assay: Any=assay) -> LDNode:
|
|
1882
|
+
return PersonConversion_composePerson_Z64D846DC(c)
|
|
1883
|
+
|
|
1884
|
+
creators: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f, assay.Performers))
|
|
1885
|
+
process_sequence: Array[LDNode] | None = Option_fromSeq(list(ARCtrl_ArcTables__ArcTables_GetProcesses(ArcTables(assay.Tables))))
|
|
1886
|
+
def mapping_3(datamap: DataMap, assay: Any=assay) -> Array[LDNode]:
|
|
1887
|
+
return DatamapConversion_composeFragmentDescriptors_Z8923FA3(datamap)
|
|
1888
|
+
|
|
1889
|
+
fragment_descriptors: Array[LDNode] | None = map(mapping_3, assay.DataMap)
|
|
1890
|
+
def mapping_4(ps: Array[LDNode], assay: Any=assay) -> Array[LDNode]:
|
|
1891
|
+
return AssayConversion_getDataFilesFromProcesses_6BABD1B0(ps, fragment_descriptors)
|
|
1892
|
+
|
|
1893
|
+
data_files: Array[LDNode] | None = map(mapping_4, process_sequence)
|
|
1894
|
+
def _arrow3746(__unit: None=None, assay: Any=assay) -> Array[LDNode] | None:
|
|
1895
|
+
fds_1: Array[LDNode] = fragment_descriptors
|
|
1896
|
+
return fds_1
|
|
1897
|
+
|
|
1898
|
+
def _arrow3747(__unit: None=None, assay: Any=assay) -> Array[LDNode] | None:
|
|
1899
|
+
vm_1: LDNode = variable_measured
|
|
1900
|
+
return ResizeArray_singleton(vm_1)
|
|
1901
|
+
|
|
1902
|
+
def _arrow3748(__unit: None=None, assay: Any=assay) -> Array[LDNode] | None:
|
|
1903
|
+
fds: Array[LDNode] = fragment_descriptors
|
|
1904
|
+
vm: LDNode = variable_measured
|
|
1905
|
+
return ResizeArray_appendSingleton(vm, fds)
|
|
1906
|
+
|
|
1907
|
+
variable_measureds: Array[LDNode] | None = (None if (fragment_descriptors is None) else _arrow3746()) if (variable_measured is None) else (_arrow3747() if (fragment_descriptors is None) else _arrow3748())
|
|
1908
|
+
def f_1(c_1: Comment, assay: Any=assay) -> LDNode:
|
|
1909
|
+
return BaseTypes_composeComment_Z13201A7E(c_1)
|
|
1910
|
+
|
|
1911
|
+
comments: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f_1, assay.Comments))
|
|
1912
|
+
return LDDataset.create_assay(assay.Identifier, None, assay.Title, assay.Description, creators, data_files, measurement_method, measurement_technique, variable_measureds, process_sequence, comments)
|
|
1913
|
+
|
|
1914
|
+
|
|
1915
|
+
def AssayConversion_decomposeAssay_Z6839B9E8(assay: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcAssay:
|
|
1916
|
+
def mapping(m: LDNode, assay: Any=assay, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
1917
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(m, context)
|
|
1918
|
+
|
|
1919
|
+
measurement_method: OntologyAnnotation | None = map(mapping, LDDataset.try_get_measurement_method_as_defined_term(assay, graph, context))
|
|
1920
|
+
def mapping_1(m_1: LDNode, assay: Any=assay, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
1921
|
+
return BaseTypes_decomposeDefinedTerm_Z2F770004(m_1, context)
|
|
1922
|
+
|
|
1923
|
+
measurement_technique: OntologyAnnotation | None = map(mapping_1, LDDataset.try_get_measurement_technique_as_defined_term(assay, graph, context))
|
|
1924
|
+
def mapping_2(v: LDNode, assay: Any=assay, graph: Any=graph, context: Any=context) -> OntologyAnnotation:
|
|
1925
|
+
return BaseTypes_decomposePropertyValueToOA_Z2F770004(v, context)
|
|
1926
|
+
|
|
1927
|
+
variable_measured: OntologyAnnotation | None = map(mapping_2, LDDataset.try_get_variable_measured_as_measurement_type(assay, graph, context))
|
|
1928
|
+
def f(c: LDNode, assay: Any=assay, graph: Any=graph, context: Any=context) -> Person:
|
|
1929
|
+
return PersonConversion_decomposePerson_Z6839B9E8(c, graph, context)
|
|
1930
|
+
|
|
1931
|
+
perfomers: Array[Person] = ResizeArray_map(f, LDDataset.get_creators(assay, graph, context))
|
|
1932
|
+
data_map: DataMap | None
|
|
1933
|
+
v_1: DataMap = DatamapConversion_decomposeFragmentDescriptors_Z6E59645F(LDDataset.get_variable_measured_as_fragment_descriptors(assay, graph, context), graph, context)
|
|
1934
|
+
data_map = Option_fromValueWithDefault(DataMap_init(), v_1)
|
|
1935
|
+
tables: ArcTables = ARCtrl_ArcTables__ArcTables_fromProcesses_Static_Z27F0B586(of_seq(LDDataset.get_abouts_as_lab_process(assay, graph, context)), graph, context)
|
|
1936
|
+
def f_1(c_1: LDNode, assay: Any=assay, graph: Any=graph, context: Any=context) -> Comment:
|
|
1937
|
+
return BaseTypes_decomposeComment_Z2F770004(c_1, context)
|
|
1938
|
+
|
|
1939
|
+
comments: Array[Comment] = ResizeArray_map(f_1, LDDataset.get_comments(assay, graph, context))
|
|
1940
|
+
return ArcAssay.create(LDDataset.get_identifier_as_string(assay, context), LDDataset.try_get_name_as_string(assay, context), LDDataset.try_get_description_as_string(assay, context), variable_measured, measurement_method, measurement_technique, tables.Tables, data_map, perfomers, comments)
|
|
1941
|
+
|
|
1942
|
+
|
|
1943
|
+
def _expr3749() -> TypeInfo:
|
|
1944
|
+
return class_type("ARCtrl.Conversion.StudyConversion", None, StudyConversion)
|
|
1945
|
+
|
|
1946
|
+
|
|
1947
|
+
class StudyConversion:
|
|
1948
|
+
...
|
|
1949
|
+
|
|
1950
|
+
StudyConversion_reflection = _expr3749
|
|
1951
|
+
|
|
1952
|
+
def StudyConversion_composeStudy_1680536E(study: ArcStudy) -> LDNode:
|
|
1953
|
+
def _arrow3750(s: str, study: Any=study) -> Any | None:
|
|
1954
|
+
return DateTime_tryFromString(s)
|
|
1955
|
+
|
|
1956
|
+
date_created: Any | None = bind(_arrow3750, study.SubmissionDate)
|
|
1957
|
+
def _arrow3751(s_1: str, study: Any=study) -> Any | None:
|
|
1958
|
+
return DateTime_tryFromString(s_1)
|
|
1959
|
+
|
|
1960
|
+
date_published: Any | None = bind(_arrow3751, study.PublicReleaseDate)
|
|
1961
|
+
date_modified: Any = now()
|
|
1962
|
+
def f(p: Publication, study: Any=study) -> LDNode:
|
|
1963
|
+
return ScholarlyArticleConversion_composeScholarlyArticle_D324A6D(p)
|
|
1964
|
+
|
|
1965
|
+
publications: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f, study.Publications))
|
|
1966
|
+
def f_1(c: Person, study: Any=study) -> LDNode:
|
|
1967
|
+
return PersonConversion_composePerson_Z64D846DC(c)
|
|
1968
|
+
|
|
1969
|
+
creators: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f_1, study.Contacts))
|
|
1970
|
+
process_sequence: Array[LDNode] | None = Option_fromSeq(list(ARCtrl_ArcTables__ArcTables_GetProcesses(ArcTables(study.Tables))))
|
|
1971
|
+
def mapping(datamap: DataMap, study: Any=study) -> Array[LDNode]:
|
|
1972
|
+
return DatamapConversion_composeFragmentDescriptors_Z8923FA3(datamap)
|
|
1973
|
+
|
|
1974
|
+
fragment_descriptors: Array[LDNode] | None = map(mapping, study.DataMap)
|
|
1975
|
+
def mapping_1(ps: Array[LDNode], study: Any=study) -> Array[LDNode]:
|
|
1976
|
+
return AssayConversion_getDataFilesFromProcesses_6BABD1B0(ps, fragment_descriptors)
|
|
1977
|
+
|
|
1978
|
+
data_files: Array[LDNode] | None = map(mapping_1, process_sequence)
|
|
1979
|
+
def f_2(c_1: Comment, study: Any=study) -> LDNode:
|
|
1980
|
+
return BaseTypes_composeComment_Z13201A7E(c_1)
|
|
1981
|
+
|
|
1982
|
+
comments: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f_2, study.Comments))
|
|
1983
|
+
return LDDataset.create_study(study.Identifier, None, creators, date_created, date_published, date_modified, study.Description, data_files, study.Title, publications, fragment_descriptors, comments, None, process_sequence)
|
|
1984
|
+
|
|
1985
|
+
|
|
1986
|
+
def StudyConversion_decomposeStudy_Z6839B9E8(study: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcStudy:
|
|
1987
|
+
def _arrow3752(d: Any, study: Any=study, graph: Any=graph, context: Any=context) -> str:
|
|
1988
|
+
return DateTime_toString(d)
|
|
1989
|
+
|
|
1990
|
+
date_created: str | None = map(_arrow3752, LDDataset.try_get_date_created_as_date_time(study, context))
|
|
1991
|
+
def _arrow3753(d_1: Any, study: Any=study, graph: Any=graph, context: Any=context) -> str:
|
|
1992
|
+
return DateTime_toString(d_1)
|
|
1993
|
+
|
|
1994
|
+
date_published: str | None = map(_arrow3753, LDDataset.try_get_date_published_as_date_time(study, context))
|
|
1995
|
+
def f(p: LDNode, study: Any=study, graph: Any=graph, context: Any=context) -> Publication:
|
|
1996
|
+
return ScholarlyArticleConversion_decomposeScholarlyArticle_Z6839B9E8(p, graph, context)
|
|
1997
|
+
|
|
1998
|
+
publications: Array[Publication] = ResizeArray_map(f, LDDataset.get_citations(study, graph, context))
|
|
1999
|
+
def f_1(c: LDNode, study: Any=study, graph: Any=graph, context: Any=context) -> Person:
|
|
2000
|
+
return PersonConversion_decomposePerson_Z6839B9E8(c, graph, context)
|
|
2001
|
+
|
|
2002
|
+
creators: Array[Person] = ResizeArray_map(f_1, LDDataset.get_creators(study, graph, context))
|
|
2003
|
+
data_map: DataMap | None
|
|
2004
|
+
v: DataMap = DatamapConversion_decomposeFragmentDescriptors_Z6E59645F(LDDataset.get_variable_measured_as_fragment_descriptors(study, graph, context), graph, context)
|
|
2005
|
+
data_map = Option_fromValueWithDefault(DataMap_init(), v)
|
|
2006
|
+
tables: ArcTables = ARCtrl_ArcTables__ArcTables_fromProcesses_Static_Z27F0B586(of_seq(LDDataset.get_abouts_as_lab_process(study, graph, context)), graph, context)
|
|
2007
|
+
def f_2(c_1: LDNode, study: Any=study, graph: Any=graph, context: Any=context) -> Comment:
|
|
2008
|
+
return BaseTypes_decomposeComment_Z2F770004(c_1, context)
|
|
2009
|
+
|
|
2010
|
+
comments: Array[Comment] = ResizeArray_map(f_2, LDDataset.get_comments(study, graph, context))
|
|
2011
|
+
return ArcStudy.create(LDDataset.get_identifier_as_string(study, context), LDDataset.try_get_name_as_string(study, context), LDDataset.try_get_description_as_string(study, context), date_created, date_published, publications, creators, None, tables.Tables, data_map, None, comments)
|
|
2012
|
+
|
|
2013
|
+
|
|
2014
|
+
def _expr3754() -> TypeInfo:
|
|
2015
|
+
return class_type("ARCtrl.Conversion.InvestigationConversion", None, InvestigationConversion)
|
|
2016
|
+
|
|
2017
|
+
|
|
2018
|
+
class InvestigationConversion:
|
|
2019
|
+
...
|
|
2020
|
+
|
|
2021
|
+
InvestigationConversion_reflection = _expr3754
|
|
2022
|
+
|
|
2023
|
+
def InvestigationConversion_composeInvestigation_Z720BD3FF(investigation: ArcInvestigation) -> LDNode:
|
|
2024
|
+
name: str
|
|
2025
|
+
match_value: str | None = investigation.Title
|
|
2026
|
+
if match_value is None:
|
|
2027
|
+
raise Exception("Investigation must have a title")
|
|
2028
|
+
|
|
2029
|
+
else:
|
|
2030
|
+
name = match_value
|
|
2031
|
+
|
|
2032
|
+
def _arrow3755(s: str, investigation: Any=investigation) -> Any | None:
|
|
2033
|
+
return DateTime_tryFromString(s)
|
|
2034
|
+
|
|
2035
|
+
date_created: Any | None = bind(_arrow3755, investigation.SubmissionDate)
|
|
2036
|
+
def _arrow3756(s_1: str, investigation: Any=investigation) -> Any | None:
|
|
2037
|
+
return DateTime_tryFromString(s_1)
|
|
2038
|
+
|
|
2039
|
+
date_published: Any = default_arg(bind(_arrow3756, investigation.PublicReleaseDate), now())
|
|
2040
|
+
def f(p: Publication, investigation: Any=investigation) -> LDNode:
|
|
2041
|
+
return ScholarlyArticleConversion_composeScholarlyArticle_D324A6D(p)
|
|
2042
|
+
|
|
2043
|
+
publications: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f, investigation.Publications))
|
|
2044
|
+
def f_1(c: Person, investigation: Any=investigation) -> LDNode:
|
|
2045
|
+
return PersonConversion_composePerson_Z64D846DC(c)
|
|
2046
|
+
|
|
2047
|
+
creators: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f_1, investigation.Contacts))
|
|
2048
|
+
def f_2(c_1: Comment, investigation: Any=investigation) -> LDNode:
|
|
2049
|
+
return BaseTypes_composeComment_Z13201A7E(c_1)
|
|
2050
|
+
|
|
2051
|
+
comments: Array[LDNode] | None = Option_fromSeq(ResizeArray_map(f_2, investigation.Comments))
|
|
2052
|
+
def _arrow3757(__unit: None=None, investigation: Any=investigation) -> Array[LDNode]:
|
|
2053
|
+
b: Array[LDNode] = ResizeArray_map(AssayConversion_composeAssay_1501C0F8, investigation.Assays)
|
|
2054
|
+
return ResizeArray_append(ResizeArray_map(StudyConversion_composeStudy_1680536E, investigation.Studies), b)
|
|
2055
|
+
|
|
2056
|
+
has_parts: Array[LDNode] | None = Option_fromSeq(_arrow3757())
|
|
2057
|
+
mentions: Array[LDNode] | None = Option_fromSeq([])
|
|
2058
|
+
return LDDataset.create_investigation(investigation.Identifier, name, None, creators, date_created, date_published, None, investigation.Description, has_parts, publications, comments, mentions)
|
|
2059
|
+
|
|
2060
|
+
|
|
2061
|
+
def InvestigationConversion_decomposeInvestigation_Z6839B9E8(investigation: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcInvestigation:
|
|
2062
|
+
title: str | None
|
|
2063
|
+
match_value: str | None = LDDataset.try_get_name_as_string(investigation, context)
|
|
2064
|
+
title = LDDataset.try_get_headline_as_string(investigation, context) if (match_value is None) else match_value
|
|
2065
|
+
def _arrow3758(d: Any, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> str:
|
|
2066
|
+
return DateTime_toString(d)
|
|
2067
|
+
|
|
2068
|
+
date_created: str | None = map(_arrow3758, LDDataset.try_get_date_created_as_date_time(investigation, context))
|
|
2069
|
+
def _arrow3759(d_1: Any, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> str:
|
|
2070
|
+
return DateTime_toString(d_1)
|
|
2071
|
+
|
|
2072
|
+
date_published: str | None = map(_arrow3759, LDDataset.try_get_date_published_as_date_time(investigation, context))
|
|
2073
|
+
def f(p: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> Publication:
|
|
2074
|
+
return ScholarlyArticleConversion_decomposeScholarlyArticle_Z6839B9E8(p, graph, context)
|
|
2075
|
+
|
|
2076
|
+
publications: Array[Publication] = ResizeArray_map(f, LDDataset.get_citations(investigation, graph, context))
|
|
2077
|
+
def f_1(c: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> Person:
|
|
2078
|
+
return PersonConversion_decomposePerson_Z6839B9E8(c, graph, context)
|
|
2079
|
+
|
|
2080
|
+
creators: Array[Person] = ResizeArray_map(f_1, LDDataset.get_creators(investigation, graph, context))
|
|
2081
|
+
datasets: Array[LDNode] = LDDataset.get_has_parts_as_dataset(investigation, graph, context)
|
|
2082
|
+
def f_3(d_3: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> ArcStudy:
|
|
2083
|
+
return StudyConversion_decomposeStudy_Z6839B9E8(d_3, graph, context)
|
|
2084
|
+
|
|
2085
|
+
def f_2(d_2: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> bool:
|
|
2086
|
+
return LDDataset.validate_study(d_2, context)
|
|
2087
|
+
|
|
2088
|
+
studies: Array[ArcStudy] = ResizeArray_map(f_3, ResizeArray_filter(f_2, datasets))
|
|
2089
|
+
def f_5(d_5: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> ArcAssay:
|
|
2090
|
+
return AssayConversion_decomposeAssay_Z6839B9E8(d_5, graph, context)
|
|
2091
|
+
|
|
2092
|
+
def f_4(d_4: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> bool:
|
|
2093
|
+
return LDDataset.validate_assay(d_4, context)
|
|
2094
|
+
|
|
2095
|
+
assays: Array[ArcAssay] = ResizeArray_map(f_5, ResizeArray_filter(f_4, datasets))
|
|
2096
|
+
def f_6(c_1: LDNode, investigation: Any=investigation, graph: Any=graph, context: Any=context) -> Comment:
|
|
2097
|
+
return BaseTypes_decomposeComment_Z2F770004(c_1, context)
|
|
2098
|
+
|
|
2099
|
+
comments: Array[Comment] = ResizeArray_map(f_6, LDDataset.get_comments(investigation, graph, context))
|
|
2100
|
+
return ArcInvestigation.create(LDDataset.get_identifier_as_string(investigation, context), title, LDDataset.try_get_description_as_string(investigation, context), date_created, date_published, None, publications, creators, assays, studies, None, None, None, comments)
|
|
2101
|
+
|
|
2102
|
+
|
|
2103
|
+
def ARCtrl_ArcAssay__ArcAssay_ToROCrateAssay(this: ArcAssay) -> LDNode:
|
|
2104
|
+
return AssayConversion_composeAssay_1501C0F8(this)
|
|
2105
|
+
|
|
2106
|
+
|
|
2107
|
+
def ARCtrl_ArcAssay__ArcAssay_fromROCrateAssay_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcAssay:
|
|
2108
|
+
return AssayConversion_decomposeAssay_Z6839B9E8(a, graph, context)
|
|
2109
|
+
|
|
2110
|
+
|
|
2111
|
+
def ARCtrl_ArcStudy__ArcStudy_ToROCrateStudy(this: ArcStudy) -> LDNode:
|
|
2112
|
+
return StudyConversion_composeStudy_1680536E(this)
|
|
2113
|
+
|
|
2114
|
+
|
|
2115
|
+
def ARCtrl_ArcStudy__ArcStudy_fromROCrateStudy_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcStudy:
|
|
2116
|
+
return StudyConversion_decomposeStudy_Z6839B9E8(a, graph, context)
|
|
2117
|
+
|
|
2118
|
+
|
|
2119
|
+
def ARCtrl_ArcInvestigation__ArcInvestigation_ToROCrateInvestigation(this: ArcInvestigation) -> LDNode:
|
|
2120
|
+
return InvestigationConversion_composeInvestigation_Z720BD3FF(this)
|
|
2121
|
+
|
|
2122
|
+
|
|
2123
|
+
def ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcInvestigation:
|
|
2124
|
+
return InvestigationConversion_decomposeInvestigation_Z6839B9E8(a, graph, context)
|
|
2125
|
+
|
|
2126
|
+
|
|
2127
|
+
def _expr3760() -> TypeInfo:
|
|
2128
|
+
return class_type("ARCtrl.Conversion.TypeExtensions.Conversion", None, TypeExtensions_Conversion)
|
|
2129
|
+
|
|
2130
|
+
|
|
2131
|
+
class TypeExtensions_Conversion:
|
|
2132
|
+
@staticmethod
|
|
2133
|
+
def arc_assay_to_dataset(a: ArcAssay) -> LDNode:
|
|
2134
|
+
return ARCtrl_ArcAssay__ArcAssay_ToROCrateAssay(a)
|
|
2135
|
+
|
|
2136
|
+
@staticmethod
|
|
2137
|
+
def dataset_to_arc_assay(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcAssay:
|
|
2138
|
+
return ARCtrl_ArcAssay__ArcAssay_fromROCrateAssay_Static_Z6839B9E8(a, graph, context)
|
|
2139
|
+
|
|
2140
|
+
@staticmethod
|
|
2141
|
+
def arc_study_to_dataset(a: ArcStudy) -> LDNode:
|
|
2142
|
+
return ARCtrl_ArcStudy__ArcStudy_ToROCrateStudy(a)
|
|
2143
|
+
|
|
2144
|
+
@staticmethod
|
|
2145
|
+
def dataset_to_arc_study(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcStudy:
|
|
2146
|
+
return ARCtrl_ArcStudy__ArcStudy_fromROCrateStudy_Static_Z6839B9E8(a, graph, context)
|
|
2147
|
+
|
|
2148
|
+
@staticmethod
|
|
2149
|
+
def arc_investigation_to_dataset(a: ArcInvestigation) -> LDNode:
|
|
2150
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_ToROCrateInvestigation(a)
|
|
2151
|
+
|
|
2152
|
+
@staticmethod
|
|
2153
|
+
def dataset_to_arc_investigation(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcInvestigation:
|
|
2154
|
+
return ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8(a, graph, context)
|
|
2155
|
+
|
|
2156
|
+
|
|
2157
|
+
TypeExtensions_Conversion_reflection = _expr3760
|
|
2158
|
+
|
|
2159
|
+
def ARCtrl_ROCrate_Dataset__Dataset_toArcAssay_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcAssay:
|
|
2160
|
+
return AssayConversion_decomposeAssay_Z6839B9E8(a, graph, context)
|
|
2161
|
+
|
|
2162
|
+
|
|
2163
|
+
def ARCtrl_ROCrate_Dataset__Dataset_fromArcAssay_Static_1501C0F8(a: ArcAssay) -> LDNode:
|
|
2164
|
+
return AssayConversion_composeAssay_1501C0F8(a)
|
|
2165
|
+
|
|
2166
|
+
|
|
2167
|
+
def ARCtrl_ROCrate_Dataset__Dataset_toArcStudy_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcStudy:
|
|
2168
|
+
return StudyConversion_decomposeStudy_Z6839B9E8(a, graph, context)
|
|
2169
|
+
|
|
2170
|
+
|
|
2171
|
+
def ARCtrl_ROCrate_Dataset__Dataset_fromArcStudy_Static_1680536E(a: ArcStudy) -> LDNode:
|
|
2172
|
+
return StudyConversion_composeStudy_1680536E(a)
|
|
2173
|
+
|
|
2174
|
+
|
|
2175
|
+
def ARCtrl_ROCrate_Dataset__Dataset_toArcInvestigation_Static_Z6839B9E8(a: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> ArcInvestigation:
|
|
2176
|
+
return InvestigationConversion_decomposeInvestigation_Z6839B9E8(a, graph, context)
|
|
2177
|
+
|
|
2178
|
+
|
|
2179
|
+
def ARCtrl_ROCrate_Dataset__Dataset_fromArcInvestigation_Static_Z720BD3FF(a: ArcInvestigation) -> LDNode:
|
|
2180
|
+
return InvestigationConversion_composeInvestigation_Z720BD3FF(a)
|
|
2181
|
+
|
|
2182
|
+
|
|
2183
|
+
__all__ = ["DateTime_tryFromString", "DateTime_toString", "ColumnIndex_tryInt", "ColumnIndex_orderName", "ColumnIndex_tryGetIndex", "ColumnIndex_setIndex", "ARCtrl_ROCrate_LDNode__LDNode_GetColumnIndex", "ARCtrl_ROCrate_LDNode__LDNode_TryGetColumnIndex", "ARCtrl_ROCrate_LDNode__LDNode_SetColumnIndex_Z524259A4", "BaseTypes_reflection", "BaseTypes_composeComment_Z13201A7E", "BaseTypes_decomposeComment_Z2F770004", "BaseTypes_ontologyTermFromNameAndID_40457300", "BaseTypes_tryOntologyTermFromNameAndID_40457300", "BaseTypes_composeDefinedTerm_ZDED3A0F", "BaseTypes_decomposeDefinedTerm_Z2F770004", "BaseTypes_composePropertyValueFromOA_ZDED3A0F", "BaseTypes_decomposePropertyValueToOA_Z2F770004", "BaseTypes_valuesOfCell_Z436420FE", "BaseTypes_termOfHeader_6CAF647B", "BaseTypes_composeComponent", "BaseTypes_composeParameterValue", "BaseTypes_composeFactorValue", "BaseTypes_composeCharacteristicValue", "BaseTypes_composeFreetextMaterialName", "BaseTypes_composeFile_3A03A101", "BaseTypes_decomposeFile_Z2F770004", "BaseTypes_composeFragmentDescriptor_Z4C0BEF62", "BaseTypes_decomposeFragmentDescriptor_Z6839B9E8", "BaseTypes_composeProcessInput", "BaseTypes_composeProcessOutput", "BaseTypes_headerOntologyOfPropertyValue_Z2F770004", "BaseTypes_cellOfPropertyValue_Z2F770004", "BaseTypes_decomposeComponent_Z2F770004", "BaseTypes_decomposeParameterValue_Z2F770004", "BaseTypes_decomposeFactorValue_Z2F770004", "BaseTypes_decomposeCharacteristicValue_Z2F770004", "BaseTypes_decomposeProcessInput_Z2F770004", "BaseTypes_decomposeProcessOutput_Z2F770004", "BaseTypes_composeTechnologyPlatform_ZDED3A0F", "BaseTypes_decomposeTechnologyPlatform_Z721C83C5", "ProcessConversion_reflection", "ProcessConversion_tryGetProtocolType_Z6839B9E8", "ProcessConversion_composeProcessName", "ProcessConversion_decomposeProcessName_Z721C83C5", "ProcessConversion_tryComponentGetter", "ProcessConversion_tryParameterGetter", "ProcessConversion_tryFactorGetter", "ProcessConversion_tryCharacteristicGetter", "ProcessConversion_tryGetProtocolTypeGetter", "ProcessConversion_tryGetProtocolREFGetter", "ProcessConversion_tryGetProtocolDescriptionGetter", "ProcessConversion_tryGetProtocolURIGetter", "ProcessConversion_tryGetProtocolVersionGetter", "ProcessConversion_tryGetInputGetter", "ProcessConversion_tryGetOutputGetter", "ProcessConversion_tryGetCommentGetter", "ProcessConversion_tryGetPerformerGetter", "ProcessConversion_getProcessGetter", "ProcessConversion_groupProcesses_Z27F0B586", "ProcessConversion_processToRows_Z6839B9E8", "CompositeRow_toProtocol", "ARCtrl_ArcTable__ArcTable_fromProtocol_Static_Z6839B9E8", "ARCtrl_ArcTable__ArcTable_GetProtocols", "ARCtrl_ArcTable__ArcTable_GetProcesses", "ARCtrl_ArcTable__ArcTable_fromProcesses_Static_Z3575FB5F", "ARCtrl_ArcTables__ArcTables_GetProcesses", "ARCtrl_ArcTables__ArcTables_fromProcesses_Static_Z27F0B586", "DatamapConversion_reflection", "DatamapConversion_composeFragmentDescriptors_Z8923FA3", "DatamapConversion_decomposeFragmentDescriptors_Z6E59645F", "PersonConversion_reflection", "PersonConversion_get_orcidKey", "PersonConversion_composeAffiliation_Z721C83C5", "PersonConversion_decomposeAffiliation_Z2F770004", "PersonConversion_composeAddress_Z721C83C5", "PersonConversion_decomposeAddress_4E60E31B", "PersonConversion_composePerson_Z64D846DC", "PersonConversion_decomposePerson_Z6839B9E8", "ScholarlyArticleConversion_reflection", "ScholarlyArticleConversion_composeAuthor_Z721C83C5", "ScholarlyArticleConversion_splitAuthors_Z721C83C5", "ScholarlyArticleConversion_composeAuthors_Z721C83C5", "ScholarlyArticleConversion_decomposeAuthor_Z2F770004", "ScholarlyArticleConversion_decomposeAuthors_1AAAE9A5", "ScholarlyArticleConversion_composeScholarlyArticle_D324A6D", "ScholarlyArticleConversion_decomposeScholarlyArticle_Z6839B9E8", "AssayConversion_reflection", "AssayConversion_getDataFilesFromProcesses_6BABD1B0", "AssayConversion_composeAssay_1501C0F8", "AssayConversion_decomposeAssay_Z6839B9E8", "StudyConversion_reflection", "StudyConversion_composeStudy_1680536E", "StudyConversion_decomposeStudy_Z6839B9E8", "InvestigationConversion_reflection", "InvestigationConversion_composeInvestigation_Z720BD3FF", "InvestigationConversion_decomposeInvestigation_Z6839B9E8", "ARCtrl_ArcAssay__ArcAssay_ToROCrateAssay", "ARCtrl_ArcAssay__ArcAssay_fromROCrateAssay_Static_Z6839B9E8", "ARCtrl_ArcStudy__ArcStudy_ToROCrateStudy", "ARCtrl_ArcStudy__ArcStudy_fromROCrateStudy_Static_Z6839B9E8", "ARCtrl_ArcInvestigation__ArcInvestigation_ToROCrateInvestigation", "ARCtrl_ArcInvestigation__ArcInvestigation_fromROCrateInvestigation_Static_Z6839B9E8", "TypeExtensions_Conversion_reflection", "ARCtrl_ROCrate_Dataset__Dataset_toArcAssay_Static_Z6839B9E8", "ARCtrl_ROCrate_Dataset__Dataset_fromArcAssay_Static_1501C0F8", "ARCtrl_ROCrate_Dataset__Dataset_toArcStudy_Static_Z6839B9E8", "ARCtrl_ROCrate_Dataset__Dataset_fromArcStudy_Static_1680536E", "ARCtrl_ROCrate_Dataset__Dataset_toArcInvestigation_Static_Z6839B9E8", "ARCtrl_ROCrate_Dataset__Dataset_fromArcInvestigation_Static_Z720BD3FF"]
|
|
2184
|
+
|