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.
Files changed (456) hide show
  1. arctrl/__init__.py +18 -0
  2. arctrl/py/CWL/__init__.py +0 -0
  3. arctrl/py/CWL/cwltypes.py +150 -0
  4. arctrl/py/CWL/decode.py +973 -0
  5. arctrl/py/CWL/encode.py +1 -0
  6. arctrl/py/CWL/inputs.py +88 -0
  7. arctrl/py/CWL/outputs.py +85 -0
  8. arctrl/py/CWL/requirements.py +77 -0
  9. arctrl/py/CWL/tool_description.py +103 -0
  10. arctrl/py/CWL/workflow_description.py +104 -0
  11. arctrl/py/CWL/workflow_steps.py +113 -0
  12. arctrl/py/Contract/__init__.py +0 -0
  13. arctrl/py/Contract/arc.py +60 -0
  14. arctrl/py/Contract/arc_assay.py +125 -0
  15. arctrl/py/Contract/arc_investigation.py +88 -0
  16. arctrl/py/Contract/arc_run.py +125 -0
  17. arctrl/py/Contract/arc_study.py +126 -0
  18. arctrl/py/Contract/arc_workflow.py +125 -0
  19. arctrl/py/Contract/contract.py +153 -0
  20. arctrl/py/Contract/datamap.py +372 -0
  21. arctrl/py/Contract/git.py +118 -0
  22. arctrl/py/Contract/validation_packages_config.py +107 -0
  23. arctrl/py/ContractIO/__init__.py +0 -0
  24. arctrl/py/ContractIO/contract_io.py +344 -0
  25. arctrl/py/ContractIO/file_system_helper.py +264 -0
  26. arctrl/py/Core/Helper/__init__.py +0 -0
  27. arctrl/py/Core/Helper/collections_.py +438 -0
  28. arctrl/py/Core/Helper/date_time.py +26 -0
  29. arctrl/py/Core/Helper/hash_codes.py +60 -0
  30. arctrl/py/Core/Helper/identifier.py +248 -0
  31. arctrl/py/Core/Helper/orcid.py +42 -0
  32. arctrl/py/Core/Helper/printer.py +13 -0
  33. arctrl/py/Core/Helper/regex.py +554 -0
  34. arctrl/py/Core/Helper/sem_ver.py +71 -0
  35. arctrl/py/Core/Helper/url.py +148 -0
  36. arctrl/py/Core/Process/__init__.py +0 -0
  37. arctrl/py/Core/Process/column_index.py +280 -0
  38. arctrl/py/Core/Process/component.py +200 -0
  39. arctrl/py/Core/Process/factor.py +151 -0
  40. arctrl/py/Core/Process/factor_value.py +182 -0
  41. arctrl/py/Core/Process/material.py +74 -0
  42. arctrl/py/Core/Process/material_attribute.py +95 -0
  43. arctrl/py/Core/Process/material_attribute_value.py +184 -0
  44. arctrl/py/Core/Process/material_type.py +45 -0
  45. arctrl/py/Core/Process/process.py +477 -0
  46. arctrl/py/Core/Process/process_input.py +265 -0
  47. arctrl/py/Core/Process/process_output.py +235 -0
  48. arctrl/py/Core/Process/process_parameter_value.py +200 -0
  49. arctrl/py/Core/Process/process_sequence.py +435 -0
  50. arctrl/py/Core/Process/protocol.py +175 -0
  51. arctrl/py/Core/Process/protocol_parameter.py +98 -0
  52. arctrl/py/Core/Process/sample.py +82 -0
  53. arctrl/py/Core/Process/source.py +62 -0
  54. arctrl/py/Core/Table/__init__.py +0 -0
  55. arctrl/py/Core/Table/arc_table.py +1264 -0
  56. arctrl/py/Core/Table/arc_table_aux.py +575 -0
  57. arctrl/py/Core/Table/arc_tables.py +591 -0
  58. arctrl/py/Core/Table/composite_cell.py +319 -0
  59. arctrl/py/Core/Table/composite_column.py +73 -0
  60. arctrl/py/Core/Table/composite_header.py +739 -0
  61. arctrl/py/Core/__init__.py +0 -0
  62. arctrl/py/Core/arc_types.py +5064 -0
  63. arctrl/py/Core/comment.py +128 -0
  64. arctrl/py/Core/comment_list.py +127 -0
  65. arctrl/py/Core/conversion.py +1313 -0
  66. arctrl/py/Core/data.py +245 -0
  67. arctrl/py/Core/data_context.py +157 -0
  68. arctrl/py/Core/data_file.py +112 -0
  69. arctrl/py/Core/data_map.py +225 -0
  70. arctrl/py/Core/identifier_setters.py +31 -0
  71. arctrl/py/Core/iproperty_value.py +36 -0
  72. arctrl/py/Core/ontology_annotation.py +299 -0
  73. arctrl/py/Core/ontology_source_reference.py +114 -0
  74. arctrl/py/Core/person.py +259 -0
  75. arctrl/py/Core/publication.py +161 -0
  76. arctrl/py/Core/template.py +231 -0
  77. arctrl/py/Core/templates.py +148 -0
  78. arctrl/py/Core/uri.py +11 -0
  79. arctrl/py/Core/value.py +188 -0
  80. arctrl/py/FileSystem/__init__.py +0 -0
  81. arctrl/py/FileSystem/commit.py +21 -0
  82. arctrl/py/FileSystem/default_gitattributes.py +5 -0
  83. arctrl/py/FileSystem/default_gitignore.py +5 -0
  84. arctrl/py/FileSystem/file_system.py +58 -0
  85. arctrl/py/FileSystem/file_system_tree.py +426 -0
  86. arctrl/py/FileSystem/path.py +64 -0
  87. arctrl/py/Json/DataMap/__init__.py +0 -0
  88. arctrl/py/Json/DataMap/data_context.py +101 -0
  89. arctrl/py/Json/DataMap/data_map.py +53 -0
  90. arctrl/py/Json/Process/__init__.py +0 -0
  91. arctrl/py/Json/Process/assay_materials.py +46 -0
  92. arctrl/py/Json/Process/component.py +79 -0
  93. arctrl/py/Json/Process/factor.py +107 -0
  94. arctrl/py/Json/Process/factor_value.py +101 -0
  95. arctrl/py/Json/Process/material.py +226 -0
  96. arctrl/py/Json/Process/material_attribute.py +79 -0
  97. arctrl/py/Json/Process/material_attribute_value.py +101 -0
  98. arctrl/py/Json/Process/material_type.py +53 -0
  99. arctrl/py/Json/Process/process.py +296 -0
  100. arctrl/py/Json/Process/process_input.py +83 -0
  101. arctrl/py/Json/Process/process_output.py +67 -0
  102. arctrl/py/Json/Process/process_parameter_value.py +81 -0
  103. arctrl/py/Json/Process/protocol.py +354 -0
  104. arctrl/py/Json/Process/protocol_parameter.py +79 -0
  105. arctrl/py/Json/Process/sample.py +277 -0
  106. arctrl/py/Json/Process/source.py +214 -0
  107. arctrl/py/Json/Process/study_materials.py +52 -0
  108. arctrl/py/Json/Process/value.py +56 -0
  109. arctrl/py/Json/ROCrate/__init__.py +0 -0
  110. arctrl/py/Json/ROCrate/ldcontext.py +133 -0
  111. arctrl/py/Json/ROCrate/ldgraph.py +111 -0
  112. arctrl/py/Json/ROCrate/ldnode.py +290 -0
  113. arctrl/py/Json/ROCrate/ldref.py +44 -0
  114. arctrl/py/Json/ROCrate/ldvalue.py +102 -0
  115. arctrl/py/Json/Table/__init__.py +0 -0
  116. arctrl/py/Json/Table/arc_table.py +393 -0
  117. arctrl/py/Json/Table/cell_table.py +83 -0
  118. arctrl/py/Json/Table/composite_cell.py +136 -0
  119. arctrl/py/Json/Table/composite_header.py +67 -0
  120. arctrl/py/Json/Table/iotype.py +24 -0
  121. arctrl/py/Json/Table/oatable.py +82 -0
  122. arctrl/py/Json/Table/templates.py +281 -0
  123. arctrl/py/Json/__init__.py +0 -0
  124. arctrl/py/Json/assay.py +600 -0
  125. arctrl/py/Json/comment.py +206 -0
  126. arctrl/py/Json/context/rocrate/__init__.py +0 -0
  127. arctrl/py/Json/context/rocrate/isa_assay_context.py +101 -0
  128. arctrl/py/Json/context/rocrate/isa_comment_context.py +60 -0
  129. arctrl/py/Json/context/rocrate/isa_component_context.py +77 -0
  130. arctrl/py/Json/context/rocrate/isa_data_context.py +74 -0
  131. arctrl/py/Json/context/rocrate/isa_factor_context.py +74 -0
  132. arctrl/py/Json/context/rocrate/isa_factor_value_context.py +84 -0
  133. arctrl/py/Json/context/rocrate/isa_investigation_context.py +110 -0
  134. arctrl/py/Json/context/rocrate/isa_material_attribute_context.py +64 -0
  135. arctrl/py/Json/context/rocrate/isa_material_attribute_value_context.py +80 -0
  136. arctrl/py/Json/context/rocrate/isa_material_context.py +71 -0
  137. arctrl/py/Json/context/rocrate/isa_ontology_annotation_context.py +68 -0
  138. arctrl/py/Json/context/rocrate/isa_ontology_source_reference_context.py +75 -0
  139. arctrl/py/Json/context/rocrate/isa_organization_context.py +55 -0
  140. arctrl/py/Json/context/rocrate/isa_person_context.py +131 -0
  141. arctrl/py/Json/context/rocrate/isa_process_context.py +94 -0
  142. arctrl/py/Json/context/rocrate/isa_process_parameter_value_context.py +80 -0
  143. arctrl/py/Json/context/rocrate/isa_protocol_context.py +97 -0
  144. arctrl/py/Json/context/rocrate/isa_protocol_parameter_context.py +64 -0
  145. arctrl/py/Json/context/rocrate/isa_publication_context.py +78 -0
  146. arctrl/py/Json/context/rocrate/isa_sample_context.py +65 -0
  147. arctrl/py/Json/context/rocrate/isa_source_context.py +66 -0
  148. arctrl/py/Json/context/rocrate/isa_study_context.py +125 -0
  149. arctrl/py/Json/context/rocrate/property_value_context.py +73 -0
  150. arctrl/py/Json/context/rocrate/rocrate_context.py +81 -0
  151. arctrl/py/Json/converter_options.py +23 -0
  152. arctrl/py/Json/data.py +356 -0
  153. arctrl/py/Json/data_file.py +63 -0
  154. arctrl/py/Json/decode.py +155 -0
  155. arctrl/py/Json/encode.py +92 -0
  156. arctrl/py/Json/idtable.py +44 -0
  157. arctrl/py/Json/investigation.py +695 -0
  158. arctrl/py/Json/ontology_annotation.py +404 -0
  159. arctrl/py/Json/ontology_source_reference.py +255 -0
  160. arctrl/py/Json/person.py +658 -0
  161. arctrl/py/Json/property_value.py +359 -0
  162. arctrl/py/Json/publication.py +279 -0
  163. arctrl/py/Json/string_table.py +76 -0
  164. arctrl/py/Json/study.py +793 -0
  165. arctrl/py/JsonIO/DataMap/__init__.py +0 -0
  166. arctrl/py/JsonIO/DataMap/data_map.py +53 -0
  167. arctrl/py/JsonIO/Process/__init__.py +0 -0
  168. arctrl/py/JsonIO/Process/component.py +60 -0
  169. arctrl/py/JsonIO/Process/factor.py +36 -0
  170. arctrl/py/JsonIO/Process/factor_value.py +38 -0
  171. arctrl/py/JsonIO/Process/material.py +60 -0
  172. arctrl/py/JsonIO/Process/material_attribute.py +38 -0
  173. arctrl/py/JsonIO/Process/material_attribute_value.py +60 -0
  174. arctrl/py/JsonIO/Process/material_type.py +36 -0
  175. arctrl/py/JsonIO/Process/process.py +60 -0
  176. arctrl/py/JsonIO/Process/process_input.py +38 -0
  177. arctrl/py/JsonIO/Process/process_output.py +60 -0
  178. arctrl/py/JsonIO/Process/process_parameter_value.py +60 -0
  179. arctrl/py/JsonIO/Process/process_sequence.py +71 -0
  180. arctrl/py/JsonIO/Process/protocol.py +60 -0
  181. arctrl/py/JsonIO/Process/protocol_parameter.py +36 -0
  182. arctrl/py/JsonIO/Process/sample.py +60 -0
  183. arctrl/py/JsonIO/Process/source.py +60 -0
  184. arctrl/py/JsonIO/Process/study_materials.py +52 -0
  185. arctrl/py/JsonIO/Process/value.py +32 -0
  186. arctrl/py/JsonIO/Table/__init__.py +0 -0
  187. arctrl/py/JsonIO/Table/arc_table.py +121 -0
  188. arctrl/py/JsonIO/Table/composite_cell.py +36 -0
  189. arctrl/py/JsonIO/Table/composite_header.py +36 -0
  190. arctrl/py/JsonIO/Table/compression.py +85 -0
  191. arctrl/py/JsonIO/Table/iotype.py +36 -0
  192. arctrl/py/JsonIO/Table/templates.py +113 -0
  193. arctrl/py/JsonIO/__init__.py +0 -0
  194. arctrl/py/JsonIO/assay.py +113 -0
  195. arctrl/py/JsonIO/comment.py +80 -0
  196. arctrl/py/JsonIO/data.py +60 -0
  197. arctrl/py/JsonIO/data_file.py +58 -0
  198. arctrl/py/JsonIO/decode.py +9 -0
  199. arctrl/py/JsonIO/encode.py +1 -0
  200. arctrl/py/JsonIO/investigation.py +113 -0
  201. arctrl/py/JsonIO/ldobject.py +106 -0
  202. arctrl/py/JsonIO/ontology_annotation.py +80 -0
  203. arctrl/py/JsonIO/ontology_source_reference.py +80 -0
  204. arctrl/py/JsonIO/person.py +82 -0
  205. arctrl/py/JsonIO/publication.py +82 -0
  206. arctrl/py/JsonIO/study.py +114 -0
  207. arctrl/py/ROCrate/Generic/__init__.py +0 -0
  208. arctrl/py/ROCrate/Generic/comment.py +131 -0
  209. arctrl/py/ROCrate/Generic/dataset.py +817 -0
  210. arctrl/py/ROCrate/Generic/defined_term.py +131 -0
  211. arctrl/py/ROCrate/Generic/file.py +237 -0
  212. arctrl/py/ROCrate/Generic/lab_process.py +324 -0
  213. arctrl/py/ROCrate/Generic/lab_protocol.py +338 -0
  214. arctrl/py/ROCrate/Generic/organization.py +83 -0
  215. arctrl/py/ROCrate/Generic/person.py +484 -0
  216. arctrl/py/ROCrate/Generic/postal_address.py +195 -0
  217. arctrl/py/ROCrate/Generic/property_value.py +696 -0
  218. arctrl/py/ROCrate/Generic/sample.py +202 -0
  219. arctrl/py/ROCrate/Generic/scholarly_article.py +229 -0
  220. arctrl/py/ROCrate/ISAProfile/__init__.py +0 -0
  221. arctrl/py/ROCrate/ISAProfile/assay.py +70 -0
  222. arctrl/py/ROCrate/ISAProfile/data.py +65 -0
  223. arctrl/py/ROCrate/ISAProfile/dataset.py +24 -0
  224. arctrl/py/ROCrate/ISAProfile/investigation.py +73 -0
  225. arctrl/py/ROCrate/ISAProfile/lab_process.py +162 -0
  226. arctrl/py/ROCrate/ISAProfile/lab_protocol.py +37 -0
  227. arctrl/py/ROCrate/ISAProfile/person.py +72 -0
  228. arctrl/py/ROCrate/ISAProfile/property_value.py +98 -0
  229. arctrl/py/ROCrate/ISAProfile/sample.py +64 -0
  230. arctrl/py/ROCrate/ISAProfile/scholarly_article.py +98 -0
  231. arctrl/py/ROCrate/ISAProfile/study.py +74 -0
  232. arctrl/py/ROCrate/__init__.py +0 -0
  233. arctrl/py/ROCrate/arc_rocrate_metadata.py +39 -0
  234. arctrl/py/ROCrate/dyn_obj_extensions.py +1 -0
  235. arctrl/py/ROCrate/helper.py +8 -0
  236. arctrl/py/ROCrate/ldcontext.py +362 -0
  237. arctrl/py/ROCrate/ldobject.py +1247 -0
  238. arctrl/py/ROCrate/rocrate_context.py +51 -0
  239. arctrl/py/Spreadsheet/AnnotationTable/__init__.py +0 -0
  240. arctrl/py/Spreadsheet/AnnotationTable/arc_table.py +193 -0
  241. arctrl/py/Spreadsheet/AnnotationTable/composite_cell.py +78 -0
  242. arctrl/py/Spreadsheet/AnnotationTable/composite_column.py +210 -0
  243. arctrl/py/Spreadsheet/AnnotationTable/composite_header.py +623 -0
  244. arctrl/py/Spreadsheet/DataMapTable/__init__.py +0 -0
  245. arctrl/py/Spreadsheet/DataMapTable/data_map_column.py +114 -0
  246. arctrl/py/Spreadsheet/DataMapTable/data_map_header.py +618 -0
  247. arctrl/py/Spreadsheet/DataMapTable/data_map_table.py +119 -0
  248. arctrl/py/Spreadsheet/Metadata/__init__.py +0 -0
  249. arctrl/py/Spreadsheet/Metadata/assays.py +125 -0
  250. arctrl/py/Spreadsheet/Metadata/comment.py +77 -0
  251. arctrl/py/Spreadsheet/Metadata/contacts.py +134 -0
  252. arctrl/py/Spreadsheet/Metadata/conversions.py +190 -0
  253. arctrl/py/Spreadsheet/Metadata/design_descriptors.py +34 -0
  254. arctrl/py/Spreadsheet/Metadata/factors.py +107 -0
  255. arctrl/py/Spreadsheet/Metadata/ontology_annotation.py +88 -0
  256. arctrl/py/Spreadsheet/Metadata/ontology_source_reference.py +96 -0
  257. arctrl/py/Spreadsheet/Metadata/protocols.py +146 -0
  258. arctrl/py/Spreadsheet/Metadata/publication.py +122 -0
  259. arctrl/py/Spreadsheet/Metadata/run.py +122 -0
  260. arctrl/py/Spreadsheet/Metadata/sparse_table.py +508 -0
  261. arctrl/py/Spreadsheet/Metadata/study.py +312 -0
  262. arctrl/py/Spreadsheet/Metadata/workflow.py +151 -0
  263. arctrl/py/Spreadsheet/__init__.py +0 -0
  264. arctrl/py/Spreadsheet/arc_assay.py +233 -0
  265. arctrl/py/Spreadsheet/arc_investigation.py +418 -0
  266. arctrl/py/Spreadsheet/arc_run.py +190 -0
  267. arctrl/py/Spreadsheet/arc_study.py +144 -0
  268. arctrl/py/Spreadsheet/arc_workflow.py +176 -0
  269. arctrl/py/Spreadsheet/assembly_info.py +1 -0
  270. arctrl/py/Spreadsheet/collection_aux.py +167 -0
  271. arctrl/py/Spreadsheet/data_map.py +44 -0
  272. arctrl/py/Spreadsheet/template.py +460 -0
  273. arctrl/py/ValidationPackages/__init__.py +0 -0
  274. arctrl/py/ValidationPackages/validation_package.py +82 -0
  275. arctrl/py/ValidationPackages/validation_packages_config.py +132 -0
  276. arctrl/py/WebRequest/__init__.py +0 -0
  277. arctrl/py/WebRequest/web_request.py +9 -0
  278. arctrl/py/WebRequest/web_request_py.py +135 -0
  279. arctrl/py/Yaml/__init__.py +0 -0
  280. arctrl/py/Yaml/decode.py +1 -0
  281. arctrl/py/Yaml/encode.py +10 -0
  282. arctrl/py/Yaml/validation_package.py +77 -0
  283. arctrl/py/Yaml/validation_packages_config.py +86 -0
  284. arctrl/py/__init__.py +0 -0
  285. arctrl/py/arc.py +1400 -0
  286. arctrl/py/column_index.py +280 -0
  287. arctrl/py/conversion.py +2184 -0
  288. arctrl/py/cross_async.py +76 -0
  289. arctrl/py/fable_modules/dynamic_obj/__init__.py +0 -0
  290. arctrl/py/fable_modules/dynamic_obj/dyn_obj.py +136 -0
  291. arctrl/py/fable_modules/dynamic_obj/dynamic_obj.py +415 -0
  292. arctrl/py/fable_modules/dynamic_obj/fable_js.py +1 -0
  293. arctrl/py/fable_modules/dynamic_obj/fable_py.py +288 -0
  294. arctrl/py/fable_modules/dynamic_obj/hash_codes.py +82 -0
  295. arctrl/py/fable_modules/dynamic_obj/property_helper.py +25 -0
  296. arctrl/py/fable_modules/dynamic_obj/reflection_utils.py +87 -0
  297. arctrl/py/fable_modules/fable_library/__init__.py +0 -0
  298. arctrl/py/fable_modules/fable_library/array_.py +1528 -0
  299. arctrl/py/fable_modules/fable_library/async_.py +377 -0
  300. arctrl/py/fable_modules/fable_library/async_builder.py +379 -0
  301. arctrl/py/fable_modules/fable_library/big_int.py +330 -0
  302. arctrl/py/fable_modules/fable_library/bit_converter.py +131 -0
  303. arctrl/py/fable_modules/fable_library/boolean.py +26 -0
  304. arctrl/py/fable_modules/fable_library/char.py +237 -0
  305. arctrl/py/fable_modules/fable_library/choice.py +212 -0
  306. arctrl/py/fable_modules/fable_library/date.py +779 -0
  307. arctrl/py/fable_modules/fable_library/date_offset.py +79 -0
  308. arctrl/py/fable_modules/fable_library/decimal_.py +190 -0
  309. arctrl/py/fable_modules/fable_library/diagnostics.py +54 -0
  310. arctrl/py/fable_modules/fable_library/double.py +87 -0
  311. arctrl/py/fable_modules/fable_library/encoding.py +41 -0
  312. arctrl/py/fable_modules/fable_library/event.py +206 -0
  313. arctrl/py/fable_modules/fable_library/file.py +107 -0
  314. arctrl/py/fable_modules/fable_library/fsharp_collections.py +52 -0
  315. arctrl/py/fable_modules/fable_library/fsharp_core.py +123 -0
  316. arctrl/py/fable_modules/fable_library/global_.py +63 -0
  317. arctrl/py/fable_modules/fable_library/guid.py +41 -0
  318. arctrl/py/fable_modules/fable_library/int32.py +73 -0
  319. arctrl/py/fable_modules/fable_library/list.py +1788 -0
  320. arctrl/py/fable_modules/fable_library/long.py +240 -0
  321. arctrl/py/fable_modules/fable_library/mailbox_processor.py +179 -0
  322. arctrl/py/fable_modules/fable_library/map.py +1854 -0
  323. arctrl/py/fable_modules/fable_library/map_util.py +148 -0
  324. arctrl/py/fable_modules/fable_library/mutable_map.py +397 -0
  325. arctrl/py/fable_modules/fable_library/mutable_set.py +279 -0
  326. arctrl/py/fable_modules/fable_library/native.py +45 -0
  327. arctrl/py/fable_modules/fable_library/numeric.py +46 -0
  328. arctrl/py/fable_modules/fable_library/observable.py +222 -0
  329. arctrl/py/fable_modules/fable_library/option.py +128 -0
  330. arctrl/py/fable_modules/fable_library/path.py +62 -0
  331. arctrl/py/fable_modules/fable_library/range.py +117 -0
  332. arctrl/py/fable_modules/fable_library/reflection.py +463 -0
  333. arctrl/py/fable_modules/fable_library/reg_exp.py +137 -0
  334. arctrl/py/fable_modules/fable_library/resize_array.py +31 -0
  335. arctrl/py/fable_modules/fable_library/result.py +212 -0
  336. arctrl/py/fable_modules/fable_library/seq.py +1979 -0
  337. arctrl/py/fable_modules/fable_library/seq2.py +221 -0
  338. arctrl/py/fable_modules/fable_library/set.py +2414 -0
  339. arctrl/py/fable_modules/fable_library/singleton_local_time_zone.py +36 -0
  340. arctrl/py/fable_modules/fable_library/string_.py +573 -0
  341. arctrl/py/fable_modules/fable_library/system_collections_generic.py +462 -0
  342. arctrl/py/fable_modules/fable_library/system_text.py +237 -0
  343. arctrl/py/fable_modules/fable_library/task.py +116 -0
  344. arctrl/py/fable_modules/fable_library/task_builder.py +122 -0
  345. arctrl/py/fable_modules/fable_library/thread.py +5 -0
  346. arctrl/py/fable_modules/fable_library/time_span.py +283 -0
  347. arctrl/py/fable_modules/fable_library/timer.py +24 -0
  348. arctrl/py/fable_modules/fable_library/types.py +401 -0
  349. arctrl/py/fable_modules/fable_library/uri.py +109 -0
  350. arctrl/py/fable_modules/fable_library/util.py +2735 -0
  351. arctrl/py/fable_modules/fable_openpyxl/__init__.py +0 -0
  352. arctrl/py/fable_modules/fable_openpyxl/openpyxl.py +362 -0
  353. arctrl/py/fable_modules/fable_python/cognite-sdk/__init__.py +0 -0
  354. arctrl/py/fable_modules/fable_python/cognite-sdk/cognite_sdk.py +22 -0
  355. arctrl/py/fable_modules/fable_python/flask/__init__.py +0 -0
  356. arctrl/py/fable_modules/fable_python/flask/flask.py +34 -0
  357. arctrl/py/fable_modules/fable_python/jupyter/__init__.py +0 -0
  358. arctrl/py/fable_modules/fable_python/jupyter/ipy_widgets.py +47 -0
  359. arctrl/py/fable_modules/fable_python/jupyter/ipython.py +13 -0
  360. arctrl/py/fable_modules/fable_python/stdlib/__init__.py +0 -0
  361. arctrl/py/fable_modules/fable_python/stdlib/ast.py +1 -0
  362. arctrl/py/fable_modules/fable_python/stdlib/asyncio/__init__.py +0 -0
  363. arctrl/py/fable_modules/fable_python/stdlib/asyncio/events.py +17 -0
  364. arctrl/py/fable_modules/fable_python/stdlib/asyncio/futures.py +52 -0
  365. arctrl/py/fable_modules/fable_python/stdlib/asyncio/tasks.py +38 -0
  366. arctrl/py/fable_modules/fable_python/stdlib/base64_.py +1 -0
  367. arctrl/py/fable_modules/fable_python/stdlib/builtins_.py +38 -0
  368. arctrl/py/fable_modules/fable_python/stdlib/html.py +1 -0
  369. arctrl/py/fable_modules/fable_python/stdlib/json.py +1 -0
  370. arctrl/py/fable_modules/fable_python/stdlib/math_.py +1 -0
  371. arctrl/py/fable_modules/fable_python/stdlib/os_.py +1 -0
  372. arctrl/py/fable_modules/fable_python/stdlib/queue_.py +1 -0
  373. arctrl/py/fable_modules/fable_python/stdlib/string_.py +1 -0
  374. arctrl/py/fable_modules/fable_python/stdlib/sys_.py +30 -0
  375. arctrl/py/fable_modules/fable_python/stdlib/time_.py +1 -0
  376. arctrl/py/fable_modules/fable_python/stdlib/tk_inter.py +1 -0
  377. arctrl/py/fable_modules/fs_spreadsheet/Cells/__init__.py +0 -0
  378. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cell.py +338 -0
  379. arctrl/py/fable_modules/fs_spreadsheet/Cells/fs_cells_collection.py +469 -0
  380. arctrl/py/fable_modules/fs_spreadsheet/DSL/__init__.py +0 -0
  381. arctrl/py/fable_modules/fs_spreadsheet/DSL/cell_builder.py +214 -0
  382. arctrl/py/fable_modules/fs_spreadsheet/DSL/column_builder.py +139 -0
  383. arctrl/py/fable_modules/fs_spreadsheet/DSL/dsl.py +50 -0
  384. arctrl/py/fable_modules/fs_spreadsheet/DSL/expression.py +65 -0
  385. arctrl/py/fable_modules/fs_spreadsheet/DSL/operators.py +9 -0
  386. arctrl/py/fable_modules/fs_spreadsheet/DSL/row_builder.py +139 -0
  387. arctrl/py/fable_modules/fs_spreadsheet/DSL/sheet_builder.py +118 -0
  388. arctrl/py/fable_modules/fs_spreadsheet/DSL/table_builder.py +122 -0
  389. arctrl/py/fable_modules/fs_spreadsheet/DSL/transform.py +464 -0
  390. arctrl/py/fable_modules/fs_spreadsheet/DSL/types.py +314 -0
  391. arctrl/py/fable_modules/fs_spreadsheet/DSL/workbook_builder.py +106 -0
  392. arctrl/py/fable_modules/fs_spreadsheet/Json/__init__.py +0 -0
  393. arctrl/py/fable_modules/fs_spreadsheet/Json/cell.py +103 -0
  394. arctrl/py/fable_modules/fs_spreadsheet/Json/column.py +70 -0
  395. arctrl/py/fable_modules/fs_spreadsheet/Json/row.py +70 -0
  396. arctrl/py/fable_modules/fs_spreadsheet/Json/table.py +57 -0
  397. arctrl/py/fable_modules/fs_spreadsheet/Json/value.py +93 -0
  398. arctrl/py/fable_modules/fs_spreadsheet/Json/workbook.py +71 -0
  399. arctrl/py/fable_modules/fs_spreadsheet/Json/worksheet.py +217 -0
  400. arctrl/py/fable_modules/fs_spreadsheet/Ranges/__init__.py +0 -0
  401. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range.py +47 -0
  402. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_address.py +186 -0
  403. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_base.py +90 -0
  404. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_column.py +78 -0
  405. arctrl/py/fable_modules/fs_spreadsheet/Ranges/fs_range_row.py +48 -0
  406. arctrl/py/fable_modules/fs_spreadsheet/Tables/__init__.py +0 -0
  407. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table.py +393 -0
  408. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_field.py +127 -0
  409. arctrl/py/fable_modules/fs_spreadsheet/Tables/fs_table_row.py +23 -0
  410. arctrl/py/fable_modules/fs_spreadsheet/__init__.py +0 -0
  411. arctrl/py/fable_modules/fs_spreadsheet/fs_address.py +218 -0
  412. arctrl/py/fable_modules/fs_spreadsheet/fs_column.py +172 -0
  413. arctrl/py/fable_modules/fs_spreadsheet/fs_row.py +183 -0
  414. arctrl/py/fable_modules/fs_spreadsheet/fs_workbook.py +180 -0
  415. arctrl/py/fable_modules/fs_spreadsheet/fs_worksheet.py +600 -0
  416. arctrl/py/fable_modules/fs_spreadsheet/sheet_builder.py +330 -0
  417. arctrl/py/fable_modules/fs_spreadsheet_py/__init__.py +0 -0
  418. arctrl/py/fable_modules/fs_spreadsheet_py/cell.py +63 -0
  419. arctrl/py/fable_modules/fs_spreadsheet_py/cell_type.py +50 -0
  420. arctrl/py/fable_modules/fs_spreadsheet_py/fs_extension.py +60 -0
  421. arctrl/py/fable_modules/fs_spreadsheet_py/json.py +47 -0
  422. arctrl/py/fable_modules/fs_spreadsheet_py/table.py +53 -0
  423. arctrl/py/fable_modules/fs_spreadsheet_py/workbook.py +40 -0
  424. arctrl/py/fable_modules/fs_spreadsheet_py/worksheet.py +54 -0
  425. arctrl/py/fable_modules/fs_spreadsheet_py/xlsx.py +37 -0
  426. arctrl/py/fable_modules/thoth_json_core/__init__.py +0 -0
  427. arctrl/py/fable_modules/thoth_json_core/decode.py +1588 -0
  428. arctrl/py/fable_modules/thoth_json_core/encode.py +261 -0
  429. arctrl/py/fable_modules/thoth_json_core/types.py +181 -0
  430. arctrl/py/fable_modules/thoth_json_python/__init__.py +0 -0
  431. arctrl/py/fable_modules/thoth_json_python/decode.py +112 -0
  432. arctrl/py/fable_modules/thoth_json_python/encode.py +72 -0
  433. arctrl/py/fable_modules/thoth_json_python/python.py +1 -0
  434. arctrl/py/fable_modules/yamlicious/Interop/__init__.py +0 -0
  435. arctrl/py/fable_modules/yamlicious/Interop/js_interop.py +1 -0
  436. arctrl/py/fable_modules/yamlicious/Interop/py_interop.py +7 -0
  437. arctrl/py/fable_modules/yamlicious/__init__.py +0 -0
  438. arctrl/py/fable_modules/yamlicious/decode.py +1784 -0
  439. arctrl/py/fable_modules/yamlicious/encode.py +84 -0
  440. arctrl/py/fable_modules/yamlicious/library.py +10 -0
  441. arctrl/py/fable_modules/yamlicious/persil.py +57 -0
  442. arctrl/py/fable_modules/yamlicious/preprocessing.py +99 -0
  443. arctrl/py/fable_modules/yamlicious/reader.py +665 -0
  444. arctrl/py/fable_modules/yamlicious/regex.py +21 -0
  445. arctrl/py/fable_modules/yamlicious/regex_active_patterns.py +256 -0
  446. arctrl/py/fable_modules/yamlicious/writer.py +175 -0
  447. arctrl/py/fable_modules/yamlicious/yamlicious_types.py +128 -0
  448. arctrl/py/json.py +213 -0
  449. arctrl/py/rocrate_io.py +72 -0
  450. arctrl/py/template_web.py +23 -0
  451. arctrl/py/xlsx.py +148 -0
  452. arctrl/rocrate.py +21 -0
  453. arctrl-3.0.0a3.dist-info/LICENSE +21 -0
  454. arctrl-3.0.0a3.dist-info/METADATA +119 -0
  455. arctrl-3.0.0a3.dist-info/RECORD +456 -0
  456. arctrl-3.0.0a3.dist-info/WHEEL +4 -0
@@ -0,0 +1,696 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from typing import Any
4
+ from ...fable_modules.fable_library.array_ import contains
5
+ from ...fable_modules.fable_library.option import (value as value_3, default_arg, to_array)
6
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
7
+ from ...fable_modules.fable_library.seq import iterate
8
+ from ...fable_modules.fable_library.types import Array
9
+ from ...fable_modules.fable_library.util import string_hash
10
+ from ...Core.Helper.collections_ import ResizeArray_map
11
+ from ..helper import clean
12
+ from ..ldcontext import LDContext
13
+ from ..ldobject import (LDNode, LDGraph)
14
+
15
+ def _expr1529() -> TypeInfo:
16
+ return class_type("ARCtrl.ROCrate.LDPropertyValue", None, LDPropertyValue)
17
+
18
+
19
+ class LDPropertyValue:
20
+ @staticmethod
21
+ def schema_type() -> str:
22
+ return "http://schema.org/PropertyValue"
23
+
24
+ @staticmethod
25
+ def name() -> str:
26
+ return "http://schema.org/name"
27
+
28
+ @staticmethod
29
+ def value() -> str:
30
+ return "http://schema.org/value"
31
+
32
+ @staticmethod
33
+ def property_id() -> str:
34
+ return "http://schema.org/propertyID"
35
+
36
+ @staticmethod
37
+ def unit_code() -> str:
38
+ return "http://schema.org/unitCode"
39
+
40
+ @staticmethod
41
+ def unit_text() -> str:
42
+ return "http://schema.org/unitText"
43
+
44
+ @staticmethod
45
+ def value_reference() -> str:
46
+ return "http://schema.org/valueReference"
47
+
48
+ @staticmethod
49
+ def measurement_method() -> str:
50
+ return "http://schema.org/measurementMethod"
51
+
52
+ @staticmethod
53
+ def description() -> str:
54
+ return "http://schema.org/description"
55
+
56
+ @staticmethod
57
+ def alternate_name() -> str:
58
+ return "http://schema.org/alternateName"
59
+
60
+ @staticmethod
61
+ def subject_of() -> str:
62
+ return "http://schema.org/subjectOf"
63
+
64
+ @staticmethod
65
+ def disambiguating_description() -> str:
66
+ return "http://schema.org/disambiguatingDescription"
67
+
68
+ @staticmethod
69
+ def doi_key() -> str:
70
+ return "DOI"
71
+
72
+ @staticmethod
73
+ def doi_url() -> str:
74
+ return "http://purl.obolibrary.org/obo/OBI_0002110"
75
+
76
+ @staticmethod
77
+ def pubmed_idkey() -> str:
78
+ return "PubMedID"
79
+
80
+ @staticmethod
81
+ def pubmed_idurl() -> str:
82
+ return "http://purl.obolibrary.org/obo/OBI_0001617"
83
+
84
+ @staticmethod
85
+ def try_get_name_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
86
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.name(), context)
87
+ (pattern_matching_result, n) = (None, None)
88
+ if match_value is not None:
89
+ if str(type(value_3(match_value))) == "<class \'str\'>":
90
+ pattern_matching_result = 0
91
+ n = value_3(match_value)
92
+
93
+ else:
94
+ pattern_matching_result = 1
95
+
96
+
97
+ else:
98
+ pattern_matching_result = 1
99
+
100
+ if pattern_matching_result == 0:
101
+ return n
102
+
103
+ elif pattern_matching_result == 1:
104
+ return None
105
+
106
+
107
+ @staticmethod
108
+ def get_name_as_string(pv: LDNode, context: LDContext | None=None) -> str:
109
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.name(), context)
110
+ if match_value is not None:
111
+ if str(type(value_3(match_value))) == "<class \'str\'>":
112
+ n: str = value_3(match_value)
113
+ return n
114
+
115
+ else:
116
+ raise Exception(("Property of `name` of object with @id `" + pv.Id) + "` was not a string")
117
+
118
+
119
+ else:
120
+ raise Exception(("Could not access property `name` of object with @id `" + pv.Id) + "`")
121
+
122
+
123
+ @staticmethod
124
+ def set_name_as_string(pv: LDNode, name: str, context: LDContext | None=None) -> Any:
125
+ return pv.SetProperty(LDPropertyValue.name(), name, context)
126
+
127
+ @staticmethod
128
+ def try_get_value_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
129
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.value(), context)
130
+ (pattern_matching_result, v) = (None, None)
131
+ if match_value is not None:
132
+ if str(type(value_3(match_value))) == "<class \'str\'>":
133
+ pattern_matching_result = 0
134
+ v = value_3(match_value)
135
+
136
+ else:
137
+ pattern_matching_result = 1
138
+
139
+
140
+ else:
141
+ pattern_matching_result = 1
142
+
143
+ if pattern_matching_result == 0:
144
+ return v
145
+
146
+ elif pattern_matching_result == 1:
147
+ return None
148
+
149
+
150
+ @staticmethod
151
+ def get_value_as_string(pv: LDNode, context: LDContext | None=None) -> str:
152
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.value(), context)
153
+ if match_value is not None:
154
+ if str(type(value_3(match_value))) == "<class \'str\'>":
155
+ v: str = value_3(match_value)
156
+ return v
157
+
158
+ else:
159
+ raise Exception(("Property of `value` of object with @id `" + pv.Id) + "` was not a string")
160
+
161
+
162
+ else:
163
+ raise Exception(("Could not access property `value` of object with @id `" + pv.Id) + "`")
164
+
165
+
166
+ @staticmethod
167
+ def set_value_as_string(pv: LDNode, value: str, context: LDContext | None=None) -> Any:
168
+ return pv.SetProperty(LDPropertyValue.value(), value, context)
169
+
170
+ @staticmethod
171
+ def try_get_property_idas_string(pv: LDNode, context: LDContext | None=None) -> str | None:
172
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.property_id(), context)
173
+ (pattern_matching_result, pid) = (None, None)
174
+ if match_value is not None:
175
+ if str(type(value_3(match_value))) == "<class \'str\'>":
176
+ pattern_matching_result = 0
177
+ pid = value_3(match_value)
178
+
179
+ else:
180
+ pattern_matching_result = 1
181
+
182
+
183
+ else:
184
+ pattern_matching_result = 1
185
+
186
+ if pattern_matching_result == 0:
187
+ return pid
188
+
189
+ elif pattern_matching_result == 1:
190
+ return None
191
+
192
+
193
+ @staticmethod
194
+ def set_property_idas_string(pv: LDNode, property_id: str, context: LDContext | None=None) -> Any:
195
+ return pv.SetProperty(LDPropertyValue.property_id(), property_id, context)
196
+
197
+ @staticmethod
198
+ def try_get_unit_code_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
199
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.unit_code(), context)
200
+ (pattern_matching_result, uc) = (None, None)
201
+ if match_value is not None:
202
+ if str(type(value_3(match_value))) == "<class \'str\'>":
203
+ pattern_matching_result = 0
204
+ uc = value_3(match_value)
205
+
206
+ else:
207
+ pattern_matching_result = 1
208
+
209
+
210
+ else:
211
+ pattern_matching_result = 1
212
+
213
+ if pattern_matching_result == 0:
214
+ return uc
215
+
216
+ elif pattern_matching_result == 1:
217
+ return None
218
+
219
+
220
+ @staticmethod
221
+ def set_unit_code_as_string(pv: LDNode, unit_code: str, context: LDContext | None=None) -> Any:
222
+ return pv.SetProperty(LDPropertyValue.unit_code(), unit_code, context)
223
+
224
+ @staticmethod
225
+ def try_get_unit_text_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
226
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.unit_text(), context)
227
+ (pattern_matching_result, ut) = (None, None)
228
+ if match_value is not None:
229
+ if str(type(value_3(match_value))) == "<class \'str\'>":
230
+ pattern_matching_result = 0
231
+ ut = value_3(match_value)
232
+
233
+ else:
234
+ pattern_matching_result = 1
235
+
236
+
237
+ else:
238
+ pattern_matching_result = 1
239
+
240
+ if pattern_matching_result == 0:
241
+ return ut
242
+
243
+ elif pattern_matching_result == 1:
244
+ return None
245
+
246
+
247
+ @staticmethod
248
+ def set_unit_text_as_string(pv: LDNode, unit_text: str, context: LDContext | None=None) -> Any:
249
+ return pv.SetProperty(LDPropertyValue.unit_text(), unit_text, context)
250
+
251
+ @staticmethod
252
+ def try_get_value_reference_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
253
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.value_reference(), context)
254
+ (pattern_matching_result, vr) = (None, None)
255
+ if match_value is not None:
256
+ if str(type(value_3(match_value))) == "<class \'str\'>":
257
+ pattern_matching_result = 0
258
+ vr = value_3(match_value)
259
+
260
+ else:
261
+ pattern_matching_result = 1
262
+
263
+
264
+ else:
265
+ pattern_matching_result = 1
266
+
267
+ if pattern_matching_result == 0:
268
+ return vr
269
+
270
+ elif pattern_matching_result == 1:
271
+ return None
272
+
273
+
274
+ @staticmethod
275
+ def set_value_reference_as_string(pv: LDNode, value_reference: str, context: LDContext | None=None) -> Any:
276
+ return pv.SetProperty(LDPropertyValue.value_reference(), value_reference, context)
277
+
278
+ @staticmethod
279
+ def try_get_measurement_method_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
280
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.measurement_method(), context)
281
+ (pattern_matching_result, vr) = (None, None)
282
+ if match_value is not None:
283
+ if str(type(value_3(match_value))) == "<class \'str\'>":
284
+ pattern_matching_result = 0
285
+ vr = value_3(match_value)
286
+
287
+ else:
288
+ pattern_matching_result = 1
289
+
290
+
291
+ else:
292
+ pattern_matching_result = 1
293
+
294
+ if pattern_matching_result == 0:
295
+ return vr
296
+
297
+ elif pattern_matching_result == 1:
298
+ return None
299
+
300
+
301
+ @staticmethod
302
+ def set_measurement_method_as_string(pv: LDNode, measurement_method: str, context: LDContext | None=None) -> Any:
303
+ return pv.SetProperty(LDPropertyValue.measurement_method(), measurement_method, context)
304
+
305
+ @staticmethod
306
+ def try_get_description_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
307
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.description(), context)
308
+ (pattern_matching_result, vr) = (None, None)
309
+ if match_value is not None:
310
+ if str(type(value_3(match_value))) == "<class \'str\'>":
311
+ pattern_matching_result = 0
312
+ vr = value_3(match_value)
313
+
314
+ else:
315
+ pattern_matching_result = 1
316
+
317
+
318
+ else:
319
+ pattern_matching_result = 1
320
+
321
+ if pattern_matching_result == 0:
322
+ return vr
323
+
324
+ elif pattern_matching_result == 1:
325
+ return None
326
+
327
+
328
+ @staticmethod
329
+ def set_description_as_string(pv: LDNode, description: str, context: LDContext | None=None) -> Any:
330
+ return pv.SetProperty(LDPropertyValue.description(), description, context)
331
+
332
+ @staticmethod
333
+ def try_get_alternate_name_as_string(pv: LDNode, context: LDContext | None=None) -> str | None:
334
+ match_value: Any | None = pv.TryGetPropertyAsSingleton(LDPropertyValue.alternate_name(), context)
335
+ (pattern_matching_result, vr) = (None, None)
336
+ if match_value is not None:
337
+ if str(type(value_3(match_value))) == "<class \'str\'>":
338
+ pattern_matching_result = 0
339
+ vr = value_3(match_value)
340
+
341
+ else:
342
+ pattern_matching_result = 1
343
+
344
+
345
+ else:
346
+ pattern_matching_result = 1
347
+
348
+ if pattern_matching_result == 0:
349
+ return vr
350
+
351
+ elif pattern_matching_result == 1:
352
+ return None
353
+
354
+
355
+ @staticmethod
356
+ def set_alternate_name_as_string(pv: LDNode, alternate_name: str, context: LDContext | None=None) -> Any:
357
+ return pv.SetProperty(LDPropertyValue.alternate_name(), alternate_name, context)
358
+
359
+ @staticmethod
360
+ def get_disambiguating_descriptions_as_string(pv: LDNode, context: LDContext | None=None) -> Array[str]:
361
+ def f(o_1: Any=None) -> Any:
362
+ return o_1
363
+
364
+ def filter(o: Any=None, context_1: LDContext | None=None) -> bool:
365
+ return str(type(o)) == "<class \'str\'>"
366
+
367
+ return ResizeArray_map(f, pv.GetPropertyValues(LDPropertyValue.disambiguating_description(), filter, context))
368
+
369
+ @staticmethod
370
+ def set_disambiguating_descriptions_as_string(lp: LDNode, disambiguating_descriptions: Array[str], context: LDContext | None=None) -> Any:
371
+ return lp.SetProperty(LDPropertyValue.disambiguating_description(), disambiguating_descriptions, context)
372
+
373
+ @staticmethod
374
+ def try_get_subject_of(pv: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
375
+ match_value: LDNode | None = pv.TryGetPropertyAsSingleNode(LDPropertyValue.subject_of(), graph, context)
376
+ return match_value if (match_value is not None) else None
377
+
378
+ @staticmethod
379
+ def set_subject_of(pv: LDNode, subject_of: LDNode, context: LDContext | None=None) -> Any:
380
+ return pv.SetProperty(LDPropertyValue.subject_of(), subject_of, context)
381
+
382
+ @staticmethod
383
+ def validate(pv: LDNode, context: LDContext | None=None) -> bool:
384
+ return pv.HasProperty(LDPropertyValue.name(), context) if pv.HasType(LDPropertyValue.schema_type(), context) else False
385
+
386
+ @staticmethod
387
+ def validate_component(pv: LDNode, context: LDContext | None=None) -> bool:
388
+ class ObjectExpr1513:
389
+ @property
390
+ def Equals(self) -> Callable[[str, str], bool]:
391
+ def _arrow1512(x: str, y: str) -> bool:
392
+ return x == y
393
+
394
+ return _arrow1512
395
+
396
+ @property
397
+ def GetHashCode(self) -> Callable[[str], int]:
398
+ return string_hash
399
+
400
+ return contains("Component", pv.AdditionalType, ObjectExpr1513()) if LDPropertyValue.validate(pv, context) else False
401
+
402
+ @staticmethod
403
+ def validate_parameter_value(pv: LDNode, context: LDContext | None=None) -> bool:
404
+ class ObjectExpr1515:
405
+ @property
406
+ def Equals(self) -> Callable[[str, str], bool]:
407
+ def _arrow1514(x: str, y: str) -> bool:
408
+ return x == y
409
+
410
+ return _arrow1514
411
+
412
+ @property
413
+ def GetHashCode(self) -> Callable[[str], int]:
414
+ return string_hash
415
+
416
+ class ObjectExpr1517:
417
+ @property
418
+ def Equals(self) -> Callable[[str, str], bool]:
419
+ def _arrow1516(x_1: str, y_1: str) -> bool:
420
+ return x_1 == y_1
421
+
422
+ return _arrow1516
423
+
424
+ @property
425
+ def GetHashCode(self) -> Callable[[str], int]:
426
+ return string_hash
427
+
428
+ return (True if contains("ParameterValue", pv.AdditionalType, ObjectExpr1515()) else contains("ProcessParameterValue", pv.AdditionalType, ObjectExpr1517())) if LDPropertyValue.validate(pv, context) else False
429
+
430
+ @staticmethod
431
+ def validate_characteristic_value(pv: LDNode, context: LDContext | None=None) -> bool:
432
+ class ObjectExpr1519:
433
+ @property
434
+ def Equals(self) -> Callable[[str, str], bool]:
435
+ def _arrow1518(x: str, y: str) -> bool:
436
+ return x == y
437
+
438
+ return _arrow1518
439
+
440
+ @property
441
+ def GetHashCode(self) -> Callable[[str], int]:
442
+ return string_hash
443
+
444
+ class ObjectExpr1521:
445
+ @property
446
+ def Equals(self) -> Callable[[str, str], bool]:
447
+ def _arrow1520(x_1: str, y_1: str) -> bool:
448
+ return x_1 == y_1
449
+
450
+ return _arrow1520
451
+
452
+ @property
453
+ def GetHashCode(self) -> Callable[[str], int]:
454
+ return string_hash
455
+
456
+ return (True if contains("CharacteristicValue", pv.AdditionalType, ObjectExpr1519()) else contains("MaterialAttributeValue", pv.AdditionalType, ObjectExpr1521())) if LDPropertyValue.validate(pv, context) else False
457
+
458
+ @staticmethod
459
+ def validate_factor_value(pv: LDNode, context: LDContext | None=None) -> bool:
460
+ class ObjectExpr1523:
461
+ @property
462
+ def Equals(self) -> Callable[[str, str], bool]:
463
+ def _arrow1522(x: str, y: str) -> bool:
464
+ return x == y
465
+
466
+ return _arrow1522
467
+
468
+ @property
469
+ def GetHashCode(self) -> Callable[[str], int]:
470
+ return string_hash
471
+
472
+ return contains("FactorValue", pv.AdditionalType, ObjectExpr1523()) if LDPropertyValue.validate(pv, context) else False
473
+
474
+ @staticmethod
475
+ def validate_fragment_descriptor(pv: LDNode, context: LDContext | None=None) -> bool:
476
+ return (LDPropertyValue.get_name_as_string(pv, context) == "FragmentDescriptor") if LDPropertyValue.validate(pv, context) else False
477
+
478
+ @staticmethod
479
+ def validate_doi(pv: LDNode, context: LDContext | None=None) -> bool:
480
+ if LDPropertyValue.validate(pv, context):
481
+ match_value: str | None = LDPropertyValue.try_get_name_as_string(pv, context)
482
+ match_value_1: str | None = LDPropertyValue.try_get_value_as_string(pv, context)
483
+ match_value_2: str | None = LDPropertyValue.try_get_property_idas_string(pv, context)
484
+ (pattern_matching_result,) = (None,)
485
+ if match_value is not None:
486
+ if match_value_1 is not None:
487
+ if match_value_2 is not None:
488
+ def _arrow1524(__unit: None=None) -> bool:
489
+ value: str = match_value_1
490
+ id: str = match_value_2
491
+ return (id == LDPropertyValue.doi_url()) if (match_value == LDPropertyValue.doi_key()) else False
492
+
493
+ if _arrow1524():
494
+ pattern_matching_result = 0
495
+
496
+ else:
497
+ pattern_matching_result = 1
498
+
499
+
500
+ else:
501
+ pattern_matching_result = 1
502
+
503
+
504
+ else:
505
+ pattern_matching_result = 1
506
+
507
+
508
+ else:
509
+ pattern_matching_result = 1
510
+
511
+ if pattern_matching_result == 0:
512
+ return True
513
+
514
+ elif pattern_matching_result == 1:
515
+ return False
516
+
517
+
518
+ else:
519
+ return False
520
+
521
+
522
+ @staticmethod
523
+ def validate_pub_med_id(pv: LDNode, context: LDContext | None=None) -> bool:
524
+ if LDPropertyValue.validate(pv, context):
525
+ match_value: str | None = LDPropertyValue.try_get_name_as_string(pv, context)
526
+ match_value_1: str | None = LDPropertyValue.try_get_value_as_string(pv, context)
527
+ match_value_2: str | None = LDPropertyValue.try_get_property_idas_string(pv, context)
528
+ (pattern_matching_result,) = (None,)
529
+ if match_value is not None:
530
+ if match_value_1 is not None:
531
+ if match_value_2 is not None:
532
+ def _arrow1525(__unit: None=None) -> bool:
533
+ value: str = match_value_1
534
+ id: str = match_value_2
535
+ return (id == LDPropertyValue.pubmed_idurl()) if (match_value == LDPropertyValue.pubmed_idkey()) else False
536
+
537
+ if _arrow1525():
538
+ pattern_matching_result = 0
539
+
540
+ else:
541
+ pattern_matching_result = 1
542
+
543
+
544
+ else:
545
+ pattern_matching_result = 1
546
+
547
+
548
+ else:
549
+ pattern_matching_result = 1
550
+
551
+
552
+ else:
553
+ pattern_matching_result = 1
554
+
555
+ if pattern_matching_result == 0:
556
+ return True
557
+
558
+ elif pattern_matching_result == 1:
559
+ return False
560
+
561
+
562
+ else:
563
+ return False
564
+
565
+
566
+ @staticmethod
567
+ def gen_id(name: str, value: str | None=None, property_id: str | None=None, prefix: str | None=None) -> str:
568
+ prefix_1: str = default_arg(prefix, "PV")
569
+ def _arrow1526(__unit: None=None) -> str:
570
+ pid_1: str = property_id
571
+ return ((("#" + prefix_1) + "_") + name) + ""
572
+
573
+ def _arrow1527(__unit: None=None) -> str:
574
+ value_2: str = value
575
+ return ((((("#" + prefix_1) + "_") + name) + "_") + value_2) + ""
576
+
577
+ def _arrow1528(__unit: None=None) -> str:
578
+ pid: str = property_id
579
+ value_1: str = value
580
+ return ((((("#" + prefix_1) + "_") + name) + "_") + value_1) + ""
581
+
582
+ return clean((_arrow1526() if (property_id is not None) else (((("#" + prefix_1) + "_") + name) + "")) if (value is None) else (_arrow1527() if (property_id is None) else _arrow1528()))
583
+
584
+ @staticmethod
585
+ def gen_id_component(name: str, value: str | None=None, property_id: str | None=None) -> str:
586
+ return LDPropertyValue.gen_id(name, value, property_id, "Component")
587
+
588
+ @staticmethod
589
+ def gen_id_parameter_value(name: str, value: str | None=None, property_id: str | None=None) -> str:
590
+ return LDPropertyValue.gen_id(name, value, property_id, "ParameterValue")
591
+
592
+ @staticmethod
593
+ def gen_id_characteristic_value(name: str, value: str | None=None, property_id: str | None=None) -> str:
594
+ return LDPropertyValue.gen_id(name, value, property_id, "CharacteristicValue")
595
+
596
+ @staticmethod
597
+ def gen_id_factor_value(name: str, value: str | None=None, property_id: str | None=None) -> str:
598
+ return LDPropertyValue.gen_id(name, value, property_id, "FactorValue")
599
+
600
+ @staticmethod
601
+ def gen_id_fragment_descriptor(file_name: str) -> str:
602
+ return ("#Descriptor_" + file_name) + ""
603
+
604
+ @staticmethod
605
+ def create(name: str, value: str | None=None, id: str | None=None, property_id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, context: LDContext | None=None) -> LDNode:
606
+ pv: LDNode = LDNode(LDPropertyValue.gen_id(name, value, property_id) if (id is None) else id, [LDPropertyValue.schema_type()], None, context)
607
+ LDPropertyValue.set_name_as_string(pv, name, context)
608
+ pv.SetOptionalProperty(LDPropertyValue.value(), value, context)
609
+ def action(pid: str) -> None:
610
+ LDPropertyValue.set_property_idas_string(pv, pid, context)
611
+
612
+ iterate(action, to_array(property_id))
613
+ def action_1(uc: str) -> None:
614
+ LDPropertyValue.set_unit_code_as_string(pv, uc, context)
615
+
616
+ iterate(action_1, to_array(unit_code))
617
+ def action_2(ut: str) -> None:
618
+ LDPropertyValue.set_unit_text_as_string(pv, ut, context)
619
+
620
+ iterate(action_2, to_array(unit_text))
621
+ def action_3(vr: str) -> None:
622
+ LDPropertyValue.set_value_reference_as_string(pv, vr, context)
623
+
624
+ iterate(action_3, to_array(value_reference))
625
+ return pv
626
+
627
+ @staticmethod
628
+ def create_component(name: str, value: str | None=None, id: str | None=None, property_id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, context: LDContext | None=None) -> LDNode:
629
+ id_1: str = LDPropertyValue.gen_id_component(name, value, property_id) if (id is None) else id
630
+ c: LDNode = LDPropertyValue.create(name, value, id_1, property_id, unit_code, unit_text, value_reference, context)
631
+ c.AdditionalType = ["Component"]
632
+ return c
633
+
634
+ @staticmethod
635
+ def create_parameter_value(name: str, value: str | None=None, id: str | None=None, property_id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, context: LDContext | None=None) -> LDNode:
636
+ id_1: str = LDPropertyValue.gen_id_parameter_value(name, value, property_id) if (id is None) else id
637
+ pv: LDNode = LDPropertyValue.create(name, value, id_1, property_id, unit_code, unit_text, value_reference, context)
638
+ pv.AdditionalType = ["ParameterValue"]
639
+ return pv
640
+
641
+ @staticmethod
642
+ def create_characteristic_value(name: str, value: str | None=None, id: str | None=None, property_id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, context: LDContext | None=None) -> LDNode:
643
+ id_1: str = LDPropertyValue.gen_id_characteristic_value(name, value, property_id) if (id is None) else id
644
+ cv: LDNode = LDPropertyValue.create(name, value, id_1, property_id, unit_code, unit_text, value_reference, context)
645
+ cv.AdditionalType = ["CharacteristicValue"]
646
+ return cv
647
+
648
+ @staticmethod
649
+ def create_factor_value(name: str, value: str | None=None, id: str | None=None, property_id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, context: LDContext | None=None) -> LDNode:
650
+ id_1: str = LDPropertyValue.gen_id_factor_value(name, value, property_id) if (id is None) else id
651
+ fv: LDNode = LDPropertyValue.create(name, value, id_1, property_id, unit_code, unit_text, value_reference, context)
652
+ fv.AdditionalType = ["FactorValue"]
653
+ return fv
654
+
655
+ @staticmethod
656
+ def create_fragment_descriptor(file_name: str, value: str | None=None, id: str | None=None, unit_code: str | None=None, unit_text: str | None=None, value_reference: str | None=None, measurement_method: str | None=None, description: str | None=None, alternate_name: str | None=None, disambiguating_descriptions: Any | None=None, subject_of: Any | None=None, context: LDContext | None=None) -> LDNode:
657
+ id_1: str = LDPropertyValue.gen_id_fragment_descriptor(file_name) if (id is None) else id
658
+ fd: LDNode = LDPropertyValue.create("FragmentDescriptor", value, id_1, "https://github.com/nfdi4plants/ARC-specification/blob/dev/ISA-XLSX.md#datamap-table-sheets", unit_code, unit_text, value_reference, context)
659
+ if measurement_method is not None:
660
+ LDPropertyValue.set_measurement_method_as_string(fd, value_3(measurement_method), context)
661
+
662
+ if description is not None:
663
+ LDPropertyValue.set_description_as_string(fd, value_3(description), context)
664
+
665
+ if alternate_name is not None:
666
+ LDPropertyValue.set_alternate_name_as_string(fd, value_3(alternate_name), context)
667
+
668
+ if disambiguating_descriptions is not None:
669
+ LDPropertyValue.set_disambiguating_descriptions_as_string(fd, value_3(disambiguating_descriptions), context)
670
+
671
+ if subject_of is not None:
672
+ LDPropertyValue.set_subject_of(fd, value_3(subject_of), context)
673
+
674
+ return fd
675
+
676
+ @staticmethod
677
+ def create_doi(value: str, context: LDContext | None=None) -> LDNode:
678
+ return LDPropertyValue.create(LDPropertyValue.doi_key(), value, value, LDPropertyValue.doi_url(), None, None, None, context)
679
+
680
+ @staticmethod
681
+ def create_pub_med_id(value: str, context: LDContext | None=None) -> LDNode:
682
+ return LDPropertyValue.create(LDPropertyValue.pubmed_idkey(), value, value, LDPropertyValue.pubmed_idurl(), None, None, None, context)
683
+
684
+ @staticmethod
685
+ def try_get_as_doi(pv: LDNode, context: LDContext | None=None) -> str | None:
686
+ return LDPropertyValue.get_value_as_string(pv, context) if LDPropertyValue.validate_doi(pv, context) else None
687
+
688
+ @staticmethod
689
+ def try_get_as_pub_med_id(pv: LDNode, context: LDContext | None=None) -> str | None:
690
+ return LDPropertyValue.get_value_as_string(pv, context) if LDPropertyValue.validate_pub_med_id(pv, context) else None
691
+
692
+
693
+ LDPropertyValue_reflection = _expr1529
694
+
695
+ __all__ = ["LDPropertyValue_reflection"]
696
+