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,817 @@
1
+ from __future__ import annotations
2
+ from collections.abc import Callable
3
+ from datetime import datetime
4
+ from typing import Any
5
+ from ...fable_modules.fable_library.array_ import contains
6
+ from ...fable_modules.fable_library.option import value as value_1
7
+ from ...fable_modules.fable_library.reflection import (TypeInfo, class_type)
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_tryPick
11
+ from ..ldcontext import LDContext
12
+ from ..ldobject import (LDNode, LDGraph)
13
+ from .comment import LDComment
14
+ from .defined_term import LDDefinedTerm
15
+ from .file import LDFile
16
+ from .lab_process import LDLabProcess
17
+ from .person import LDPerson
18
+ from .property_value import LDPropertyValue
19
+ from .scholarly_article import LDScholarlyArticle
20
+
21
+ def _expr1585() -> TypeInfo:
22
+ return class_type("ARCtrl.ROCrate.LDDataset", None, LDDataset)
23
+
24
+
25
+ class LDDataset:
26
+ @staticmethod
27
+ def schema_type() -> str:
28
+ return "http://schema.org/Dataset"
29
+
30
+ @staticmethod
31
+ def identifier() -> str:
32
+ return "http://schema.org/identifier"
33
+
34
+ @staticmethod
35
+ def creator() -> str:
36
+ return "http://schema.org/creator"
37
+
38
+ @staticmethod
39
+ def date_created() -> str:
40
+ return "http://schema.org/dateCreated"
41
+
42
+ @staticmethod
43
+ def date_published() -> str:
44
+ return "http://schema.org/datePublished"
45
+
46
+ @staticmethod
47
+ def sd_date_published() -> str:
48
+ return "http://schema.org/datePublished"
49
+
50
+ @staticmethod
51
+ def license() -> str:
52
+ return "http://schema.org/license"
53
+
54
+ @staticmethod
55
+ def date_modified() -> str:
56
+ return "http://schema.org/dateModified"
57
+
58
+ @staticmethod
59
+ def description() -> str:
60
+ return "http://schema.org/description"
61
+
62
+ @staticmethod
63
+ def has_part() -> str:
64
+ return "http://schema.org/hasPart"
65
+
66
+ @staticmethod
67
+ def headline() -> str:
68
+ return "http://schema.org/headline"
69
+
70
+ @staticmethod
71
+ def name() -> str:
72
+ return "http://schema.org/name"
73
+
74
+ @staticmethod
75
+ def citation() -> str:
76
+ return "http://schema.org/citation"
77
+
78
+ @staticmethod
79
+ def comment() -> str:
80
+ return "http://schema.org/comment"
81
+
82
+ @staticmethod
83
+ def mentions() -> str:
84
+ return "http://schema.org/mentions"
85
+
86
+ @staticmethod
87
+ def url() -> str:
88
+ return "http://schema.org/url"
89
+
90
+ @staticmethod
91
+ def about() -> str:
92
+ return "http://schema.org/about"
93
+
94
+ @staticmethod
95
+ def measurement_method() -> str:
96
+ return "http://schema.org/measurementMethod"
97
+
98
+ @staticmethod
99
+ def measurement_technique() -> str:
100
+ return "http://schema.org/measurementTechnique"
101
+
102
+ @staticmethod
103
+ def variable_measured() -> str:
104
+ return "http://schema.org/variableMeasured"
105
+
106
+ @staticmethod
107
+ def try_get_identifier_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
108
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.identifier(), context)
109
+ (pattern_matching_result, n) = (None, None)
110
+ if match_value is not None:
111
+ if str(type(value_1(match_value))) == "<class \'str\'>":
112
+ pattern_matching_result = 0
113
+ n = value_1(match_value)
114
+
115
+ else:
116
+ pattern_matching_result = 1
117
+
118
+
119
+ else:
120
+ pattern_matching_result = 1
121
+
122
+ if pattern_matching_result == 0:
123
+ return n
124
+
125
+ elif pattern_matching_result == 1:
126
+ return None
127
+
128
+
129
+ @staticmethod
130
+ def get_identifier_as_string(lp: LDNode, context: LDContext | None=None) -> str:
131
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.identifier(), context)
132
+ if match_value is not None:
133
+ if str(type(value_1(match_value))) == "<class \'str\'>":
134
+ n: str = value_1(match_value)
135
+ return n
136
+
137
+ else:
138
+ raise Exception(("property `identifier` of object with @id `" + lp.Id) + "` was not a string")
139
+
140
+
141
+ else:
142
+ raise Exception(("Could not access property `identifier` of object with @id `" + lp.Id) + "`")
143
+
144
+
145
+ @staticmethod
146
+ def set_identifier_as_string(lp: LDNode, identifier: str, context: LDContext | None=None) -> Any:
147
+ return lp.SetProperty(LDDataset.identifier(), identifier, context)
148
+
149
+ @staticmethod
150
+ def get_creators(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
151
+ def filter(p: LDNode, ctx: LDContext | None=None) -> bool:
152
+ return LDPerson.validate(p, ctx)
153
+
154
+ return lp.GetPropertyNodes(LDDataset.creator(), filter, graph, context)
155
+
156
+ @staticmethod
157
+ def set_creators(lp: LDNode, creators: Array[LDNode], context: LDContext | None=None) -> Any:
158
+ return lp.SetProperty(LDDataset.creator(), creators, context)
159
+
160
+ @staticmethod
161
+ def try_get_date_created_as_date_time(lp: LDNode, context: LDContext | None=None) -> Any | None:
162
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.date_created(), context)
163
+ (pattern_matching_result, n) = (None, None)
164
+ if match_value is not None:
165
+ if isinstance(value_1(match_value), datetime):
166
+ pattern_matching_result = 0
167
+ n = value_1(match_value)
168
+
169
+ else:
170
+ pattern_matching_result = 1
171
+
172
+
173
+ else:
174
+ pattern_matching_result = 1
175
+
176
+ if pattern_matching_result == 0:
177
+ return n
178
+
179
+ elif pattern_matching_result == 1:
180
+ return None
181
+
182
+
183
+ @staticmethod
184
+ def set_date_created_as_date_time(lp: LDNode, date_created: Any, context: LDContext | None=None) -> Any:
185
+ return lp.SetProperty(LDDataset.date_created(), date_created, context)
186
+
187
+ @staticmethod
188
+ def try_get_date_published_as_date_time(lp: LDNode, context: LDContext | None=None) -> Any | None:
189
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.date_published(), context)
190
+ (pattern_matching_result, n) = (None, None)
191
+ if match_value is not None:
192
+ if isinstance(value_1(match_value), datetime):
193
+ pattern_matching_result = 0
194
+ n = value_1(match_value)
195
+
196
+ else:
197
+ pattern_matching_result = 1
198
+
199
+
200
+ else:
201
+ pattern_matching_result = 1
202
+
203
+ if pattern_matching_result == 0:
204
+ return n
205
+
206
+ elif pattern_matching_result == 1:
207
+ return None
208
+
209
+
210
+ @staticmethod
211
+ def set_date_published_as_date_time(lp: LDNode, date_published: Any, context: LDContext | None=None) -> Any:
212
+ return lp.SetProperty(LDDataset.date_published(), date_published, context)
213
+
214
+ @staticmethod
215
+ def try_get_sddate_published_as_date_time(lp: LDNode, context: LDContext | None=None) -> Any | None:
216
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.sd_date_published(), context)
217
+ (pattern_matching_result, n) = (None, None)
218
+ if match_value is not None:
219
+ if isinstance(value_1(match_value), datetime):
220
+ pattern_matching_result = 0
221
+ n = value_1(match_value)
222
+
223
+ else:
224
+ pattern_matching_result = 1
225
+
226
+
227
+ else:
228
+ pattern_matching_result = 1
229
+
230
+ if pattern_matching_result == 0:
231
+ return n
232
+
233
+ elif pattern_matching_result == 1:
234
+ return None
235
+
236
+
237
+ @staticmethod
238
+ def set_sddate_published_as_date_time(lp: LDNode, sd_date_published: Any, context: LDContext | None=None) -> Any:
239
+ return lp.SetProperty(LDDataset.sd_date_published(), sd_date_published, context)
240
+
241
+ @staticmethod
242
+ def try_get_license_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
243
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.license(), context)
244
+ (pattern_matching_result, n) = (None, None)
245
+ if match_value is not None:
246
+ if str(type(value_1(match_value))) == "<class \'str\'>":
247
+ pattern_matching_result = 0
248
+ n = value_1(match_value)
249
+
250
+ else:
251
+ pattern_matching_result = 1
252
+
253
+
254
+ else:
255
+ pattern_matching_result = 1
256
+
257
+ if pattern_matching_result == 0:
258
+ return n
259
+
260
+ elif pattern_matching_result == 1:
261
+ return None
262
+
263
+
264
+ @staticmethod
265
+ def set_license_as_string(lp: LDNode, license: str, context: LDContext | None=None) -> Any:
266
+ return lp.SetProperty(LDDataset.license(), license, context)
267
+
268
+ @staticmethod
269
+ def set_license_as_creative_work(lp: LDNode, license: Any=None, context: LDContext | None=None) -> Any:
270
+ return lp.SetProperty(LDDataset.license(), license, context)
271
+
272
+ @staticmethod
273
+ def try_get_date_modified_as_date_time(lp: LDNode, context: LDContext | None=None) -> Any | None:
274
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.date_modified(), context)
275
+ (pattern_matching_result, n) = (None, None)
276
+ if match_value is not None:
277
+ if isinstance(value_1(match_value), datetime):
278
+ pattern_matching_result = 0
279
+ n = value_1(match_value)
280
+
281
+ else:
282
+ pattern_matching_result = 1
283
+
284
+
285
+ else:
286
+ pattern_matching_result = 1
287
+
288
+ if pattern_matching_result == 0:
289
+ return n
290
+
291
+ elif pattern_matching_result == 1:
292
+ return None
293
+
294
+
295
+ @staticmethod
296
+ def set_date_modified_as_date_time(lp: LDNode, date_modified: Any, context: LDContext | None=None) -> Any:
297
+ return lp.SetProperty(LDDataset.date_modified(), date_modified, context)
298
+
299
+ @staticmethod
300
+ def try_get_description_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
301
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.description(), context)
302
+ (pattern_matching_result, n) = (None, None)
303
+ if match_value is not None:
304
+ if str(type(value_1(match_value))) == "<class \'str\'>":
305
+ pattern_matching_result = 0
306
+ n = value_1(match_value)
307
+
308
+ else:
309
+ pattern_matching_result = 1
310
+
311
+
312
+ else:
313
+ pattern_matching_result = 1
314
+
315
+ if pattern_matching_result == 0:
316
+ return n
317
+
318
+ elif pattern_matching_result == 1:
319
+ return None
320
+
321
+
322
+ @staticmethod
323
+ def get_description_as_string(lp: LDNode, context: LDContext | None=None) -> str:
324
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.description(), context)
325
+ if match_value is not None:
326
+ if str(type(value_1(match_value))) == "<class \'str\'>":
327
+ n: str = value_1(match_value)
328
+ return n
329
+
330
+ else:
331
+ raise Exception(("property `description` of object with @id `" + lp.Id) + "` was not a string")
332
+
333
+
334
+ else:
335
+ raise Exception(("Could not access property `description` of object with @id `" + lp.Id) + "`")
336
+
337
+
338
+ @staticmethod
339
+ def set_description_as_string(lp: LDNode, description: str, context: LDContext | None=None) -> Any:
340
+ return lp.SetProperty(LDDataset.description(), description, context)
341
+
342
+ @staticmethod
343
+ def get_has_parts(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
344
+ return lp.GetPropertyNodes(LDDataset.has_part(), None, graph, context)
345
+
346
+ @staticmethod
347
+ def get_has_parts_as_dataset(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
348
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
349
+ return LDDataset.validate(ldnode, context_1)
350
+
351
+ return lp.GetPropertyNodes(LDDataset.has_part(), filter, graph, context)
352
+
353
+ @staticmethod
354
+ def get_has_parts_as_file(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
355
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
356
+ return LDFile.validate(ldnode, context_1)
357
+
358
+ return lp.GetPropertyNodes(LDDataset.has_part(), filter, graph, context)
359
+
360
+ @staticmethod
361
+ def set_has_parts(lp: LDNode, has_parts: Array[LDNode], context: LDContext | None=None) -> Any:
362
+ return lp.SetProperty(LDDataset.has_part(), has_parts, context)
363
+
364
+ @staticmethod
365
+ def try_get_headline_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
366
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.headline(), context)
367
+ (pattern_matching_result, n) = (None, None)
368
+ if match_value is not None:
369
+ if str(type(value_1(match_value))) == "<class \'str\'>":
370
+ pattern_matching_result = 0
371
+ n = value_1(match_value)
372
+
373
+ else:
374
+ pattern_matching_result = 1
375
+
376
+
377
+ else:
378
+ pattern_matching_result = 1
379
+
380
+ if pattern_matching_result == 0:
381
+ return n
382
+
383
+ elif pattern_matching_result == 1:
384
+ return None
385
+
386
+
387
+ @staticmethod
388
+ def try_get_name_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
389
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.name(), context)
390
+ (pattern_matching_result, n) = (None, None)
391
+ if match_value is not None:
392
+ if str(type(value_1(match_value))) == "<class \'str\'>":
393
+ pattern_matching_result = 0
394
+ n = value_1(match_value)
395
+
396
+ else:
397
+ pattern_matching_result = 1
398
+
399
+
400
+ else:
401
+ pattern_matching_result = 1
402
+
403
+ if pattern_matching_result == 0:
404
+ return n
405
+
406
+ elif pattern_matching_result == 1:
407
+ return None
408
+
409
+
410
+ @staticmethod
411
+ def get_name_as_string(lp: LDNode, context: LDContext | None=None) -> str:
412
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.name(), context)
413
+ if match_value is not None:
414
+ if str(type(value_1(match_value))) == "<class \'str\'>":
415
+ n: str = value_1(match_value)
416
+ return n
417
+
418
+ else:
419
+ raise Exception(("property `name` of object with @id `" + lp.Id) + "` was not a string")
420
+
421
+
422
+ else:
423
+ raise Exception(("Could not access property `name` of object with @id `" + lp.Id) + "`")
424
+
425
+
426
+ @staticmethod
427
+ def set_name_as_string(lp: LDNode, name: str, context: LDContext | None=None) -> Any:
428
+ return lp.SetProperty(LDDataset.name(), name, context)
429
+
430
+ @staticmethod
431
+ def get_citations(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
432
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
433
+ return LDScholarlyArticle.validate(ldnode, context_1)
434
+
435
+ return lp.GetPropertyNodes(LDDataset.citation(), filter, graph, context)
436
+
437
+ @staticmethod
438
+ def set_citations(lp: LDNode, citations: Array[LDNode], context: LDContext | None=None) -> Any:
439
+ return lp.SetProperty(LDDataset.citation(), citations, context)
440
+
441
+ @staticmethod
442
+ def get_comments(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
443
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
444
+ return LDComment.validate(ldnode, context_1)
445
+
446
+ return lp.GetPropertyNodes(LDDataset.comment(), filter, graph, context)
447
+
448
+ @staticmethod
449
+ def set_comments(lp: LDNode, comments: Array[LDNode], context: LDContext | None=None) -> Any:
450
+ return lp.SetProperty(LDDataset.comment(), comments, context)
451
+
452
+ @staticmethod
453
+ def try_get_url_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
454
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.url(), context)
455
+ (pattern_matching_result, n) = (None, None)
456
+ if match_value is not None:
457
+ if str(type(value_1(match_value))) == "<class \'str\'>":
458
+ pattern_matching_result = 0
459
+ n = value_1(match_value)
460
+
461
+ else:
462
+ pattern_matching_result = 1
463
+
464
+
465
+ else:
466
+ pattern_matching_result = 1
467
+
468
+ if pattern_matching_result == 0:
469
+ return n
470
+
471
+ elif pattern_matching_result == 1:
472
+ return None
473
+
474
+
475
+ @staticmethod
476
+ def get_url_as_string(lp: LDNode, context: LDContext | None=None) -> str:
477
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.url(), context)
478
+ if match_value is not None:
479
+ if str(type(value_1(match_value))) == "<class \'str\'>":
480
+ n: str = value_1(match_value)
481
+ return n
482
+
483
+ else:
484
+ raise Exception(("property `url` of object with @id `" + lp.Id) + "` was not a string")
485
+
486
+
487
+ else:
488
+ raise Exception(("Could not access property `url` of object with @id `" + lp.Id) + "`")
489
+
490
+
491
+ @staticmethod
492
+ def set_url_as_string(lp: LDNode, url: str, context: LDContext | None=None) -> Any:
493
+ return lp.SetProperty(LDDataset.url(), url, context)
494
+
495
+ @staticmethod
496
+ def get_abouts(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
497
+ return lp.GetPropertyNodes(LDDataset.about(), None, graph, context)
498
+
499
+ @staticmethod
500
+ def get_abouts_as_lab_process(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
501
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
502
+ return LDLabProcess.validate(ldnode, context_1)
503
+
504
+ return lp.GetPropertyNodes(LDDataset.about(), filter, graph, context)
505
+
506
+ @staticmethod
507
+ def set_abouts(lp: LDNode, abouts: Array[LDNode], context: LDContext | None=None) -> Any:
508
+ return lp.SetProperty(LDDataset.about(), abouts, context)
509
+
510
+ @staticmethod
511
+ def try_get_measurement_method_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
512
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.measurement_method(), context)
513
+ (pattern_matching_result, n) = (None, None)
514
+ if match_value is not None:
515
+ if str(type(value_1(match_value))) == "<class \'str\'>":
516
+ pattern_matching_result = 0
517
+ n = value_1(match_value)
518
+
519
+ else:
520
+ pattern_matching_result = 1
521
+
522
+
523
+ else:
524
+ pattern_matching_result = 1
525
+
526
+ if pattern_matching_result == 0:
527
+ return n
528
+
529
+ elif pattern_matching_result == 1:
530
+ return None
531
+
532
+
533
+ @staticmethod
534
+ def try_get_measurement_method_as_defined_term(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
535
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDDataset.measurement_method(), graph, context)
536
+ (pattern_matching_result, n_1) = (None, None)
537
+ if match_value is not None:
538
+ def _arrow1573(__unit: None=None) -> bool:
539
+ n: LDNode = match_value
540
+ return LDDefinedTerm.validate(n, context)
541
+
542
+ if _arrow1573():
543
+ pattern_matching_result = 0
544
+ n_1 = match_value
545
+
546
+ else:
547
+ pattern_matching_result = 1
548
+
549
+
550
+ else:
551
+ pattern_matching_result = 1
552
+
553
+ if pattern_matching_result == 0:
554
+ return n_1
555
+
556
+ elif pattern_matching_result == 1:
557
+ return None
558
+
559
+
560
+ @staticmethod
561
+ def set_measurement_method_as_string(lp: LDNode, measurement_method: str, context: LDContext | None=None) -> Any:
562
+ return lp.SetProperty(LDDataset.measurement_method(), measurement_method, context)
563
+
564
+ @staticmethod
565
+ def set_measurement_method_as_defined_term(lp: LDNode, measurement_method: LDNode, context: LDContext | None=None) -> Any:
566
+ return lp.SetProperty(LDDataset.measurement_method(), measurement_method, context)
567
+
568
+ @staticmethod
569
+ def try_get_measurement_technique_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
570
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.measurement_technique(), context)
571
+ (pattern_matching_result, n) = (None, None)
572
+ if match_value is not None:
573
+ if str(type(value_1(match_value))) == "<class \'str\'>":
574
+ pattern_matching_result = 0
575
+ n = value_1(match_value)
576
+
577
+ else:
578
+ pattern_matching_result = 1
579
+
580
+
581
+ else:
582
+ pattern_matching_result = 1
583
+
584
+ if pattern_matching_result == 0:
585
+ return n
586
+
587
+ elif pattern_matching_result == 1:
588
+ return None
589
+
590
+
591
+ @staticmethod
592
+ def try_get_measurement_technique_as_defined_term(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
593
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDDataset.measurement_technique(), graph, context)
594
+ (pattern_matching_result, n_1) = (None, None)
595
+ if match_value is not None:
596
+ def _arrow1574(__unit: None=None) -> bool:
597
+ n: LDNode = match_value
598
+ return LDDefinedTerm.validate(n, context)
599
+
600
+ if _arrow1574():
601
+ pattern_matching_result = 0
602
+ n_1 = match_value
603
+
604
+ else:
605
+ pattern_matching_result = 1
606
+
607
+
608
+ else:
609
+ pattern_matching_result = 1
610
+
611
+ if pattern_matching_result == 0:
612
+ return n_1
613
+
614
+ elif pattern_matching_result == 1:
615
+ return None
616
+
617
+
618
+ @staticmethod
619
+ def set_measurement_technique_as_string(lp: LDNode, measurement_technique: str, context: LDContext | None=None) -> Any:
620
+ return lp.SetProperty(LDDataset.measurement_technique(), measurement_technique, context)
621
+
622
+ @staticmethod
623
+ def set_measurement_technique_as_defined_term(lp: LDNode, measurement_technique: LDNode, context: LDContext | None=None) -> Any:
624
+ return lp.SetProperty(LDDataset.measurement_technique(), measurement_technique, context)
625
+
626
+ @staticmethod
627
+ def try_get_variable_measured_as_string(lp: LDNode, context: LDContext | None=None) -> str | None:
628
+ match_value: Any | None = lp.TryGetPropertyAsSingleton(LDDataset.variable_measured(), context)
629
+ (pattern_matching_result, n) = (None, None)
630
+ if match_value is not None:
631
+ if str(type(value_1(match_value))) == "<class \'str\'>":
632
+ pattern_matching_result = 0
633
+ n = value_1(match_value)
634
+
635
+ else:
636
+ pattern_matching_result = 1
637
+
638
+
639
+ else:
640
+ pattern_matching_result = 1
641
+
642
+ if pattern_matching_result == 0:
643
+ return n
644
+
645
+ elif pattern_matching_result == 1:
646
+ return None
647
+
648
+
649
+ @staticmethod
650
+ def try_get_variable_measured_as_property_value(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
651
+ match_value: LDNode | None = lp.TryGetPropertyAsSingleNode(LDDataset.variable_measured(), graph, context)
652
+ (pattern_matching_result, n_1) = (None, None)
653
+ if match_value is not None:
654
+ def _arrow1576(__unit: None=None) -> bool:
655
+ n: LDNode = match_value
656
+ return LDPropertyValue.validate(n, context)
657
+
658
+ if _arrow1576():
659
+ pattern_matching_result = 0
660
+ n_1 = match_value
661
+
662
+ else:
663
+ pattern_matching_result = 1
664
+
665
+
666
+ else:
667
+ pattern_matching_result = 1
668
+
669
+ if pattern_matching_result == 0:
670
+ return n_1
671
+
672
+ elif pattern_matching_result == 1:
673
+ return None
674
+
675
+
676
+ @staticmethod
677
+ def try_get_variable_measured_as_measurement_type(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> LDNode | None:
678
+ def f(n: LDNode) -> LDNode | None:
679
+ if not LDPropertyValue.validate_fragment_descriptor(n, context):
680
+ return n
681
+
682
+ else:
683
+ return None
684
+
685
+
686
+ return ResizeArray_tryPick(f, lp.GetPropertyNodes(LDDataset.variable_measured(), None, graph, context))
687
+
688
+ @staticmethod
689
+ def get_variable_measured_as_fragment_descriptors(lp: LDNode, graph: LDGraph | None=None, context: LDContext | None=None) -> Array[LDNode]:
690
+ def filter(ldnode: LDNode, context_1: LDContext | None=None) -> bool:
691
+ return LDPropertyValue.validate_fragment_descriptor(ldnode, context_1)
692
+
693
+ return lp.GetPropertyNodes(LDDataset.variable_measured(), filter, graph, context)
694
+
695
+ @staticmethod
696
+ def set_variable_measured_as_string(lp: LDNode, variable_measured: str, context: LDContext | None=None) -> Any:
697
+ return lp.SetProperty(LDDataset.variable_measured(), variable_measured, context)
698
+
699
+ @staticmethod
700
+ def set_variable_measured_as_property_value(lp: LDNode, variable_measured: LDNode, context: LDContext | None=None) -> Any:
701
+ return lp.SetProperty(LDDataset.variable_measured(), variable_measured, context)
702
+
703
+ @staticmethod
704
+ def set_variable_measured_as_property_values(lp: LDNode, variable_measured: Array[LDNode], context: LDContext | None=None) -> Any:
705
+ return lp.SetProperty(LDDataset.variable_measured(), variable_measured, context)
706
+
707
+ @staticmethod
708
+ def gen_idinvesigation(__unit: None=None) -> str:
709
+ return "./"
710
+
711
+ @staticmethod
712
+ def gen_idstudy(identifier: str) -> str:
713
+ return ("studies/" + identifier) + "/"
714
+
715
+ @staticmethod
716
+ def gen_idassay(identifier: str) -> str:
717
+ return ("assays/" + identifier) + "/"
718
+
719
+ @staticmethod
720
+ def validate(lp: LDNode, context: LDContext | None=None) -> bool:
721
+ return lp.HasType(LDDataset.schema_type(), context)
722
+
723
+ @staticmethod
724
+ def validate_investigation(lp: LDNode, context: LDContext | None=None) -> bool:
725
+ class ObjectExpr1578:
726
+ @property
727
+ def Equals(self) -> Callable[[str, str], bool]:
728
+ def _arrow1577(x: str, y: str) -> bool:
729
+ return x == y
730
+
731
+ return _arrow1577
732
+
733
+ @property
734
+ def GetHashCode(self) -> Callable[[str], int]:
735
+ return string_hash
736
+
737
+ return contains("Investigation", lp.AdditionalType, ObjectExpr1578()) if LDDataset.validate(lp, context) else False
738
+
739
+ @staticmethod
740
+ def validate_study(lp: LDNode, context: LDContext | None=None) -> bool:
741
+ class ObjectExpr1580:
742
+ @property
743
+ def Equals(self) -> Callable[[str, str], bool]:
744
+ def _arrow1579(x: str, y: str) -> bool:
745
+ return x == y
746
+
747
+ return _arrow1579
748
+
749
+ @property
750
+ def GetHashCode(self) -> Callable[[str], int]:
751
+ return string_hash
752
+
753
+ return contains("Study", lp.AdditionalType, ObjectExpr1580()) if LDDataset.validate(lp, context) else False
754
+
755
+ @staticmethod
756
+ def validate_assay(lp: LDNode, context: LDContext | None=None) -> bool:
757
+ class ObjectExpr1582:
758
+ @property
759
+ def Equals(self) -> Callable[[str, str], bool]:
760
+ def _arrow1581(x: str, y: str) -> bool:
761
+ return x == y
762
+
763
+ return _arrow1581
764
+
765
+ @property
766
+ def GetHashCode(self) -> Callable[[str], int]:
767
+ return string_hash
768
+
769
+ return contains("Assay", lp.AdditionalType, ObjectExpr1582()) if LDDataset.validate(lp, context) else False
770
+
771
+ @staticmethod
772
+ def create(id: str, identier: str | None=None, creators: Array[LDNode] | None=None, date_created: Any | None=None, date_published: Any | None=None, date_modified: Any | None=None, description: str | None=None, has_parts: Array[LDNode] | None=None, name: str | None=None, citations: Array[LDNode] | None=None, comments: Array[LDNode] | None=None, mentions: Array[LDNode] | None=None, url: str | None=None, abouts: Array[LDNode] | None=None, measurement_method: LDNode | None=None, measurement_technique: LDNode | None=None, variable_measureds: Array[LDNode] | None=None, context: LDContext | None=None) -> LDNode:
773
+ s: LDNode = LDNode(id, [LDDataset.schema_type()], None, context)
774
+ s.SetOptionalProperty(LDDataset.identifier(), identier, context)
775
+ s.SetOptionalProperty(LDDataset.creator(), creators, context)
776
+ s.SetOptionalProperty(LDDataset.date_created(), date_created, context)
777
+ s.SetOptionalProperty(LDDataset.date_published(), date_published, context)
778
+ s.SetOptionalProperty(LDDataset.date_modified(), date_modified, context)
779
+ s.SetOptionalProperty(LDDataset.description(), description, context)
780
+ s.SetOptionalProperty(LDDataset.has_part(), has_parts, context)
781
+ s.SetOptionalProperty(LDDataset.name(), name, context)
782
+ s.SetOptionalProperty(LDDataset.citation(), citations, context)
783
+ s.SetOptionalProperty(LDDataset.comment(), comments, context)
784
+ s.SetOptionalProperty(LDDataset.mentions(), mentions, context)
785
+ s.SetOptionalProperty(LDDataset.url(), url, context)
786
+ s.SetOptionalProperty(LDDataset.about(), abouts, context)
787
+ s.SetOptionalProperty(LDDataset.measurement_method(), measurement_method, context)
788
+ s.SetOptionalProperty(LDDataset.measurement_technique(), measurement_technique, context)
789
+ s.SetOptionalProperty(LDDataset.variable_measured(), variable_measureds, context)
790
+ return s
791
+
792
+ @staticmethod
793
+ def create_investigation(identifier: str, name: str, id: str | None=None, creators: Array[LDNode] | None=None, date_created: Any | None=None, date_published: Any | None=None, date_modified: Any | None=None, description: str | None=None, has_parts: Array[LDNode] | None=None, citations: Array[LDNode] | None=None, comments: Array[LDNode] | None=None, mentions: Array[LDNode] | None=None, url: str | None=None, context: LDContext | None=None) -> LDNode:
794
+ id_1: str = LDDataset.gen_idinvesigation() if (id is None) else id
795
+ s: LDNode = LDDataset.create(id_1, identifier, creators, date_created, date_published, date_modified, description, has_parts, name, citations, comments, mentions, url, None, None, None, None, context)
796
+ s.AdditionalType = ["Investigation"]
797
+ return s
798
+
799
+ @staticmethod
800
+ def create_study(identifier: str, id: str | None=None, creators: Array[LDNode] | None=None, date_created: Any | None=None, date_published: Any | None=None, date_modified: Any | None=None, description: str | None=None, has_parts: Array[LDNode] | None=None, name: str | None=None, citations: Array[LDNode] | None=None, variable_measureds: Array[LDNode] | None=None, comments: Array[LDNode] | None=None, url: str | None=None, abouts: Array[LDNode] | None=None, context: LDContext | None=None) -> LDNode:
801
+ id_1: str = LDDataset.gen_idstudy(identifier) if (id is None) else id
802
+ s: LDNode = LDDataset.create(id_1, identifier, creators, date_created, date_published, date_modified, description, has_parts, name, citations, comments, None, url, abouts, None, None, variable_measureds, context)
803
+ s.AdditionalType = ["Study"]
804
+ return s
805
+
806
+ @staticmethod
807
+ def create_assay(identifier: str, id: str | None=None, name: str | None=None, description: str | None=None, creators: Array[LDNode] | None=None, has_parts: Array[LDNode] | None=None, measurement_method: LDNode | None=None, measurement_technique: LDNode | None=None, variable_measureds: Array[LDNode] | None=None, abouts: Array[LDNode] | None=None, comments: Array[LDNode] | None=None, context: LDContext | None=None) -> LDNode:
808
+ id_1: str = LDDataset.gen_idassay(identifier) if (id is None) else id
809
+ s: LDNode = LDDataset.create(id_1, identifier, creators, None, None, None, description, has_parts, name, None, comments, None, None, abouts, measurement_method, measurement_technique, variable_measureds, context)
810
+ s.AdditionalType = ["Assay"]
811
+ return s
812
+
813
+
814
+ LDDataset_reflection = _expr1585
815
+
816
+ __all__ = ["LDDataset_reflection"]
817
+