@mat3ra/esse 2026.5.18-2 → 2026.5.27-0

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 (383) hide show
  1. package/dist/js/esse/JSONSchemasGenerator.d.ts +2 -1
  2. package/dist/js/esse/JSONSchemasGenerator.js +1 -1
  3. package/dist/js/esse/JSONSchemasInterface.d.ts +1 -1
  4. package/dist/js/esse/JSONSchemasInterface.js +1 -1
  5. package/dist/js/esse/JSONSchemasInterfaceServer.js +3 -2
  6. package/dist/js/esse/schemaUtils.d.ts +1 -1
  7. package/dist/js/esse/schemaUtils.js +2 -1
  8. package/dist/js/esse/server/utils.d.ts +12 -0
  9. package/dist/js/esse/server/utils.js +68 -0
  10. package/dist/js/esse/utils.d.ts +0 -11
  11. package/dist/js/esse/utils.js +3 -60
  12. package/dist/js/example/job.json +38 -11
  13. package/dist/js/example/material.json +7 -1
  14. package/dist/js/example/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +35 -5
  15. package/dist/js/example/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +28 -4
  16. package/dist/js/example/materials_category/defective_structures/two_dimensional/adatom/configuration.json +28 -4
  17. package/dist/js/example/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +35 -5
  18. package/dist/js/example/materials_category/defective_structures/two_dimensional/island/configuration.json +42 -6
  19. package/dist/js/example/materials_category/defective_structures/two_dimensional/terrace/configuration.json +42 -6
  20. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +14 -2
  21. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +14 -2
  22. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +14 -2
  23. package/dist/js/example/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json +7 -1
  24. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanoribbon.json +21 -3
  25. package/dist/js/example/materials_category/pristine_structures/two_dimensional/nanotape.json +14 -2
  26. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab.json +14 -2
  27. package/dist/js/example/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +14 -2
  28. package/dist/js/example/materials_category/processed_structures/two_dimensional/passivation/configuration.json +28 -4
  29. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +7 -1
  30. package/dist/js/example/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +7 -1
  31. package/dist/js/example/materials_category_components/entities/core/three_dimensional/crystal.json +7 -1
  32. package/dist/js/example/materials_category_components/entities/core/two_dimensional/vacuum.json +7 -1
  33. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +7 -1
  34. package/dist/js/example/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +7 -1
  35. package/dist/js/example/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +28 -4
  36. package/dist/js/example/materials_category_components/operations/core/combinations/merge.json +14 -2
  37. package/dist/js/example/materials_category_components/operations/core/combinations/stack.json +14 -2
  38. package/dist/js/example/materials_category_components/operations/core/modifications/perturb.json +7 -1
  39. package/dist/js/example/model.json +2 -1
  40. package/dist/js/example/software/application.json +1 -0
  41. package/dist/js/example/software/executable.json +3 -4
  42. package/dist/js/example/software/flavor.json +9 -2
  43. package/dist/js/example/software/template.json +5 -8
  44. package/dist/js/example/software_directory/modeling/espresso.json +2 -1
  45. package/dist/js/example/software_directory/modeling/nwchem.json +3 -1
  46. package/dist/js/example/software_directory/modeling/unit/execution.json +57 -15
  47. package/dist/js/example/software_directory/modeling/vasp.json +2 -1
  48. package/dist/js/example/software_directory/scripting/jupyter_lab.json +2 -1
  49. package/dist/js/example/software_directory/scripting/python.json +2 -1
  50. package/dist/js/example/software_directory/scripting/shell.json +2 -1
  51. package/dist/js/example/software_directory/scripting/unit/execution.json +57 -15
  52. package/dist/js/example/system/runtime_items.json +14 -0
  53. package/dist/js/example/workflow/subworkflow.json +32 -10
  54. package/dist/js/example/workflow/unit/assignment.json +5 -1
  55. package/dist/js/example/workflow/unit/condition.json +5 -1
  56. package/dist/js/example/workflow/unit/execution.json +29 -9
  57. package/dist/js/example/workflow/unit/io/api.json +1 -0
  58. package/dist/js/example/workflow/unit/io/db_collection.json +5 -0
  59. package/dist/js/example/workflow/unit/io/db_ids.json +6 -0
  60. package/dist/js/example/workflow/unit/io/object_storage.json +2 -1
  61. package/dist/js/example/workflow/unit/io.json +22 -2
  62. package/dist/js/example/workflow/unit/map.json +5 -1
  63. package/dist/js/example/workflow/unit/reduce.json +5 -1
  64. package/dist/js/example/workflow.json +38 -11
  65. package/dist/js/schema/apse/file/applications/espresso/7.2/pw.x/atomic_species.json +5 -0
  66. package/dist/js/schema/apse/file/applications/espresso/7.2/pw.x.json +5 -0
  67. package/dist/js/schema/context_providers_directory/by_application/nwchem_total_energy_context_provider.json +7 -1
  68. package/dist/js/schema/context_providers_directory/by_application/qe_neb_context_provider.json +164 -6
  69. package/dist/js/schema/context_providers_directory/by_application/qe_pwx_base_context_provider.json +10 -0
  70. package/dist/js/schema/context_providers_directory/by_application/qe_pwx_context_provider.json +17 -1
  71. package/dist/js/schema/context_providers_directory/by_application/vasp_context_provider.json +7 -1
  72. package/dist/js/schema/context_providers_directory/by_application/vasp_neb_context_provider.json +7 -1
  73. package/dist/js/schema/context_providers_directory/collinear_magnetization_context_provider.json +14 -0
  74. package/dist/js/schema/context_providers_directory/non_collinear_magnetization_context_provider.json +7 -0
  75. package/dist/js/schema/context_providers_directory/points_grid_data_provider.json +23 -6
  76. package/dist/js/schema/context_providers_directory/points_path_data_provider.json +6 -2
  77. package/dist/js/schema/context_providers_directory/points_path_data_provider_rendering.json +32 -0
  78. package/dist/js/schema/core/primitive/linked_list/named_node.json +2 -1
  79. package/dist/js/schema/core/primitive/linked_list/named_node_in_group.json +2 -1
  80. package/dist/js/schema/core/primitive/linked_list.json +4 -2
  81. package/dist/js/schema/in_memory_entity/has_consistency_check_has_metadata_named_defaultable.json +3 -0
  82. package/dist/js/schema/in_memory_entity/named.json +3 -0
  83. package/dist/js/schema/in_memory_entity/named_defaultable.json +3 -0
  84. package/dist/js/schema/in_memory_entity/named_defaultable_has_metadata.json +3 -0
  85. package/dist/js/schema/in_memory_entity/named_defaultable_runtime_items.json +3 -0
  86. package/dist/js/schema/job/base.json +133 -132
  87. package/dist/js/schema/job/compute.json +1 -1
  88. package/dist/js/schema/job/compute_property.json +182 -0
  89. package/dist/js/schema/job.json +3829 -4566
  90. package/dist/js/schema/material/material_properties.json +736 -0
  91. package/dist/js/schema/material/metadata/boundary_conditions.json +32 -0
  92. package/dist/js/schema/material/metadata/bulk_properties.json +13 -0
  93. package/dist/js/schema/material/metadata/slab_properties.json +41 -0
  94. package/dist/js/schema/material/metadata.json +101 -0
  95. package/dist/js/schema/material.json +117 -27
  96. package/dist/js/schema/materials_category/compound_pristine_structures/two_dimensional/interface/configuration.json +1069 -268
  97. package/dist/js/schema/materials_category/defective_structures/one_dimensional/grain_boundary_linear/configuration.json +1069 -268
  98. package/dist/js/schema/materials_category/defective_structures/two_dimensional/adatom/configuration.json +464 -108
  99. package/dist/js/schema/materials_category/defective_structures/two_dimensional/grain_boundary_planar/configuration.json +1069 -268
  100. package/dist/js/schema/materials_category/defective_structures/two_dimensional/island/configuration.json +698 -164
  101. package/dist/js/schema/materials_category/defective_structures/two_dimensional/terrace/configuration.json +698 -164
  102. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/base_configuration.json +116 -27
  103. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.json +232 -54
  104. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.json +232 -54
  105. package/dist/js/schema/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.json +116 -27
  106. package/dist/js/schema/materials_category/pristine_structures/three_dimensional/ideal_crystal.json +116 -27
  107. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanoribbon.json +348 -81
  108. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/nanotape.json +232 -54
  109. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab.json +232 -54
  110. package/dist/js/schema/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.json +232 -54
  111. package/dist/js/schema/materials_category/processed_structures/two_dimensional/passivation/configuration.json +233 -54
  112. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/crystal_site.json +116 -27
  113. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.json +116 -27
  114. package/dist/js/schema/materials_category_components/entities/auxiliary/zero_dimensional/void_region.json +116 -27
  115. package/dist/js/schema/materials_category_components/entities/core/three_dimensional/crystal.json +116 -27
  116. package/dist/js/schema/materials_category_components/entities/core/two_dimensional/vacuum.json +116 -27
  117. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines.json +116 -27
  118. package/dist/js/schema/materials_category_components/entities/reusable/one_dimensional/crystal_lattice_lines_unique_repeated.json +116 -27
  119. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/crystal_lattice_base.json +116 -27
  120. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.json +116 -27
  121. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/strained_uniform.json +116 -27
  122. package/dist/js/schema/materials_category_components/entities/reusable/three_dimensional/supercell.json +116 -27
  123. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers.json +116 -27
  124. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique.json +116 -27
  125. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/atomic_layers_unique_repeated.json +116 -27
  126. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/crystal_lattice_planes.json +116 -27
  127. package/dist/js/schema/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.json +348 -81
  128. package/dist/js/schema/materials_category_components/operations/core/modifications/perturb.json +117 -27
  129. package/dist/js/schema/method/categorized_method.json +4 -0
  130. package/dist/js/schema/method/unit_method.json +3 -0
  131. package/dist/js/schema/method.json +7 -1
  132. package/dist/js/schema/methods_directory/legacy/localorbital.json +7 -1
  133. package/dist/js/schema/methods_directory/legacy/pseudopotential.json +7 -1
  134. package/dist/js/schema/methods_directory/legacy/regression.json +4 -0
  135. package/dist/js/schema/methods_directory/legacy/unknown.json +7 -1
  136. package/dist/js/schema/methods_directory/mathematical/cg.json +2 -1
  137. package/dist/js/schema/methods_directory/mathematical/davidson.json +2 -1
  138. package/dist/js/schema/methods_directory/mathematical/regression.json +3 -2
  139. package/dist/js/schema/methods_directory/physical/ao/dunning.json +2 -1
  140. package/dist/js/schema/methods_directory/physical/ao/other.json +2 -1
  141. package/dist/js/schema/methods_directory/physical/ao/pople.json +2 -1
  142. package/dist/js/schema/methods_directory/physical/psp.json +2 -1
  143. package/dist/js/schema/methods_directory/physical/pw.json +2 -1
  144. package/dist/js/schema/methods_directory/physical/smearing.json +2 -1
  145. package/dist/js/schema/methods_directory/physical/tetrahedron.json +2 -1
  146. package/dist/js/schema/model/categorized_model.json +5 -0
  147. package/dist/js/schema/model/model_without_method.json +1 -0
  148. package/dist/js/schema/model.json +7 -2
  149. package/dist/js/schema/models_directory/double_hybrid.json +1 -0
  150. package/dist/js/schema/models_directory/gga.json +1 -0
  151. package/dist/js/schema/models_directory/gw.json +1 -0
  152. package/dist/js/schema/models_directory/hybrid.json +1 -0
  153. package/dist/js/schema/models_directory/lda.json +1 -0
  154. package/dist/js/schema/models_directory/legacy/any.json +488 -0
  155. package/dist/js/schema/models_directory/legacy/dft.json +267 -39
  156. package/dist/js/schema/models_directory/legacy/ml.json +10 -9
  157. package/dist/js/schema/models_directory/legacy/unknown.json +10 -9
  158. package/dist/js/schema/models_directory/mgga.json +1 -0
  159. package/dist/js/schema/models_directory/re.json +1 -0
  160. package/dist/js/schema/project.json +3 -0
  161. package/dist/js/schema/properties_directory/non_scalar/workflow.json +3682 -4421
  162. package/dist/js/schema/property/holder.json +3717 -4456
  163. package/dist/js/schema/software/application.json +53 -24
  164. package/dist/js/schema/software/application_properties.json +68 -0
  165. package/dist/js/schema/software/application_with_build_config.json +52 -23
  166. package/dist/js/schema/software/executable.json +67 -108
  167. package/dist/js/schema/software/executable_properties.json +24 -0
  168. package/dist/js/schema/software/flavor.json +90 -128
  169. package/dist/js/schema/software/flavor_properties.json +50 -0
  170. package/dist/js/schema/software/template.json +30 -35
  171. package/dist/js/schema/software/template_properties.json +44 -0
  172. package/dist/js/schema/software_directory/modeling/deepmd.json +48 -19
  173. package/dist/js/schema/software_directory/modeling/lammps.json +47 -18
  174. package/dist/js/schema/software_directory/modeling/nwchem.json +48 -19
  175. package/dist/js/schema/software_directory/modeling/unit/execution.json +2019 -455
  176. package/dist/js/schema/software_directory/modeling/vasp.json +48 -19
  177. package/dist/js/schema/software_directory/scripting/jupyter_lab.json +48 -19
  178. package/dist/js/schema/software_directory/scripting/python.json +48 -19
  179. package/dist/js/schema/software_directory/scripting/shell.json +48 -19
  180. package/dist/js/schema/software_directory/scripting/unit/execution.json +2019 -455
  181. package/dist/js/schema/system/bankable.json +4 -0
  182. package/dist/js/schema/system/creator.json +2 -1
  183. package/dist/js/schema/system/creator_account.json +3 -0
  184. package/dist/js/schema/system/in_set.json +3 -0
  185. package/dist/js/schema/system/name.json +3 -0
  186. package/dist/js/schema/system/owner.json +2 -1
  187. package/dist/js/schema/system/path_entity.json +3 -0
  188. package/dist/js/schema/system/runtime_item.json +17 -0
  189. package/dist/js/schema/system/runtime_items.json +94 -0
  190. package/dist/js/schema/workflow/base.json +4591 -39
  191. package/dist/js/schema/workflow/base_flow.json +1 -1
  192. package/dist/js/schema/workflow/subworkflow/mixin.json +3919 -0
  193. package/dist/js/schema/workflow/subworkflow/unit.json +2365 -1560
  194. package/dist/js/schema/workflow/subworkflow.json +3137 -1852
  195. package/dist/js/schema/workflow/unit/assertion.json +96 -140
  196. package/dist/js/schema/workflow/unit/assignment.json +129 -173
  197. package/dist/js/schema/workflow/unit/base.json +90 -133
  198. package/dist/js/schema/workflow/unit/condition.json +132 -175
  199. package/dist/js/schema/workflow/unit/context/_base.json +20 -0
  200. package/dist/js/schema/workflow/unit/context/_extra_data_material_hash.json +14 -0
  201. package/dist/js/schema/workflow/unit/context/item/boundaryConditions.json +63 -0
  202. package/dist/js/schema/workflow/unit/context/item/collinearMagnetization.json +82 -0
  203. package/dist/js/schema/workflow/unit/context/item/cutoffs.json +38 -0
  204. package/dist/js/schema/workflow/unit/context/item/dynamics.json +48 -0
  205. package/dist/js/schema/workflow/unit/context/item/grid.json +100 -0
  206. package/dist/js/schema/workflow/unit/context/item/hubbard_j.json +59 -0
  207. package/dist/js/schema/workflow/unit/context/item/hubbard_legacy.json +49 -0
  208. package/dist/js/schema/workflow/unit/context/item/hubbard_u.json +57 -0
  209. package/dist/js/schema/workflow/unit/context/item/hubbard_v.json +64 -0
  210. package/dist/js/schema/workflow/unit/context/item/input.json +712 -0
  211. package/dist/js/schema/workflow/unit/context/item/mlSettings.json +43 -0
  212. package/dist/js/schema/workflow/unit/context/item/mlTrainTestSplit.json +37 -0
  213. package/dist/js/schema/workflow/unit/context/item/neb.json +35 -0
  214. package/dist/js/schema/workflow/unit/context/item/nonCollinearMagnetization.json +150 -0
  215. package/dist/js/schema/workflow/unit/context/item/path.json +62 -0
  216. package/dist/js/schema/workflow/unit/context/item.json +1594 -0
  217. package/dist/js/schema/workflow/unit/execution.json +1928 -423
  218. package/dist/js/schema/workflow/unit/input/_input.json +74 -12
  219. package/dist/js/schema/workflow/unit/input/_inputItem.json +70 -10
  220. package/dist/js/schema/workflow/unit/input/_inputItemId.json +3 -1
  221. package/dist/js/schema/workflow/unit/io/api.json +5 -1
  222. package/dist/js/schema/workflow/unit/io/db_collection.json +24 -0
  223. package/dist/js/schema/workflow/unit/io/db_ids.json +22 -0
  224. package/dist/js/schema/workflow/unit/io/object_storage.json +5 -1
  225. package/dist/js/schema/workflow/unit/io.json +182 -253
  226. package/dist/js/schema/workflow/unit/map.json +134 -177
  227. package/dist/js/schema/workflow/unit/mixins/assertion.json +23 -0
  228. package/dist/js/schema/workflow/unit/mixins/assignment.json +57 -0
  229. package/dist/js/schema/workflow/unit/mixins/base.json +50 -0
  230. package/dist/js/schema/workflow/unit/mixins/condition.json +61 -0
  231. package/dist/js/schema/workflow/unit/mixins/execution.json +1998 -0
  232. package/dist/js/schema/workflow/unit/mixins/io.json +131 -0
  233. package/dist/js/schema/workflow/unit/mixins/map.json +60 -0
  234. package/dist/js/schema/workflow/unit/mixins/processing.json +27 -0
  235. package/dist/js/schema/workflow/unit/mixins/reduce.json +43 -0
  236. package/dist/js/schema/workflow/unit/mixins/subworkflow.json +11 -0
  237. package/dist/js/schema/workflow/unit/reduce.json +117 -160
  238. package/dist/js/schema/workflow/unit/subworkflow.json +91 -134
  239. package/dist/js/schema/workflow/unit.json +285 -2477
  240. package/dist/js/schema/workflow.json +3684 -4422
  241. package/dist/js/schemas.json +1 -1
  242. package/dist/js/scripts/compileTs.js +1 -1
  243. package/dist/js/scripts/setSchemaIds.js +2 -1
  244. package/dist/js/types.d.ts +27163 -15301
  245. package/dist/js/types.js +5 -5
  246. package/dist/js/utils/ajv.js +5 -4
  247. package/dist/js/utils/common.js +3 -2
  248. package/dist/js/utils/filesystem.js +3 -2
  249. package/example/material.json +7 -1
  250. package/example/model.json +2 -1
  251. package/example/software/application.json +1 -0
  252. package/example/software/executable.json +3 -4
  253. package/example/software/flavor.json +9 -2
  254. package/example/software/template.json +5 -8
  255. package/example/software_directory/modeling/espresso.json +2 -1
  256. package/example/software_directory/modeling/nwchem.json +4 -2
  257. package/example/software_directory/modeling/unit/execution.json +17 -2
  258. package/example/software_directory/modeling/vasp.json +2 -1
  259. package/example/software_directory/scripting/jupyter-lab.json +2 -1
  260. package/example/software_directory/scripting/python.json +2 -1
  261. package/example/software_directory/scripting/shell.json +2 -1
  262. package/example/software_directory/scripting/unit/execution.json +17 -2
  263. package/example/system/runtime_items.json +14 -0
  264. package/example/workflow/unit/assignment.json +5 -1
  265. package/example/workflow/unit/condition.json +5 -1
  266. package/example/workflow/unit/execution.json +7 -3
  267. package/example/workflow/unit/io/api.json +1 -0
  268. package/example/workflow/unit/io/db_collection.json +5 -0
  269. package/example/workflow/unit/io/db_ids.json +6 -0
  270. package/example/workflow/unit/io/object_storage.json +2 -1
  271. package/example/workflow/unit/io.json +9 -29
  272. package/example/workflow/unit/map.json +5 -1
  273. package/example/workflow/unit/reduce.json +5 -1
  274. package/example/workflow.json +6 -1
  275. package/package.json +2 -1
  276. package/schema/apse/file/applications/espresso/7.2/pw.x/atomic_species.json +6 -1
  277. package/schema/context_providers_directory/by_application/nwchem_total_energy_context_provider.json +7 -1
  278. package/schema/context_providers_directory/by_application/qe_neb_context_provider.json +12 -6
  279. package/schema/context_providers_directory/by_application/qe_pwx_context_provider.json +10 -1
  280. package/schema/context_providers_directory/by_application/vasp_context_provider.json +7 -1
  281. package/schema/context_providers_directory/by_application/vasp_neb_context_provider.json +7 -1
  282. package/schema/context_providers_directory/collinear_magnetization_context_provider.json +18 -4
  283. package/schema/context_providers_directory/non_collinear_magnetization_context_provider.json +7 -0
  284. package/schema/context_providers_directory/points_grid_data_provider.json +24 -7
  285. package/schema/context_providers_directory/points_path_data_provider.json +7 -3
  286. package/schema/context_providers_directory/points_path_data_provider_rendering.json +32 -0
  287. package/schema/job/base.json +4 -5
  288. package/schema/job/compute.json +1 -1
  289. package/schema/job/compute_property.json +15 -0
  290. package/schema/material/material_properties.json +65 -0
  291. package/schema/material/metadata/boundary_conditions.json +24 -0
  292. package/schema/material/metadata/bulk_properties.json +13 -0
  293. package/schema/material/metadata/slab_properties.json +41 -0
  294. package/schema/material/metadata.json +27 -0
  295. package/schema/material.json +5 -57
  296. package/schema/method.json +7 -1
  297. package/schema/model.json +0 -1
  298. package/schema/models_directory/legacy/any.json +20 -0
  299. package/schema/models_directory/legacy/dft.json +63 -12
  300. package/schema/models_directory/legacy/ml.json +10 -7
  301. package/schema/models_directory/legacy/unknown.json +10 -7
  302. package/schema/software/application.json +4 -35
  303. package/schema/software/application_properties.json +68 -0
  304. package/schema/software/executable.json +5 -23
  305. package/schema/software/executable_properties.json +24 -0
  306. package/schema/software/flavor.json +6 -28
  307. package/schema/software/flavor_properties.json +33 -0
  308. package/schema/software/template.json +2 -26
  309. package/schema/software/template_properties.json +44 -0
  310. package/schema/system/bankable.json +5 -1
  311. package/schema/system/creator.json +4 -1
  312. package/schema/system/creator_account.json +4 -1
  313. package/schema/system/in_set.json +4 -1
  314. package/schema/system/name.json +4 -1
  315. package/schema/system/owner.json +4 -1
  316. package/schema/system/runtime_item.json +17 -0
  317. package/schema/system/runtime_items.json +42 -0
  318. package/schema/workflow/base.json +17 -17
  319. package/schema/workflow/subworkflow/mixin.json +48 -0
  320. package/schema/workflow/subworkflow/unit.json +0 -6
  321. package/schema/workflow/subworkflow.json +4 -31
  322. package/schema/workflow/unit/assertion.json +2 -16
  323. package/schema/workflow/unit/assignment.json +2 -34
  324. package/schema/workflow/unit/base.json +6 -51
  325. package/schema/workflow/unit/condition.json +2 -38
  326. package/schema/workflow/unit/context/_base.json +20 -0
  327. package/schema/workflow/unit/context/_extra_data_material_hash.json +14 -0
  328. package/schema/workflow/unit/context/item/boundaryConditions.json +27 -0
  329. package/schema/workflow/unit/context/item/collinearMagnetization.json +27 -0
  330. package/schema/workflow/unit/context/item/cutoffs.json +20 -0
  331. package/schema/workflow/unit/context/item/dynamics.json +20 -0
  332. package/schema/workflow/unit/context/item/grid.json +31 -0
  333. package/schema/workflow/unit/context/item/hubbard_j.json +20 -0
  334. package/schema/workflow/unit/context/item/hubbard_legacy.json +20 -0
  335. package/schema/workflow/unit/context/item/hubbard_u.json +27 -0
  336. package/schema/workflow/unit/context/item/hubbard_v.json +20 -0
  337. package/schema/workflow/unit/context/item/input.json +47 -0
  338. package/schema/workflow/unit/context/item/mlSettings.json +20 -0
  339. package/schema/workflow/unit/context/item/mlTrainTestSplit.json +20 -0
  340. package/schema/workflow/unit/context/item/neb.json +20 -0
  341. package/schema/workflow/unit/context/item/nonCollinearMagnetization.json +27 -0
  342. package/schema/workflow/unit/context/item/path.json +33 -0
  343. package/schema/workflow/unit/context/item.json +55 -0
  344. package/schema/workflow/unit/execution.json +4 -25
  345. package/schema/workflow/unit/input/_input.json +1 -1
  346. package/schema/workflow/unit/input/_inputItem.json +9 -9
  347. package/schema/workflow/unit/input/_inputItemId.json +3 -1
  348. package/schema/workflow/unit/io/api.json +6 -2
  349. package/schema/workflow/unit/io/db_collection.json +24 -0
  350. package/schema/workflow/unit/io/db_ids.json +22 -0
  351. package/schema/workflow/unit/io/object_storage.json +6 -2
  352. package/schema/workflow/unit/io.json +2 -39
  353. package/schema/workflow/unit/map.json +2 -53
  354. package/schema/workflow/unit/mixins/assertion.json +23 -0
  355. package/schema/workflow/unit/mixins/assignment.json +42 -0
  356. package/schema/workflow/unit/mixins/base.json +50 -0
  357. package/schema/workflow/unit/mixins/condition.json +46 -0
  358. package/schema/workflow/unit/mixins/execution.json +49 -0
  359. package/schema/workflow/unit/mixins/io.json +46 -0
  360. package/schema/workflow/unit/mixins/map.json +61 -0
  361. package/schema/workflow/unit/{processing.json → mixins/processing.json} +3 -7
  362. package/schema/workflow/unit/mixins/reduce.json +44 -0
  363. package/schema/workflow/unit/mixins/subworkflow.json +12 -0
  364. package/schema/workflow/unit/reduce.json +2 -36
  365. package/schema/workflow/unit/subworkflow.json +4 -6
  366. package/schema/workflow/unit.json +1 -19
  367. package/schema/workflow.json +19 -15
  368. package/src/html/index.html +2 -1
  369. package/src/js/esse/JSONSchemasGenerator.ts +2 -1
  370. package/src/js/esse/JSONSchemasInterface.ts +1 -1
  371. package/src/js/esse/schemaUtils.ts +1 -1
  372. package/src/js/esse/server/utils.ts +82 -0
  373. package/src/js/esse/utils.ts +0 -74
  374. package/src/js/scripts/compileTs.ts +1 -1
  375. package/src/js/scripts/setSchemaIds.ts +1 -0
  376. package/src/js/utils/ajv.ts +1 -1
  377. package/dist/js/example/workflow/unit/io/db.json +0 -15
  378. package/dist/js/example/workflow/unit/processing.json +0 -13
  379. package/dist/js/schema/workflow/unit/io/db.json +0 -40
  380. package/dist/js/schema/workflow/unit/processing.json +0 -242
  381. package/example/workflow/unit/io/db.json +0 -15
  382. package/example/workflow/unit/processing.json +0 -13
  383. package/schema/workflow/unit/io/db.json +0 -40
@@ -34,9 +34,36 @@
34
34
  "type": "object",
35
35
  "required": [
36
36
  "basis",
37
- "lattice"
37
+ "lattice",
38
+ "metadata",
39
+ "name"
38
40
  ],
39
41
  "properties": {
42
+ "_id": {
43
+ "description": "entity identity",
44
+ "type": "string"
45
+ },
46
+ "slug": {
47
+ "description": "entity slug",
48
+ "type": "string"
49
+ },
50
+ "systemName": {
51
+ "type": "string"
52
+ },
53
+ "schemaVersion": {
54
+ "description": "entity's schema version. Used to distinct between different schemas.",
55
+ "type": "string",
56
+ "default": "2022.8.16"
57
+ },
58
+ "name": {
59
+ "description": "entity name",
60
+ "type": "string"
61
+ },
62
+ "isDefault": {
63
+ "description": "Identifies that entity is defaultable",
64
+ "type": "boolean",
65
+ "default": false
66
+ },
40
67
  "formula": {
41
68
  "description": "reduced chemical formula",
42
69
  "type": "string"
@@ -760,33 +787,95 @@
760
787
  }
761
788
  }
762
789
  },
763
- "_id": {
764
- "description": "entity identity",
765
- "type": "string"
766
- },
767
- "slug": {
768
- "description": "entity slug",
769
- "type": "string"
770
- },
771
- "systemName": {
772
- "type": "string"
773
- },
774
- "schemaVersion": {
775
- "description": "entity's schema version. Used to distinct between different schemas.",
776
- "type": "string",
777
- "default": "2022.8.16"
778
- },
779
- "name": {
780
- "description": "entity name",
781
- "type": "string"
782
- },
783
- "isDefault": {
784
- "description": "Identifies that entity is defaultable",
785
- "type": "boolean",
786
- "default": false
787
- },
788
790
  "metadata": {
789
- "type": "object"
791
+ "type": "object",
792
+ "default": {},
793
+ "anyOf": [
794
+ {
795
+ "$schema": "http://json-schema.org/draft-07/schema#",
796
+ "title": "material metadata boundary conditions",
797
+ "type": "object",
798
+ "properties": {
799
+ "boundaryConditions": {
800
+ "type": "object",
801
+ "required": [
802
+ "type",
803
+ "offset"
804
+ ],
805
+ "properties": {
806
+ "type": {
807
+ "type": "string",
808
+ "enum": [
809
+ "pbc",
810
+ "bc1",
811
+ "bc2",
812
+ "bc3"
813
+ ],
814
+ "default": "pbc",
815
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
816
+ },
817
+ "offset": {
818
+ "type": "number"
819
+ }
820
+ }
821
+ }
822
+ },
823
+ "additionalProperties": true
824
+ },
825
+ {
826
+ "$schema": "http://json-schema.org/draft-07/schema#",
827
+ "title": "material metadata slab properties",
828
+ "type": "object",
829
+ "properties": {
830
+ "isSlab": {
831
+ "description": "Whether the material was created as a surface slab",
832
+ "type": "boolean"
833
+ },
834
+ "h": {
835
+ "description": "Miller index h used to generate the slab",
836
+ "type": "number"
837
+ },
838
+ "k": {
839
+ "description": "Miller index k used to generate the slab",
840
+ "type": "number"
841
+ },
842
+ "l": {
843
+ "description": "Miller index l used to generate the slab",
844
+ "type": "number"
845
+ },
846
+ "thickness": {
847
+ "description": "Slab thickness in number of layers",
848
+ "type": "number"
849
+ },
850
+ "vacuumRatio": {
851
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
852
+ "type": "number"
853
+ },
854
+ "vx": {
855
+ "description": "Termination vector component along a",
856
+ "type": "number"
857
+ },
858
+ "vy": {
859
+ "description": "Termination vector component along b",
860
+ "type": "number"
861
+ }
862
+ },
863
+ "additionalProperties": true
864
+ },
865
+ {
866
+ "$schema": "http://json-schema.org/draft-07/schema#",
867
+ "title": "material metadata bulk properties",
868
+ "type": "object",
869
+ "properties": {
870
+ "bulkId": {
871
+ "description": "Source bulk material id used to generate the slab",
872
+ "type": "string"
873
+ }
874
+ },
875
+ "additionalProperties": true
876
+ }
877
+ ],
878
+ "additionalProperties": true
790
879
  }
791
880
  }
792
881
  }
@@ -27,9 +27,36 @@
27
27
  "type": "object",
28
28
  "required": [
29
29
  "basis",
30
- "lattice"
30
+ "lattice",
31
+ "metadata",
32
+ "name"
31
33
  ],
32
34
  "properties": {
35
+ "_id": {
36
+ "description": "entity identity",
37
+ "type": "string"
38
+ },
39
+ "slug": {
40
+ "description": "entity slug",
41
+ "type": "string"
42
+ },
43
+ "systemName": {
44
+ "type": "string"
45
+ },
46
+ "schemaVersion": {
47
+ "description": "entity's schema version. Used to distinct between different schemas.",
48
+ "type": "string",
49
+ "default": "2022.8.16"
50
+ },
51
+ "name": {
52
+ "description": "entity name",
53
+ "type": "string"
54
+ },
55
+ "isDefault": {
56
+ "description": "Identifies that entity is defaultable",
57
+ "type": "boolean",
58
+ "default": false
59
+ },
33
60
  "formula": {
34
61
  "description": "reduced chemical formula",
35
62
  "type": "string"
@@ -753,33 +780,95 @@
753
780
  }
754
781
  }
755
782
  },
756
- "_id": {
757
- "description": "entity identity",
758
- "type": "string"
759
- },
760
- "slug": {
761
- "description": "entity slug",
762
- "type": "string"
763
- },
764
- "systemName": {
765
- "type": "string"
766
- },
767
- "schemaVersion": {
768
- "description": "entity's schema version. Used to distinct between different schemas.",
769
- "type": "string",
770
- "default": "2022.8.16"
771
- },
772
- "name": {
773
- "description": "entity name",
774
- "type": "string"
775
- },
776
- "isDefault": {
777
- "description": "Identifies that entity is defaultable",
778
- "type": "boolean",
779
- "default": false
780
- },
781
783
  "metadata": {
782
- "type": "object"
784
+ "type": "object",
785
+ "default": {},
786
+ "anyOf": [
787
+ {
788
+ "$schema": "http://json-schema.org/draft-07/schema#",
789
+ "title": "material metadata boundary conditions",
790
+ "type": "object",
791
+ "properties": {
792
+ "boundaryConditions": {
793
+ "type": "object",
794
+ "required": [
795
+ "type",
796
+ "offset"
797
+ ],
798
+ "properties": {
799
+ "type": {
800
+ "type": "string",
801
+ "enum": [
802
+ "pbc",
803
+ "bc1",
804
+ "bc2",
805
+ "bc3"
806
+ ],
807
+ "default": "pbc",
808
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
809
+ },
810
+ "offset": {
811
+ "type": "number"
812
+ }
813
+ }
814
+ }
815
+ },
816
+ "additionalProperties": true
817
+ },
818
+ {
819
+ "$schema": "http://json-schema.org/draft-07/schema#",
820
+ "title": "material metadata slab properties",
821
+ "type": "object",
822
+ "properties": {
823
+ "isSlab": {
824
+ "description": "Whether the material was created as a surface slab",
825
+ "type": "boolean"
826
+ },
827
+ "h": {
828
+ "description": "Miller index h used to generate the slab",
829
+ "type": "number"
830
+ },
831
+ "k": {
832
+ "description": "Miller index k used to generate the slab",
833
+ "type": "number"
834
+ },
835
+ "l": {
836
+ "description": "Miller index l used to generate the slab",
837
+ "type": "number"
838
+ },
839
+ "thickness": {
840
+ "description": "Slab thickness in number of layers",
841
+ "type": "number"
842
+ },
843
+ "vacuumRatio": {
844
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
845
+ "type": "number"
846
+ },
847
+ "vx": {
848
+ "description": "Termination vector component along a",
849
+ "type": "number"
850
+ },
851
+ "vy": {
852
+ "description": "Termination vector component along b",
853
+ "type": "number"
854
+ }
855
+ },
856
+ "additionalProperties": true
857
+ },
858
+ {
859
+ "$schema": "http://json-schema.org/draft-07/schema#",
860
+ "title": "material metadata bulk properties",
861
+ "type": "object",
862
+ "properties": {
863
+ "bulkId": {
864
+ "description": "Source bulk material id used to generate the slab",
865
+ "type": "string"
866
+ }
867
+ },
868
+ "additionalProperties": true
869
+ }
870
+ ],
871
+ "additionalProperties": true
783
872
  }
784
873
  }
785
874
  },
@@ -342,9 +342,36 @@
342
342
  "type": "object",
343
343
  "required": [
344
344
  "basis",
345
- "lattice"
345
+ "lattice",
346
+ "metadata",
347
+ "name"
346
348
  ],
347
349
  "properties": {
350
+ "_id": {
351
+ "description": "entity identity",
352
+ "type": "string"
353
+ },
354
+ "slug": {
355
+ "description": "entity slug",
356
+ "type": "string"
357
+ },
358
+ "systemName": {
359
+ "type": "string"
360
+ },
361
+ "schemaVersion": {
362
+ "description": "entity's schema version. Used to distinct between different schemas.",
363
+ "type": "string",
364
+ "default": "2022.8.16"
365
+ },
366
+ "name": {
367
+ "description": "entity name",
368
+ "type": "string"
369
+ },
370
+ "isDefault": {
371
+ "description": "Identifies that entity is defaultable",
372
+ "type": "boolean",
373
+ "default": false
374
+ },
348
375
  "formula": {
349
376
  "description": "reduced chemical formula",
350
377
  "type": "string"
@@ -1068,33 +1095,95 @@
1068
1095
  }
1069
1096
  }
1070
1097
  },
1071
- "_id": {
1072
- "description": "entity identity",
1073
- "type": "string"
1074
- },
1075
- "slug": {
1076
- "description": "entity slug",
1077
- "type": "string"
1078
- },
1079
- "systemName": {
1080
- "type": "string"
1081
- },
1082
- "schemaVersion": {
1083
- "description": "entity's schema version. Used to distinct between different schemas.",
1084
- "type": "string",
1085
- "default": "2022.8.16"
1086
- },
1087
- "name": {
1088
- "description": "entity name",
1089
- "type": "string"
1090
- },
1091
- "isDefault": {
1092
- "description": "Identifies that entity is defaultable",
1093
- "type": "boolean",
1094
- "default": false
1095
- },
1096
1098
  "metadata": {
1097
- "type": "object"
1099
+ "type": "object",
1100
+ "default": {},
1101
+ "anyOf": [
1102
+ {
1103
+ "$schema": "http://json-schema.org/draft-07/schema#",
1104
+ "title": "material metadata boundary conditions",
1105
+ "type": "object",
1106
+ "properties": {
1107
+ "boundaryConditions": {
1108
+ "type": "object",
1109
+ "required": [
1110
+ "type",
1111
+ "offset"
1112
+ ],
1113
+ "properties": {
1114
+ "type": {
1115
+ "type": "string",
1116
+ "enum": [
1117
+ "pbc",
1118
+ "bc1",
1119
+ "bc2",
1120
+ "bc3"
1121
+ ],
1122
+ "default": "pbc",
1123
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
1124
+ },
1125
+ "offset": {
1126
+ "type": "number"
1127
+ }
1128
+ }
1129
+ }
1130
+ },
1131
+ "additionalProperties": true
1132
+ },
1133
+ {
1134
+ "$schema": "http://json-schema.org/draft-07/schema#",
1135
+ "title": "material metadata slab properties",
1136
+ "type": "object",
1137
+ "properties": {
1138
+ "isSlab": {
1139
+ "description": "Whether the material was created as a surface slab",
1140
+ "type": "boolean"
1141
+ },
1142
+ "h": {
1143
+ "description": "Miller index h used to generate the slab",
1144
+ "type": "number"
1145
+ },
1146
+ "k": {
1147
+ "description": "Miller index k used to generate the slab",
1148
+ "type": "number"
1149
+ },
1150
+ "l": {
1151
+ "description": "Miller index l used to generate the slab",
1152
+ "type": "number"
1153
+ },
1154
+ "thickness": {
1155
+ "description": "Slab thickness in number of layers",
1156
+ "type": "number"
1157
+ },
1158
+ "vacuumRatio": {
1159
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
1160
+ "type": "number"
1161
+ },
1162
+ "vx": {
1163
+ "description": "Termination vector component along a",
1164
+ "type": "number"
1165
+ },
1166
+ "vy": {
1167
+ "description": "Termination vector component along b",
1168
+ "type": "number"
1169
+ }
1170
+ },
1171
+ "additionalProperties": true
1172
+ },
1173
+ {
1174
+ "$schema": "http://json-schema.org/draft-07/schema#",
1175
+ "title": "material metadata bulk properties",
1176
+ "type": "object",
1177
+ "properties": {
1178
+ "bulkId": {
1179
+ "description": "Source bulk material id used to generate the slab",
1180
+ "type": "string"
1181
+ }
1182
+ },
1183
+ "additionalProperties": true
1184
+ }
1185
+ ],
1186
+ "additionalProperties": true
1098
1187
  }
1099
1188
  }
1100
1189
  },
@@ -15,9 +15,36 @@
15
15
  "type": "object",
16
16
  "required": [
17
17
  "basis",
18
- "lattice"
18
+ "lattice",
19
+ "metadata",
20
+ "name"
19
21
  ],
20
22
  "properties": {
23
+ "_id": {
24
+ "description": "entity identity",
25
+ "type": "string"
26
+ },
27
+ "slug": {
28
+ "description": "entity slug",
29
+ "type": "string"
30
+ },
31
+ "systemName": {
32
+ "type": "string"
33
+ },
34
+ "schemaVersion": {
35
+ "description": "entity's schema version. Used to distinct between different schemas.",
36
+ "type": "string",
37
+ "default": "2022.8.16"
38
+ },
39
+ "name": {
40
+ "description": "entity name",
41
+ "type": "string"
42
+ },
43
+ "isDefault": {
44
+ "description": "Identifies that entity is defaultable",
45
+ "type": "boolean",
46
+ "default": false
47
+ },
21
48
  "formula": {
22
49
  "description": "reduced chemical formula",
23
50
  "type": "string"
@@ -741,33 +768,95 @@
741
768
  }
742
769
  }
743
770
  },
744
- "_id": {
745
- "description": "entity identity",
746
- "type": "string"
747
- },
748
- "slug": {
749
- "description": "entity slug",
750
- "type": "string"
751
- },
752
- "systemName": {
753
- "type": "string"
754
- },
755
- "schemaVersion": {
756
- "description": "entity's schema version. Used to distinct between different schemas.",
757
- "type": "string",
758
- "default": "2022.8.16"
759
- },
760
- "name": {
761
- "description": "entity name",
762
- "type": "string"
763
- },
764
- "isDefault": {
765
- "description": "Identifies that entity is defaultable",
766
- "type": "boolean",
767
- "default": false
768
- },
769
771
  "metadata": {
770
- "type": "object"
772
+ "type": "object",
773
+ "default": {},
774
+ "anyOf": [
775
+ {
776
+ "$schema": "http://json-schema.org/draft-07/schema#",
777
+ "title": "material metadata boundary conditions",
778
+ "type": "object",
779
+ "properties": {
780
+ "boundaryConditions": {
781
+ "type": "object",
782
+ "required": [
783
+ "type",
784
+ "offset"
785
+ ],
786
+ "properties": {
787
+ "type": {
788
+ "type": "string",
789
+ "enum": [
790
+ "pbc",
791
+ "bc1",
792
+ "bc2",
793
+ "bc3"
794
+ ],
795
+ "default": "pbc",
796
+ "description": "If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."
797
+ },
798
+ "offset": {
799
+ "type": "number"
800
+ }
801
+ }
802
+ }
803
+ },
804
+ "additionalProperties": true
805
+ },
806
+ {
807
+ "$schema": "http://json-schema.org/draft-07/schema#",
808
+ "title": "material metadata slab properties",
809
+ "type": "object",
810
+ "properties": {
811
+ "isSlab": {
812
+ "description": "Whether the material was created as a surface slab",
813
+ "type": "boolean"
814
+ },
815
+ "h": {
816
+ "description": "Miller index h used to generate the slab",
817
+ "type": "number"
818
+ },
819
+ "k": {
820
+ "description": "Miller index k used to generate the slab",
821
+ "type": "number"
822
+ },
823
+ "l": {
824
+ "description": "Miller index l used to generate the slab",
825
+ "type": "number"
826
+ },
827
+ "thickness": {
828
+ "description": "Slab thickness in number of layers",
829
+ "type": "number"
830
+ },
831
+ "vacuumRatio": {
832
+ "description": "Vacuum fraction used when scaling the out-of-plane lattice vector",
833
+ "type": "number"
834
+ },
835
+ "vx": {
836
+ "description": "Termination vector component along a",
837
+ "type": "number"
838
+ },
839
+ "vy": {
840
+ "description": "Termination vector component along b",
841
+ "type": "number"
842
+ }
843
+ },
844
+ "additionalProperties": true
845
+ },
846
+ {
847
+ "$schema": "http://json-schema.org/draft-07/schema#",
848
+ "title": "material metadata bulk properties",
849
+ "type": "object",
850
+ "properties": {
851
+ "bulkId": {
852
+ "description": "Source bulk material id used to generate the slab",
853
+ "type": "string"
854
+ }
855
+ },
856
+ "additionalProperties": true
857
+ }
858
+ ],
859
+ "additionalProperties": true
771
860
  }
772
861
  }
773
862
  },